第2章 プロジェクト管理

2.1. プロジェクト管理

クラウド管理者は、プロジェクト (テナント) を作成、管理することができます。テナントは、OpenStack ユーザーとリソースの割り当て数とプロジェクトのことです。テナントごとにクォータを設定することができます。これにより、プロジェクト間のパーミッションやリソースを干渉することなく、複数のプロジェクトが単一のクラウドを使用できるようになります。プロジェクトとテナントの用語はいずれも同じ意味で使用されます。ユーザーは、複数のプロジェクトに割り当てることができます。ユーザーとプロジェクトのペアごとに、ロールを 1 つ割り当てる必要があります。

2.1.1. プロジェクトの作成

プロジェクトの作成、プロジェクトへのメンバーの追加、プロジェクトのリソース制限の設定は、以下の手順を実行します。

  1. Dashboard に管理ユーザーとしてログインして アイデンティティー > プロジェクト を選択します。
  2. プロジェクトの作成 をクリックします。
  3. プロジェクト情報 タブでプロジェクトの名前と説明を入力します (有効 のチェックボックスはデフォルトで選択されます)。
  4. プロジェクトへのメンバーの追加は、プロジェクトメンバー タブの すべてのユーザー リストから行います。
  5. クォータ タブで、プロジェクトのリソースの上限を指定します。
  6. プロジェクトの作成 をクリックします。

2.1.2. プロジェクトの編集

プロジェクトを編集して名前や説明を変更したり、プロジェクトを有効化または一時的に無効化したり、メンバーを更新したりすることができます。

  1. Dashboard に管理ユーザーとしてログインして アイデンティティー > プロジェクト を選択します。
  2. プロジェクトの アクション コラムで、下向きの三角をクリックして プロジェクトの編集 をクリックします。
  3. プロジェクトの編集 ウィンドウでプロジェクトを更新して名前や説明を変更したり、プロジェクトを有効化または一時的に無効化したりすることができます。
  4. プロジェクトメンバー タブで、必要に応じてメンバーをプロジェクトに追加または削除します。
  5. 保存 をクリックします。
注記

有効 のチェックボックスはデフォルトで選択されています。プロジェクトを一時的に無効にするには、有効 のチェックボックスのチェックマークを外します。無効なプロジェクトを有効にするには、有効 チェックボックスを選択します。

2.1.3. プロジェクトの削除

  1. Dashboard に管理ユーザーとしてログインして アイデンティティー > プロジェクト を選択します。
  2. 削除するプロジェクトを選択します。
  3. プロジェクトの削除 をクリックします。プロジェクトの削除の確認 ウィンドウが表示されます。
  4. プロジェクトの削除 をクリックしてアクションを確認します。

プロジェクトが削除され、ユーザーとのペアリングの関連付けは解除されます。

2.1.4. プロジェクトクォータの更新

クォータとは、クラウドリソースを最適化するためにプロジェクトごとに設定可能な操作の制約のことです。クォータを設定して、通知なしにプロジェクトのリソースが使い果たされないようにします。クォータは、プロジェクトレベルとプロジェクトとユーザーレベルの両方で実行できます。

  1. Dashboard に管理ユーザーとしてログインして アイデンティティー > プロジェクト を選択します。
  2. プロジェクトの アクション コラムで、下向きの三角をクリックして クォータの変更 をクリックします。
  3. クォータ タブで、必要に応じてプロジェクトクォータを変更します。
  4. 保存 をクリックします。

2.1.5. 現在のプロジェクトの変更

ユーザーは、メンバーとなっているプロジェクトのみ、現在のプロジェクトとして設定することができます。また、現在のプロジェクトに設定 オプションを有効にするには、ユーザーが複数のプロジェクトのメンバーである必要があります。現在のプロジェクトとして設定すると、現在のプロジェクトとして指定されたプロジェクトのオブジェクトに、Dashboard からアクセスできるようになります。無効にしたプロジェクトは、有効化しない限り、現在のプロジェクトとして設定できません。

  1. Dashboard に管理ユーザーとしてログインして アイデンティティー > プロジェクト を選択します。
  2. プロジェクトの アクション コラムで、下向きの三角をクリックして 現在のプロジェクトに設定 をクリックします。
  3. または、管理者権限のないユーザーで、プロジェクトの アクション コラムの下向きの三角をクリックして 現在のプロジェクトに設定 をクリックすると、このコラムのデフォルトアクションになります。

2.2. プロジェクトのセキュリティー管理

セキュリティーグループとは、プロジェクトのインスタンスに割り当て可能な IP フィルターのルールセットで、インスタンスへのネットワークのアクセス権限を定義します。セキュリティーグループはプロジェクト別になっており、プロジェクトメンバーは自分のセキュリティーグループのデフォルトルールを編集して新規ルールセットを追加することができます。

