このページでは、VMware 用 Google Distributed Cloud(ソフトウェアのみ)用に既存のコンテナ レジストリ サーバーを構成する方法について説明します。
このページは、技術インフラストラクチャの設定、モニタリング、管理を行う管理者、アーキテクト、オペレーターを対象としています。 Google Cloud のコンテンツで参照する一般的なロールとタスク例の詳細については、一般的な GKE Enterprise ユーザーロールとタスクをご覧ください。
概要
独自の Container Registry サーバーを指定することは任意です。コンテナ レジストリ サーバーを指定しない場合、Google Distributed Cloud は Artifact Registry からコンテナ イメージを pull します。
Google Distributed Cloud は、セキュリティで保護されていないコンテナ レジストリをサポートしていません。コンテナ レジストリ サーバーを起動する際、証明書と鍵を提供する必要があります。証明書は、パブリック認証局(CA)によって署名されることも、自己署名されることもあります。
Container Registry サーバーを作成する
コンテナ レジストリ サーバーの作成方法については、Docker ドキュメントの外部からアクセス可能なレジストリを実行するをご覧ください。
レジストリを構成する
非公開コンテナ レジストリを使用するには、クラスタの作成時に管理クラスタ構成ファイルの privateRegistry
セクションに入力します。
イメージがレジストリ サーバーから pull されていることを確認する
レジストリ サーバーからイメージが pull されていることを確認する方法は、管理クラスタの作成時に高度なクラスタを有効にしたかどうかによって異なります。
高度なクラスタが有効になっていない場合は、次のコマンドを実行します。
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG get pods \ --all-namespaces -o jsonpath="{.items[*].spec['initContainers', 'containers'][*].image}"
ADMIN_CLUSTER_KUBECONFIG
は、管理クラスタの kubeconfig ファイルのパスに置き換えます。このコマンドの出力には、クラスタ内のすべてのイメージが表示されます。すべての Google Distributed Cloud イメージが独自のリポジトリ サーバーから取得されていることを確認できます。
高度なクラスタが有効になっている場合は、次の操作を行います。
containerd
がローカル レジストリからイメージを pull しているかどうかは、次の手順でconfig.toml
というファイルの内容を調べることで判断できます。- ノードにログインして、ファイル
/etc/containerd/config.toml
の内容を確認します。 config.toml
ファイルのpluginsio.containerd.grpc.v1.cri".registry.mirrors
フィールドを確認して、レジストリ サーバーがendpoint
フィールドにリストされているかどうかを確認します。以下は、
config.toml
ファイルの例からの抜粋です。version = 2 root = "/var/lib/containerd" state = "/run/containerd" ... [plugins."io.containerd.grpc.v1.cri".registry] [plugins."io.containerd.grpc.v1.cri".registry.configs] [plugins."io.containerd.grpc.v1.cri".registry.configs."gcr.io"] [plugins."io.containerd.grpc.v1.cri".registry.configs."privateregistry2.io".tls] ca_file = '/etc/containerd/certs.d/privateregistry2.io/ca.crt' [plugins."io.containerd.grpc.v1.cri".registry.mirrors] [plugins."io.containerd.grpc.v1.cri".registry.mirrors."gcr.io"] endpoint = ["http://privateregistry.io", "http://privateregistry2.io"] ...
レジストリ ミラーが
endpoint
フィールドに表示される場合、ノードは Artifact Registry ではなくレジストリ ミラーからイメージを pull します。
- ノードにログインして、ファイル