3.4. Azure user-provisioned infrastructure のレジストリーの設定

3.4.1. イメージレジストリー Operator のシークレットの設定

configs.imageregistry.operator.openshift.io および ConfigMap リソースのほかにも、openshift-image-registry namespace 内の別のシークレットリソースによって設定が Operator に提供されます。

image-registry-private-configuration-user シークレットは、ストレージのアクセスおよび管理に必要な認証情報を提供します。これは、デフォルト認証情報が見つからない場合に Operator によって使用されるデフォルト認証情報を上書きします。

Azure レジストリーストレージの場合、シークレットには、Azure が提供する認証情報ファイルの内容に相当する値を持つキーが含まれることが予想されます。

  • REGISTRY_STORAGE_AZURE_ACCOUNTKEY

手順

  • 必要なキーが含まれる OpenShift Container Platform シークレットを作成します。

    $ oc create secret generic image-registry-private-configuration-user --from-literal=REGISTRY_STORAGE_AZURE_ACCOUNTKEY=<accountkey> --namespace openshift-image-registry

3.4.2. Azure の場合のレジストリーストレージの設定

インストール時に、Azure Blob Storage を作成するにはクラウド認証情報を使用でき、レジストリー Operator がストレージを自動的に設定します。

前提条件

  • user-provisioned infrastructure での Azure 上のクラスター。
  • Azure のレジストリーストレージを設定するには、レジストリー Operator クラウド認証情報を指定する必要があります。
  • AWS ストレージの場合、シークレットには 1 つのキーが含まれることが予想されます。

    • REGISTRY_STORAGE_AZURE_ACCOUNTKEY

手順

  1. Azure ストレージコンテナー を作成します。
  2. configs.imageregistry.operator.openshift.io/cluster にストレージ設定を入力します。

    $ oc edit configs.imageregistry.operator.openshift.io/cluster

    設定例

    storage:
      azure:
        accountName: <storage-account-name>
        container: <container-name>

3.4.3. Azure Government の場合のレジストリーストレージの設定

インストール時に、Azure Blob Storage を作成するにはクラウド認証情報を使用でき、レジストリー Operator がストレージを自動的に設定します。

前提条件

  • Government リージョンの user-provisioned infrastructure での Azure 上のクラスター。
  • Azure のレジストリーストレージを設定するには、レジストリー Operator クラウド認証情報を指定する必要があります。
  • AWS ストレージの場合、シークレットには 1 つのキーが含まれることが予想されます。

    • REGISTRY_STORAGE_AZURE_ACCOUNTKEY

手順

  1. Azure ストレージコンテナー を作成します。
  2. configs.imageregistry.operator.openshift.io/cluster にストレージ設定を入力します。

    $ oc edit configs.imageregistry.operator.openshift.io/cluster

    設定例

    storage:
      azure:
        accountName: <storage-account-name>
        container: <container-name>
        cloudName: AzureUSGovernmentCloud 1

    1
    cloudName は、適切な Azure API エンドポイントで Azure SDK を設定するために使用できる Azure クラウド環境の名前。デフォルトで AzurePublicCloud に設定されます。また、適切な認証情報を使用して cloudNameAzureUSGovernmentCloudAzureChinaCloud、または AzureGermanCloud に設定することもできます。