第2章 プロジェクト


2.1. プロジェクトの使用

プロジェクト を使用することにより、あるユーザーコミュニティーは、他のコミュニティーと切り離された状態で独自のコンテンツを整理し、管理することができます。

注記

openshift- および kube- で始まる名前のプロジェクトは デフォルトプロジェクト です。これらのプロジェクトは、Pod として実行されるクラスターコンポーネントおよび他のインフラストラクチャーコンポーネントをホストします。そのため、OpenShift Container Platform では oc new-project コマンドを使用して openshift- または kube- で始まる名前のプロジェクトを作成することができません。クラスター管理者は、oc adm new-project コマンドを使用してこれらのプロジェクトを作成できます。

重要

デフォルトプロジェクトでワークロードを実行したり、デフォルトプロジェクトへのアクセスを共有したりしないでください。デフォルトのプロジェクトは、コアクラスターコンポーネントを実行するために予約されています。

デフォルトプロジェクトである defaultkube-publickube-systemopenshiftopenshift-infraopenshift-node、および openshift.io/run-level ラベルが 0 または 1 に設定されているその他のシステム作成プロジェクトは、高い特権があるとみなされます。Pod セキュリティーアドミッション、Security Context Constraints、クラスターリソースクォータ、イメージ参照解決などのアドミッションプラグインに依存する機能は、高い特権を持つプロジェクトでは機能しません。

2.1.1. プロジェクトの作成

OpenShift Container Platform Web コンソールまたは OpenShift CLI (oc) を使用して、クラスター内にプロジェクトを作成できます。

2.1.1.1. Web コンソールを使用したプロジェクトの作成

OpenShift Container Platform Web コンソールを使用して、クラスター内にプロジェクトを作成できます。

注記

openshift- および kube- で始まる名前のプロジェクトは OpenShift Container Platform によって重要 (Critical) と見なされます。そのため、OpenShift Container Platform では、Web コンソールを使用して openshift- で始まるプロジェクトを作成することはできません。

前提条件

  • OpenShift Container Platform のプロジェクト、アプリケーション、および他のワークロードを作成するために適切なロールおよびパーミッションがあることを確認します。

手順

  • Administrator パースペクティブを使用している場合は、以下を行います。

    1. Home Projects に移動します。
    2. Create Project をクリックします。

      1. Create Project ダイアログボックスで、Name フィールドに、myproject などの一意の名前を入力します。
      2. オプション: プロジェクトの Display name および Description の詳細を追加します。
      3. Create をクリックします。

        プロジェクトのダッシュボードが表示されます。

    3. オプション: Details タブを選択して、プロジェクトの詳細を表示します。
    4. オプション: プロジェクトに対する適切なパーミッションがある場合は、Project Access タブを使用して、プロジェクトの admin、edit、および view 権限を付与または取り消すことができます。
  • Developer パースペクティブを使用している場合は、以下を行います。

    1. Project メニューをクリックし、Create Project を選択します。

      図2.1 Create project

      odc create project
      1. Create Project ダイアログボックスで、Name フィールドに、myproject などの一意の名前を入力します。
      2. オプション: プロジェクトの Display name および Description の詳細を追加します。
      3. Create をクリックします。
    2. オプション: 左側のナビゲーションパネルを使用して Project ビューに移動し、プロジェクトのダッシュボードを表示します。
    3. オプション: プロジェクトダッシュボードで Details タブを選択し、プロジェクトの詳細を表示します。
    4. オプション: プロジェクトに対する適切なパーミッションがある場合は、プロジェクトダッシュボードの Project Access タブを使用して、プロジェクトの admin、edit、および view 権限を付与または取り消すことができます。

2.1.1.2. CLI を使用したプロジェクトの作成

クラスター管理者が許可する場合、新規プロジェクトを作成できます。

注記

openshift- および kube- で始まる名前のプロジェクトは OpenShift Container Platform によって重要 (Critical) と見なされます。そのため、OpenShift Container Platform では oc new-project コマンドを使用して openshift- または kube- で始まる名前のプロジェクトを作成することができません。クラスター管理者は、oc adm new-project コマンドを使用してこれらのプロジェクトを作成できます。

手順

  • 以下を実行します。

    $ oc new-project <project_name> \
        --description="<description>" --display-name="<display_name>"

    以下に例を示します。

    $ oc new-project hello-openshift \
        --description="This is an example project" \
        --display-name="Hello OpenShift"
注記

作成できるプロジェクトの数は、システム管理者によって制限される場合があります。上限に達すると、新規プロジェクトを作成できるように、既存プロジェクトの削除が必要になる場合があります。

