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

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

前提条件

  • Red Hat Enterprise Linux の同期済みのコンテンツリポジトリー。詳細は、『 コンテンツ管理ガイド』 の「 Red Hat リポジトリーの同期 」を参照してください。
  • ホスト登録用のアクティベーションキー。詳細は、『 コンテンツ管理 ガイド』の「 アクティベーションキーの作成 」を参照してください。
  • 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 プロビジョニングテンプレートと使用するオペレーティングシステムを関連付けます。プロビジョニングテンプレートの詳細は、「プロビジョニングテンプレート」 を参照してください。

15.1. Satellite Server への Google Compute Engine 接続の追加

この手順を使用して、Google Compute Engine (GCE) を Satellite のコンピュートリソースとして追加します。

手順

  1. GCE では、JSON 形式でサービスアカウントキーを生成し、このファイルを Satellite Server の /usr/share/foreman/ ディレクトリーにアップロードします。
  2. Satellite Server で、サービスアカウントキーの所有者を foreman ユーザーに変更します。

    # chown foreman /usr/share/foreman/gce_key.json
  3. サービスアカウントキーのパーミッションを設定して、ファイルを読み取れるようにします。

    # chmod 0600 /usr/share/foreman/gce_key.json
  4. サービスアカウントキーの SELinux コンテキストを復元します。

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

CLI をご利用の場合

  1. GCE では、JSON 形式でサービスアカウントキーを生成し、このファイルを Satellite Server の /usr/share/foreman/ ディレクトリーにアップロードします。
  2. Satellite Server で、サービスアカウントキーの所有者を foreman ユーザーに変更します。

    # chown foreman /usr/share/foreman/gce_key.json
  3. サービスアカウントキーのパーミッションを設定して、ファイルを読み取れるようにします。

    # chmod 0600 /usr/share/foreman/gce_key.json
  4. サービスアカウントキーの SELinux コンテキストを復元します。

    # restorecon -vv /usr/share/foreman/gce_key.json
  5. hammer compute-resource create コマンドを使用して GCE コンピュートリソースを Satellite に追加します。

    # hammer compute-resource create --name 'gce_cr' \
    --provider 'gce' \
    --project 'gce_project_id' \
    --key-path 'gce_key.json' \
    --zone 'us-west1-b' \
    --email 'gce_email'