プロジェクトにはすべて default セキュリティーグループが存在し、他にセキュリティーグループが定義されていないインスタンスに対して適用されます。このセキュリティーグループは、デフォルト値を変更しない限り、お使いのインスタンスへの受信トラフィックをすべて拒否し、送信トラフィックのみを許可します。

2.2.1. セキュリティーグループの作成

  1. Dashboard で プロジェクト > コンピュート > アクセスとセキュリティー を選択します。
  2. セキュリティーグループ タブで、セキュリティーグループの作成 をクリックします。
  3. セキュリティーグループに名前と説明を指定して、セキュリティーグループの作成 をクリックします。

2.2.2. セキュリティーグループのルールの追加

デフォルトでは、新しいグループには、送信アクセスのルールのみが指定されます。他のアクセスを指定するには、新しいルールを追加する必要があります。

  1. Dashboard で プロジェクト > コンピュート > アクセスとセキュリティー を選択します。
  2. セキュリティーグループ タブで、編集するセキュリティーグループの ルールの管理 をクリックします。
  3. 新規ルールを追加するには、 ルールの追加 をクリックします。
  4. ルールの値を指定して、追加 をクリックします。

    以下のルールのフィールドは必須です。

    ルール

    ルールタイプ。ルールテンプレート (例: SSH) を指定する場合には 、そのフィールドは自動的に入力されます。

    • TCP: 一般的には、システム間のデータの交換や、エンドユーザーの通信に使用されます。
    • UDP: 一般的には、システム間のデータ交換に (特にアプリケーションレベルで) 使用されます。
    • ICMP: 一般的には、ルーターなどのネットワークデバイスがエラーや監視メッセージを送信するのに使用されます。
    方向
    受信 (インバウンド) または送信 (アウトバウンド)
    開放するポート

    TCP または UDP ルールでは、開放する ポート または ポート範囲 (単一のポートまたはポートの範囲) を入力します。

    • ポート範囲では、ポート番号 (下限)ポート番号 (上限) にポートの値を入力します。
    • 単一のポートの場合は ポート フィールドにポートの値を入力します。
    タイプ
    ICMP ルールのタイプ。-1:255 の範囲で指定する必要があります。
    コード
    ICMP ルールのコード。-1:255 の範囲で指定する必要があります。
    接続相手

    このルールが適用されるトラフィックの接続元

    • CIDR (Classless Inter-Domain Routing): 指定のブロック内の IP へのアクセスを制限する IP アドレスブロック。接続相手フィールドに CIDR を入力します。
    • セキュリティーグループ: グループ内のインスタンスが他のグループインスタンスにアクセスできるようにするソースのセキュリティーグループ

2.2.3. セキュリティーグループルールの削除

  1. Dashboard で プロジェクト > コンピュート > アクセスとセキュリティー を選択します。
  2. セキュリティーグループ タブで、セキュリティーグループの ルールの管理 をクリックします。
  3. セキュリティーグループルールを選択し、イメージの削除 ボタンをクリックします。
  4. 再度、ルールの削除 をクリックします。
注記

削除の操作は元に戻すことはできません。

2.2.4. セキュリティーグループの削除

  1. Dashboard で プロジェクト > コンピュート > アクセスとセキュリティー を選択します。
  2. セキュリティーグループ タブで、グループを選択して、セキュリティーグループの削除 をクリックします。
  3. セキュリティーグループの削除 をクリックします。
注記

削除の操作は元に戻すことはできません。

2.3. Identity サービスの階層式マルチテナント

マルチテナンシーとは、ソフトウェアプリケーションの単一インスタンスで複数の顧客にサービスを提供するアーキテクチャーのことです。クラウドコンピューティングでは、仮想化やリモートアクセスを活用する新しサービスモデルが登場し、マルチテナンシーアーキテクチャーはより広い意味を持つようになりました。たとえば、Software-as-a-Service (SaaS) プロバイダーは、データベースのインスタンス 1 つでアプリケーションのインスタンス 1 つを実行し、複数の顧客が Web にアクセスできるようにします。このようなシナリオでは、各テナントのデータは分離されており、他のテナントには表示されません。

OpenStack Identity サービス (keystone) では、マルチテナンシーを使用してプロジェクトをネスト化します。ドメインは、ユーザー、グループ、プロジェクトのコレクションのことで、それぞれ 1 つのドメインにより所有されています。ユーザーは、他のドメインが所有するプロジェクトなど、プロジェクトのユーザーにロールを割り当てることで複数のプロジェクトに関連付けることができます。プロジェクトは、リソースのコンテナーのことで、クォータや仮想マシンイメージへのアクセス権を定義します。

マルチテナンシーは、Red Hat OpenStack Platform 9 ではテクノロジープレビューとして提供されています。テクノロジープレビューとして提供されている機能のサポートスコープに関する詳しい情報は、https://access.redhat.com/support/offerings/techpreview/ を参照してください。