2.1.2. プロジェクトの表示

OpenShift Container Platform Web コンソールまたは OpenShift CLI (oc) を使用して、クラスター内のプロジェクトを表示できます。

2.1.2.1. Web コンソールを使用してプロジェクトを表示する

OpenShift Container Platform Web コンソールを使用して、アクセス権のあるプロジェクトを表示できます。

手順

  • Administrator パースペクティブを使用している場合は、以下を行います。

    1. ナビゲーションメニューで Home Projects に移動します。
    2. 表示するプロジェクトを選択します。Overview タブには、プロジェクトのダッシュボードが含まれています。
    3. Details タブを選択して、プロジェクトの詳細を表示します。
    4. YAML タブを選択して、プロジェクトリソースの YAML 設定を表示および更新します。
    5. Workloads タブを選択して、プロジェクト内のワークロードを表示します。
    6. RoleBindings タブを選択して、プロジェクトのロールバインディングを表示および作成します。
  • Developer パースペクティブを使用している場合は、以下を行います。

    1. ナビゲーションメニューの Project ページに移動します。
    2. 画面上部の Project ドロップダウンメニューから All Projects を選択し、クラスター内のすべてのプロジェクトをリスト表示します。
    3. 表示するプロジェクトを選択します。Overview タブには、プロジェクトのダッシュボードが含まれています。
    4. Details タブを選択して、プロジェクトの詳細を表示します。
    5. プロジェクトに対する適切なパーミッションがある場合は、Project access タブビューを選択し、プロジェクトの権限を更新します。

2.1.2.2. CLI を使用したプロジェクトの表示

プロジェクトを表示する際は、認証ポリシーに基づいて、表示アクセスのあるプロジェクトだけを表示できるように制限されます。

手順

  1. プロジェクトのリストを表示するには、以下を実行します。

    $ oc get projects
  2. CLI 操作で、現在のプロジェクトから別のプロジェクトに切り換えることができます。その後の操作にはすべて指定のプロジェクトが使用され、プロジェクトスコープのコンテンツの操作が実行されます。

    $ oc project <project_name>

2.1.3. Developer パースペクティブを使用したプロジェクトに対するアクセスパーミッションの提供

Developer パースペクティブで Project ビューを使用し、プロジェクトに対するアクセスを付与したり、取り消したりできます。

前提条件

  • プロジェクトを作成している。

手順

ユーザーをプロジェクトに追加し、AdminEdit、または View アクセスをユーザーに付与するには、以下を実行します。

  1. Developer パースペクティブで、Project ページに移動します。
  2. Project メニューからプロジェクトを選択します。
  3. Project Access タブを選択します。
  4. Add access をクリックして、パーミッションの新規の行をデフォルトのパーミッションに追加します。

    図2.2 プロジェクトパーミッション

    odc project permissions
  5. ユーザー名を入力し、Select a role ドロップダウンリストをクリックし、適切なロールを選択します。
  6. Save をクリックして新規パーミッションを追加します。

以下を使用することもできます。

  • Select a role ドロップダウンリストを使用して、既存ユーザーのアクセスパーミッションを変更できます。
  • Remove Access アイコンを使用して、既存ユーザーのプロジェクトへのアクセスパーミッションを完全に削除できます。
注記

高度なロールベースのアクセス制御は、Administrator パースペクティブの Roles および Roles Binding ビューで管理されます。

2.1.4. Web コンソールを使用した利用可能なクラスターのロールのカスタマイズ

Web コンソールの Developer パースペクティブでは、Project Project access ページを使用して、プロジェクト管理者がプロジェクト内のユーザーにロールを付与できるようにします。デフォルトでは、プロジェクト内のユーザーに付与できるクラスターロールは、admin、edit、および view です。

クラスター管理者は、クラスター全体のすべてのプロジェクトに対して Project access ページでどのクラスターロールを使用できるかを定義できます。Console 設定リソースの spec.customization.projectAccess.availableClusterRoles オブジェクトをカスタマイズすることで、使用可能なロールを指定できます。

前提条件

  • cluster-admin ロールを持つユーザーとしてクラスターにアクセスできる。

手順

  1. Administrator パースペクティブで、Administration Cluster settings に移動します。
  2. Configuration タブをクリックします。
  3. Configuration resource リストから、Console operator.openshift.io を選択します。
  4. YAML タブに移動し、YAML コードを表示し、編集します。
  5. spec の YAML コードで、プロジェクトアクセスに使用可能なクラスターロールのリストをカスタマイズします。次の例では、デフォルトの adminedit、および view ロールを指定します。

    apiVersion: operator.openshift.io/v1
    kind: Console
    metadata:
      name: cluster
    # ...
    spec:
      customization:
        projectAccess:
          availableClusterRoles:
          - admin
          - edit
          - view
  6. Save をクリックして、Console 設定リソースへの変更を保存します。

