9.4.2. イメージの短縮名を許可するレジストリーの追加
image.config.openshift.io/cluster カスタムリソース (CR) を編集して、イメージの短縮名を検索するためにレジストリーを追加できます。OpenShift Container Platform は、この CR への変更をクラスター内のすべてのノードに適用します。
allowedRegistries パラメーターを定義すると、明示的にリストされていない限り、registry.redhat.io、quay.io、およびデフォルトの OpenShift イメージレジストリーを含むすべてのレジストリーがブロックされます。ペイロードイメージに必要なすべてのレジストリーを allowedRegistries リストに追加する必要があります。たとえば、registry.redhat.io、quay.io、および internalRegistryHostname レジストリーをリストに追加します。非接続クラスターの場合は、ミラーレジストリーも追加する必要があります。そうしなければ、Pod で障害が発生する危険があります。
手順
image.config.openshift.io/clusterカスタムリソースを編集します。$ oc edit image.config.openshift.io/cluster以下は、
image.config.openshift.io/clusterCR の例になります。apiVersion: config.openshift.io/v1 kind: Image metadata: annotations: release.openshift.io/create-only: "true" creationTimestamp: "2019-05-17T13:44:26Z" generation: 1 name: cluster resourceVersion: "8302" selfLink: /apis/config.openshift.io/v1/images/cluster uid: e34555da-78a9-11e9-b92b-06d6c7da38dc spec: allowedRegistriesForImport: - domainName: quay.io insecure: false additionalTrustedCA: name: myconfigmap registrySources: containerRuntimeSearchRegistries: - reg1.io - reg2.io - reg3.io allowedRegistries: - example.com - quay.io - registry.redhat.io - reg1.io - reg2.io - reg3.io - image-registry.openshift-image-registry.svc:5000 ... status: internalRegistryHostname: image-registry.openshift-image-registry.svc:5000次のコマンドを実行して、ノードのリストを取得します。
$ oc get nodes出力例
NAME STATUS ROLES AGE VERSION <node_name> Ready control-plane,master 37m v1.27.8+4fab27b次のコマンドを実行し、ノード上でデバッグモードに入ります。
$ oc debug node/<node_name>プロンプトが表示されたら、ターミナルに
chroot /hostを入力します。sh-4.4# chroot /host
検証
次のコマンドを実行して、レジストリーがポリシーファイルに追加されていることを確認します。
sh-5.1# cat /etc/containers/registries.conf.d/01-image-searchRegistries.conf出力例
unqualified-search-registries = ['reg1.io', 'reg2.io', 'reg3.io']