第13章 Google Compute Engine でのクラウドインスタンスのプロビジョニング

Red Hat Satellite 6 は、新規仮想マシンの作成、電源管理の状態の制御など、Google Compute Engine (GCE) と対話できます。GCE ホストの作成では、イメージベースのプロビジョニングのみがサポートされます。

13.1. GCE プロビジョニングの要件

開始する前に、以下の条件を満たしていることを確認してください。

  • GCE プロジェクトで、必要な IAM Compute ロールでサービスアカウントを設定します。詳細は、GCE ドキュメントの Compute Engine IAM roles を参照してください。
  • GCE プロジェクト全体のメタデータで、enable-osloginFALSE に設定します。詳細は、GCE ドキュメントの Enabling or disabling OS Login を参照してください。
  • オプション: GCE ホストで Puppet を使用するには、管理 > 設定 > Puppet に移動して、証明書での UUID の使用 設定を有効にして、Puppet が一貫性のある Puppet 証明書 ID を使用するように設定します。
  • ニーズに合わせて finish または user_data プロビジョニングテンプレートと使用するオペレーティングシステムを関連付けます。プロビジョニングテンプレートに関する詳細は、「プロビジョニングのタイプ」を参照してください。
  • 使用する Red Hat Enterprise Linux バージョンにコンテンツリポジトリーを同期します。詳細は、『コンテンツ管理ガイド』の「Red Hat リポジトリーの同期」を参照してください。
  • ホスト登録用のアクティベーションキーを作成します。詳細は、『コンテンツ管理ガイド』の「アクティベーションキーの作成」を参照してください。

13.2. Satellite Server への GCE 接続の追加

この手順を使用して、GCE 接続を Satellite Server に追加し、GCE でイメージを追加してホストをプロビジョニングできるようにします。

手順

接続を追加するには、以下の手順を行います。

  1. GCE では、JSON 形式でサービスアカウントキーを生成し、このファイルを Satellite Server の /usr/share/foreman/ ディレクトリーにアップロードします。
  2. Satellite Server で、サービスアカウントキーのパーミッションを設定して、foreman ユーザーがファイルを読み取れるようにします。

    # chown foreman /usr/share/foreman/gce_key.json
    # chmod 0600 /usr/share/foreman/gce_key.json
    # restorecon -vv /usr/share/foreman/gce_key.json
  3. Satellite Web UI で インフラストラクチャー > コンピュートリソース に移動して、コンピュートリソースの作成 をクリックします。
  4. 名前 フィールドに、リソースの名前を入力します。
  5. プロバイダー の一覧から Google を選択します。
  6. オプション: 説明 フィールドに、リソースの説明を入力します。
  7. Google プロジェクト ID フィールドに、プロジェクト ID を入力します。
  8. クライアント E-メール フィールドに、クライアントのメールアドレスを入力します。
  9. 証明書パス フィールドに、/usr/share/foreman/gce_key.json など、サービスアカウントキーへのパスを入力します。
  10. ゾーンのロード をクリックして GCE 環境からゾーン一覧を生成します。
  11. ゾーン 一覧から使用する GCE ゾーンを選択します。
  12. 送信 をクリックします。

13.3. Satellite Server での GCE イメージの追加

GCE はイメージベースのプロビジョニングを使用し、ホストを作成します。イメージの情報を Satellite Server に追加する必要があります。

手順

イメージを追加するには、以下のステップを実行します。

  1. Satellite Web UI で、インフラストラクチャー > コンピュートリソース に移動し、GCE 接続をクリックします。
  2. イメージ タブをクリックします。
  3. イメージの作成 をクリックします。
  4. 名前 フィールドに、イメージの名前を入力します。
  5. オペレーティングシステム リストから、イメージのベースオペレーティングシステムを選択します。
  6. アーキテクチャー リストから、オペレーティングシステムのアーキテクチャーを選択します。
  7. ユーザー フィールドに、イメージにアクセスする時に使用する SSH ユーザー名を入力します。root は SSH キーを使用して GCE インスタンスに接続できないので、root 以外のユーザーを指定してください。ユーザー名は、文字から開始し、小文字と数字を含める必要があります。
  8. イメージ リストから GCE イメージを選択します。
  9. オプション: 選択したイメージが cloud-init をサポートする場合には、ユーザーデータ チェックボックスを選択して、ユーザーデータの入力を有効にします。
  10. 送信 をクリックしてイメージの詳細を保存します。

13.4. GCE の情報のコンピュートプロファイルへの追加

コンピュートプロファイルに GCE の情報を追加して、ホストの作成時に仮想マシンベースの設定が自動的に投入されるようにします。

手順

詳細をコンピュートプロファイルに追加するには、以下の手順を行います。

  1. Satellite Web UI で インフラストラクチャー > コンピュートプロファイル に移動して、プロファイルの名前をクリックします。
  2. GCE 接続を選択します。
  3. マシンタイプ 一覧からプロビジョニングに使用するマシンタイプを選択します。
  4. イメージ リストから、プロビジョニングに使用するイメージを選択します。
  5. ネットワーク リストから、プロビジョニングに使用する GCE ネットワークを選択します。
  6. オプション: 一時的な外部 IP の関連付け チェックボックスを選択して、動的で一時的な IP アドレスを割り当て、Sattelite がホストと通信に使用できるようにします。永続的な IP アドレスが必要な場合には、GCE で静的なパブリック IP アドレスを予約し、ホストにアタッチします。
  7. サイズ (GB) フィールドに、ホストで作成するストレージのサイズを入力します。
  8. 送信 をクリックしてコンピュートプロファイルを保存します。

13.5. GCE でのイメージベースのホストの作成

GCE プロビジョニングプロセスでは、GCE の既存のイメージからホストを作成します。

手順

GCE にホストを作成するには、以下の手順を行います。

  1. Satellite Web UI で、ホスト > ホストの作成 に移動します。
  2. 名前 フィールドには、ホストの名前を入力します。
  3. 組織 および ロケーション タブをクリックして、プロビジョニングのコンテキストが現在のコンテキストに自動的に設定されていることを確認します。
  4. オプション: ホストグループ リストから、ホストグループを選択して、新規ホストのフィールドの大部分にデータを投入することができます。
  5. デプロイ先 リストから、GCE 接続を選択します。
  6. コンピュートプロファイル リストから、仮想マシンベースの設定を自動的に投入するために使用するプロファイルを選択します。
  7. インターフェース タブをクリックして、ホストのインターフェースで 編集 をクリックします。
  8. 特に以下の項目など、フィールドに値が自動投入されていることを確認します。

    • ホスト タブの 名前DNS 名 になります。
    • MAC アドレス が空白であること。
    • ドメイン フィールドに必要なドメインの情報が入力されていること。
    • ホストの最初のインターフェースで Managed (管理)Primary、および Provision オプションが自動的に選択されていること。選択されていない場合は、選択してください。
  9. オペレーティングシステム タブから、インストールするオペレーティングシステムを選択します。
  10. プロビジョニングテンプレート解決 をクリックし、新規ホストから使用する適切なプロビジョニングテンプレートを特定できることを確認します。finish または user_data プロビジョニングテンプレートを選択する必要があります。
  11. パラメーター タブをクリックして、存在するパラメーターでアクティベーションキーが提供されていることを確認します。提供されていない場合には、アクティベーションキーを追加します。
  12. 送信 をクリックしてホストエントリーを保存します。