検証

  1. Developer パースペクティブで、Project ページに移動します。
  2. Project メニューからプロジェクトを選択します。
  3. Project access タブを選択します。
  4. Role 列のメニューをクリックし、使用可能なロールが Console リソース設定に適用した設定と一致することを確認します。

2.1.5. プロジェクトへの追加

Developer パースペクティブの +Add ページを使用して、プロジェクトに項目を追加できます。

前提条件

  • プロジェクトを作成している。

手順

  1. Developer パースペクティブで、+Add ページに移動します。
  2. Project メニューからプロジェクトを選択します。
  3. +Add ページで項目をクリックし、ワークフローに従います。
注記

また、Add* ページの検索機能を使用して、プロジェクトに追加する追加アイテムを見つけます。画面上部の Add の下にある * をクリックし、検索フィールドにコンポーネントの名前を入力します。

2.1.6. プロジェクトのステータスの確認

OpenShift Container Platform Web コンソールまたは OpenShift CLI (oc) を使用して、プロジェクトのステータスを表示できます。

2.1.6.1. Web コンソールを使用したプロジェクトのステータスの確認

Web コンソールを使用して、プロジェクトのステータスを確認できます。

前提条件

  • プロジェクトを作成している。

手順

  • Administrator パースペクティブを使用している場合は、以下を行います。

    1. Home Projects に移動します。
    2. 一覧からプロジェクトを選択します。
    3. Overview ページで、プロジェクトのステータスを確認します。
  • Developer パースペクティブを使用している場合は、以下を行います。

    1. Project ページに移動します。
    2. Project メニューからプロジェクトを選択します。
    3. Overview ページで、プロジェクトのステータスを確認します。

2.1.6.2. CLI を使用したプロジェクトのステータスの確認

OpenShift CLI (oc) を使用して、プロジェクトのステータスを確認できます。

前提条件

  • OpenShift CLI (oc) がインストールされている。
  • プロジェクトを作成している。

手順

  1. プロジェクトに切り替えます。

    $ oc project <project_name> 1
    1
    <project-name> は、プロジェクト名に置き換えます。
  2. プロジェクトの概要を取得します。

    $ oc status

2.1.7. プロジェクトの削除

OpenShift Container Platform Web コンソールまたは OpenShift CLI (oc) を使用して、プロジェクトを削除できます。

プロジェクトを削除する際に、サーバーはプロジェクトのステータスを Active から Terminating に更新します。その後、サーバーは Terminating 状態のプロジェクトからすべてのコンテンツをクリアしてから、プロジェクトを削除します。プロジェクトのステータスが Terminating の場合は、新規のコンテンツをプロジェクトに追加することができません。プロジェクトは CLI または Web コンソールから削除できます。

2.1.7.1. Web コンソールを使用したプロジェクトの削除

Web コンソールを使用してプロジェクトを削除できます。

前提条件

  • プロジェクトを作成している。
  • プロジェクトを削除するために必要なパーミッションを持っている。

手順

  • Administrator パースペクティブを使用している場合は、以下を行います。

    1. Home Projects に移動します。
    2. 一覧からプロジェクトを選択します。
    3. プロジェクトの Actions ドロップダウンメニューをクリックし、Delete Project を選択します。

      注記

      プロジェクトを削除するために必要なパーミッションがない場合は、Delete Project オプションは選択できません。

      1. Delete Project? ペインで、プロジェクトの名前を入力して削除を確認します。
      2. Delete をクリックします。
  • Developer パースペクティブを使用している場合は、以下を行います。

    1. Project ページに移動します。
    2. Project メニューから削除するプロジェクトを選択します。
    3. プロジェクトの Actions ドロップダウンメニューをクリックし、Delete Project を選択します。

      注記

      プロジェクトを削除するために必要なパーミッションがないと、Delete Project オプションを選択できません。

      1. Delete Project? ペインで、プロジェクトの名前を入力して削除を確認します。
      2. Delete をクリックします。

2.1.7.2. CLI を使用したプロジェクトの削除

OpenShift CLI (oc) を使用してプロジェクトを削除できます。

前提条件

  • OpenShift CLI (oc) がインストールされている。
  • プロジェクトを作成している。
  • プロジェクトを削除するために必要なパーミッションを持っている。

手順

  1. プロジェクトを削除します。

    $ oc delete project <project_name> 1
    1
    <project_name> を、削除するプロジェクトの名前に置き換えます。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.