パッケージを管理する

このページでは、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] に移動

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

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

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

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

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

Google Cloud コンソールを使用してパッケージをアンインストールするには、次の手順を行います。

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

    [PACKAGES] に移動

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

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

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

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

次のステップ