パッケージを管理する

このページでは、 Google Cloud コンソールから Config Sync を使用してパッケージを管理する方法について説明します。

パッケージは、信頼できる情報源で管理され、Config Sync によってクラスタと同期される一連の Kubernetes リソース オブジェクトのマニフェストです。各パッケージ定義は、クラスタ上の RootSync オブジェクトまたは RepoSync オブジェクトに含まれています。RootSync オブジェクトと RepoSync オブジェクトの詳細については、Config Sync のアーキテクチャをご覧ください。

始める前に

パッケージをデプロイする

クラスタをフリートに登録し、Config Sync をインストールしたら、信頼できる情報源からクラスタにパッケージをデプロイするように Config Sync を構成できます。同じパッケージを複数のクラスタにデプロイする、または異なるパッケージを異なるクラスタにデプロイできます。パッケージ名や同期タイプなどの設定を除き、パッケージはデプロイ後に編集できます。詳細については、パッケージを管理するをご覧ください。

パッケージをデプロイする手順は次のとおりです。

  1. Google Cloud コンソールで、Config Sync のダッシュボードに移動します。

    Config Sync のダッシュボードに移動

  2. [パッケージをデプロイ] をクリックします。

  3. [Select clusters for package deployment] テーブルで、パッケージをデプロイするクラスタを選択し、[続行] をクリックします。

  4. ソースタイプとして [Package hosted on Git] または [Package hosted on OCI] を選択し、[続行] をクリックします。

  5. [Package details] セクションで、パッケージ名を入力します。この名前は RootSync オブジェクトまたは RepoSync オブジェクトを表します。

  6. [同期タイプ] フィールドで、同期タイプとして [クラスタ スコープの同期] または [Namespace スコープの同期] を選択します。

    クラスタ スコープの同期では RootSync オブジェクトが作成され、Namespace スコープの同期では RepoSync オブジェクトが作成されます。これらのオブジェクトの詳細については、Config Sync のアーキテクチャをご覧ください。

  7. [ソース] セクションで、次の操作を行います。

    • Git リポジトリでホストされているソースの場合は、次のフィールドを入力します。

      1. [リポジトリの URL] に、信頼できる情報源として使用する Git リポジトリの URL を入力します。
      2. 省略可: [リビジョン] フィールドを更新して、デフォルトの HEAD を使用していないかどうかを確認します。
      3. 省略可: ルート リポジトリから同期しない場合は、[パス] フィールドを更新します。
      4. 省略可: デフォルトの main ブランチを使用していない場合は、[ブランチ] フィールドを更新します。
    • OCI イメージでホストされているソースの場合は、次のフィールドを入力します。

      1. [イメージ] に、信頼できる情報源として使用する OCI イメージの URL を入力します。
      2. [ディレクトリ] に、同期元となるディレクトリのパスをルート ディレクトリからの相対パスとして入力します。
  8. (省略可): [詳細設定] セクションを開いて、次の操作を行います。

    1. 認証タイプを選択します。Config Sync がソースの構成ファイルを読み取り、クラスタに適用するには、信頼できる情報源に対する読み取り専用アクセス権が必要です。ソースに公開リポジトリなどの認証が不要な場合を除き、Config Sync に、Git リポジトリOCI イメージ、または Helm チャート(gcloud CLI のみ)に対する読み取り専用アクセス権を付与してください。Config Sync のインストール時に構成したのと同じ認証タイプを選択します。

      • なし: 認証を使用しない
      • SSH: SSH 認証鍵ペアを使用して認証を行います。
      • Cookiefile: cookiefile を使用して認証します。
      • トークン: アクセス トークンまたはパスワードを使用して認証します。
      • Google Cloud Repository: Google サービス アカウントを使用して Cloud Source Repositories にアクセスします。このオプションは、Workload Identity Federation for GKE がクラスタで有効になっていない場合にのみ選択してください。
      • Workload Identity: Google サービス アカウントを使用して、Cloud Source Repositories のリポジトリにアクセスします。
    2. 同期の待機時間を秒単位で入力します。これにより、Config Sync が信頼できる情報源から pull を試みてから再度試行するまでの待機時間が決定されます。

    3. 信頼できる情報源との通信時に使用する HTTPS プロキシの Git プロキシ URL を入力します。

    4. [階層] を選択して [ソース形式] を変更します。

      ほとんどの場合は、デフォルト値の「Unstructured」をおすすめします。これにより、信頼できる情報源を必要に応じて整理できます。

  9. [パッケージをデプロイ] をクリックします。

    Config Sync の [パッケージ] ページにリダイレクトされます。数分後、構成したクラスタの [同期ステータス] 列に「同期済み」と表示されます。

パッケージの編集

すでにデプロイしたパッケージを編集する手順は次のとおりです。

  1. Google Cloud コンソールで、Config Sync の [PACKAGES] タブに移動します。

    [PACKAGES] に移動

  2. (省略可)[クイック フィルタ] メニューを開き、フィルタを選択して、編集するパッケージを探します。

  3. 編集するパッケージ名を開き、クラスタ名を含む行で、コンテキスト メニュー をクリックしてから、 [パッケージを編集] をクリックします。

  4. 変更するパッケージ設定を確認して更新します。

  5. [保存] をクリックします。

パッケージをアンインストールする

Google Cloud コンソールからパッケージをアンインストールする手順は次のとおりです。

  1. Google Cloud コンソールで、Config Sync の [PACKAGES] タブに移動します。

    [PACKAGES] に移動

  2. (省略可)[クイック フィルタ] メニューを開き、フィルタを選択して、アンインストールするパッケージを探します。

  3. アンインストールするパッケージ名を開き、クラスタ名を含む行でコンテキスト メニュー をクリックしてから、 [パッケージをアンインストールする] をクリックします。

  4. 確認ダイアログで、RootSync オブジェクトまたは RepoSync オブジェクトのみをアンインストールするか、RootSync または RepoSync と、それらによって管理されているすべてのリソースをアンインストールするかを選択します。

  5. 確認メッセージを入力し、[アンインストール] をクリックします。

次のステップ