This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.3.2. OpenShift Update Service のインストール
OpenShift Update Service をインストールするには、まず OpenShift Container Platform Web コンソールまたは CLI を使用して OpenShift Update Service Operator をインストールする必要があります。
ネットワークが制限された環境 (非接続クラスターとして知られる) にインストールされているクラスターの場合には、デフォルトで Operator Lifecycle Manager はリモートレジストリーでホストされる Red Hat が提供する OperatorHub ソースにアクセスできません。それらのリモートソースには完全なインターネット接続が必要であるためです。詳細は、ネットワークが制限された環境での Operator Lifecycle Manager の使用 を参照してください。
3.2.1. Web コンソールを使用した OpenShift Update Service Operator のインストール リンクのコピーリンクがクリップボードにコピーされました!
Web コンソールを使用して、OpenShift Update Service Operator をインストールできます。
手順
Web コンソールで Operators
OperatorHub をクリックします。 注記Update Service
と Filter by keyword… フィールドに入力し、素早く Operator を見つけます。利用可能な Operator の一覧から OpenShift Update Service を選択し、Install をクリックします。
-
本リリースで利用可能な唯一のチャネルであるため、チャネル
v1
が Update Channel として選択されます。 - A specific namespace on the cluster が Installation Mode で選択します。
-
Installed Namespace の namespace を選択するか、推奨される namespace
openshift-update-service
を受け入れます。 Approval Strategy を選択します。
- Automatic ストラテジーにより、Operator Lifecycle Manager (OLM) は新規バージョンが利用可能になると Operator を自動的に更新できます。
- Manual ストラテジーには、クラスター管理者が Operator の更新を承認する必要があります。
- Install をクリックします。
-
本リリースで利用可能な唯一のチャネルであるため、チャネル
-
Operators
Installed Operators ページに切り替えて、OpenShift Update Service Operator がインストールされていることを確認します。 - Status が Succeeded の OpenShift Update Service が選択された namespace に一覧表示されていることを確認します。
3.2.2. CLI を使用した OpenShift Update Service Operator のインストール リンクのコピーリンクがクリップボードにコピーされました!
OpenShift CLI (oc
) を使用して、OpenShift Update Service Operator をインストールできます。
手順
OpenShift Update Service Operator の namespace を作成します。
OpenShift Update Service Operator の
namespace
オブジェクト YAML ファイル (update-service-namespace.yaml
など) を作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
openshift.io/cluster-monitoring
ラベルを設定して、k この namespace で Operator が推奨するクラスターのモニターリングを有効にします。
namespace を作成します。
oc create -f <filename>.yaml
$ oc create -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下に例を示します。
oc create -f update-service-namespace.yaml
$ oc create -f update-service-namespace.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
以下のオブジェクトを作成して OpenShift Update Service Operator をインストールします。
OperatorGroup
オブジェクト YAML ファイルを作成します (例:update-service-operator-group.yaml
)。Copy to Clipboard Copied! Toggle word wrap Toggle overflow OperatorGroup
オブジェクトを作成します。oc -n openshift-update-service create -f <filename>.yaml
$ oc -n openshift-update-service create -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下に例を示します。
oc -n openshift-update-service create -f update-service-operator-group.yaml
$ oc -n openshift-update-service create -f update-service-operator-group.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Subscription
オブジェクト YAML ファイルを作成します (例:update-service-subscription.yaml
)。Subscription の例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- Operator を提供するカタログソースの名前を指定します。カスタム Operator Lifecycle Manager (OLM) を使用しないクラスターの場合には、
redhat-operators
を指定します。OpenShift Container Platform クラスターが、非接続クラスターとも呼ばれるネットワークが制限された環境でインストールされている場合、Operator Lifecycle Manager (OLM) の設定時に作成されるCatalogSource
オブジェクトの名前を指定します。
Subscription
オブジェクトを作成します。oc create -f <filename>.yaml
$ oc create -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下に例を示します。
oc -n openshift-update-service create -f update-service-subscription.yaml
$ oc -n openshift-update-service create -f update-service-subscription.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow OpenShift Update Service Operator は
openshift-update-service
namespace にインストールされ、openshift-update-service
namespace をターゲットにします。
Operator のインストールを確認します。
oc -n openshift-update-service get clusterserviceversions
$ oc -n openshift-update-service get clusterserviceversions
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
NAME DISPLAY VERSION REPLACES PHASE update-service-operator.v4.6.0 OpenShift Update Service 4.6.0 Succeeded ...
NAME DISPLAY VERSION REPLACES PHASE update-service-operator.v4.6.0 OpenShift Update Service 4.6.0 Succeeded ...
Copy to Clipboard Copied! Toggle word wrap Toggle overflow OpenShift Update Service Operator が記載されている場合には、インストールが成功しています。バージョン番号が表示されるものと異なる場合があります。
3.2.3. OpenShift Update Service グラフデータコンテナーイメージの作成 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Update Service には、OpenShift Update Service がチャネルメンバーシップについての情報を取得し、更新エッジをブロックするグラフデータコンテナーイメージが必要です。通常、グラフデータはアップグレードグラフデータリポジトリーから直接取得します。インターネット接続が利用できない場合には、グラフデータを OpenShift Update Service で利用できるようにする別の方法として init コンテナーからこの情報を読み込むことができます。init コンテナーのロールとして、グラフデータのローカルコピーを提供し、Pod の初期化時に init コンテナーはデータをサービスがアクセスできるボリュームにコピーすることが挙げられます。
手順
以下を含む Dockerfile (
./Dockerfile
など) を作成します。FROM registry.access.redhat.com/ubi8/ubi:8.1 RUN curl -L -o cincinnati-graph-data.tar.gz https://github.com/openshift/cincinnati-graph-data/archive/master.tar.gz CMD exec /bin/bash -c "tar xvzf cincinnati-graph-data.tar.gz -C /var/lib/cincinnati/graph-data/ --strip-components=1"
FROM registry.access.redhat.com/ubi8/ubi:8.1 RUN curl -L -o cincinnati-graph-data.tar.gz https://github.com/openshift/cincinnati-graph-data/archive/master.tar.gz CMD exec /bin/bash -c "tar xvzf cincinnati-graph-data.tar.gz -C /var/lib/cincinnati/graph-data/ --strip-components=1"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 上記の手順で作成した docker ファイルを使用して、グラフデータコンテナーイメージ (例:
registry.example.com/openshift/graph-data:latest
) を構築します。podman build -f ./Dockerfile -t registry.example.com/openshift/graph-data:latest
$ podman build -f ./Dockerfile -t registry.example.com/openshift/graph-data:latest
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 前の手順で作成した graph-data コンテナーイメージを、OpenShift Update Service (例:
registry.example.com/openshift/graph-data:latest
) からアクセスできるリポジトリーにプッシュします。podman push registry.example.com/openshift/graph-data:latest
$ podman push registry.example.com/openshift/graph-data:latest
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記制限のあるネットワーク環境に存在するローカルレジストリーにグラフデータイメージをプッシュするには、前の手順で作成した graph-data コンテナーイメージを OpenShift Update Service がアクセスできるリポジトリーにコピーします。利用可能なオプションについては、
oc image mirror --help
を実行します。
3.2.4. OpenShift Container Platform イメージリポジトリーのミラーリング リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Update Service には、更新リリースペイロードを含む、ローカルでアクセス可能なレジストリーが必要です。
OpenShift Update Service アプリケーションで、メモリーが過剰に使用されないようにするため、以下の手順に従って、リリースイメージを別のリポジトリーにミラーリングすることが推奨されます。
前提条件
- 非接続インストールのイメージのミラーリングからOpenShift Container Platform イメージリポジトリーのミラーリングというタイトルのセクションまでのステップを確認して完了している。
- ネットワークが制限された環境で使用するミラーレジストリーを設定し、設定した証明書および認証情報にアクセスできる。
- Red Hat OpenShift Cluster Manager からプルシークレット をダウンロードし、ミラーリポジトリーへの認証を含めるようにこれを変更している。
Subject Alternative Name が設定されていない自己署名証明書を使用する場合は、この手順の
oc
コマンドの前にGODEBUG=x509ignoreCN=0
を追加する必要があります。この変数を設定しない場合、oc
コマンドは以下のエラーを出して失敗します。x509: certificate relies on legacy Common Name field, use SANs or temporarily enable Common Name matching with GODEBUG=x509ignoreCN=0
x509: certificate relies on legacy Common Name field, use SANs or temporarily enable Common Name matching with GODEBUG=x509ignoreCN=0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
手順
ミラーホストで以下の手順を実行します。
- OpenShift Container Platform ダウンロード ページを確認し、更新する必要のある OpenShift Container Platform のバージョンを判別し、Repository Tags ページで対応するタグを判別します。
必要な環境変数を設定します。
リリースバージョンをエクスポートします。
OCP_RELEASE=<release_version>
$ OCP_RELEASE=<release_version>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow <release_version>
について、インストールする OpenShift Container Platform のバージョンに対応するタグを指定します (例:4.6.4
)。ローカルレジストリー名とホストポートをエクスポートします。
LOCAL_REGISTRY='<local_registry_host_name>:<local_registry_host_port>'
$ LOCAL_REGISTRY='<local_registry_host_name>:<local_registry_host_port>'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow <local_registry_host_name>
については、ミラーレジストリーのレジストリードメイン名を指定し、<local_registry_host_port>
については、コンテンツの送信に使用するポートを指定します。ローカルリポジトリー名をエクスポートします。
LOCAL_REPOSITORY='<local_repository_name>'
$ LOCAL_REPOSITORY='<local_repository_name>'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow <local_repository_name>
については、ocp4/openshift4
などのレジストリーに作成するリポジトリーの名前を指定します。追加のローカルリポジトリー名をエクスポートして、リリースイメージを追加します。
LOCAL_RELEASE_IMAGES_REPOSITORY='<local_release_images_repository_name>'
$ LOCAL_RELEASE_IMAGES_REPOSITORY='<local_release_images_repository_name>'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow <local_release_images_repository_name>
については、ocp4/openshift4-release-images
などのレジストリーに作成するリポジトリーの名前を指定します。ミラーリングするリポジトリーの名前をエクスポートします。
PRODUCT_REPO='openshift-release-dev'
$ PRODUCT_REPO='openshift-release-dev'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 実稼働環境のリリースの場合には、
openshift-release-dev
を指定する必要があります。パスをレジストリープルシークレットにエクスポートします。
LOCAL_SECRET_JSON='<path_to_pull_secret>'
$ LOCAL_SECRET_JSON='<path_to_pull_secret>'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow <path_to_pull_secret>
については、作成したミラーレジストリーのプルシークレットの絶対パスおよびファイル名を指定します。リリースミラーをエクスポートします。
RELEASE_NAME="ocp-release"
$ RELEASE_NAME="ocp-release"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 実稼働環境のリリースについては、
ocp-release
を指定する必要があります。サーバーのアーキテクチャーのタイプをエクスポートします (例:
x86_64
)。ARCHITECTURE=<server_architecture>
$ ARCHITECTURE=<server_architecture>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ミラーリングされたイメージをホストするためにディレクトリーへのパスをエクスポートします。
REMOVABLE_MEDIA_PATH=<path>
$ REMOVABLE_MEDIA_PATH=<path>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 最初のスラッシュ (
/
) 文字を含む完全パスを指定します。
バージョンイメージをミラーレジストリーにミラーリングします。
ミラーホストがインターネットにアクセスできない場合は、以下の操作を実行します。
- リムーバブルメディアをインターネットに接続しているシステムに接続します。
ミラーリングするイメージおよび設定マニフェストを確認します。
oc adm release mirror -a ${LOCAL_SECRET_JSON} \ --from=quay.io/${PRODUCT_REPO}/${RELEASE_NAME}:${OCP_RELEASE}-${ARCHITECTURE} \ --to=${LOCAL_REGISTRY}/${LOCAL_REPOSITORY} \ --to-release-image=${LOCAL_REGISTRY}/${LOCAL_RELEASE_IMAGES_REPOSITORY}:${OCP_RELEASE}-${ARCHITECTURE} --dry-run
$ oc adm release mirror -a ${LOCAL_SECRET_JSON} \ --from=quay.io/${PRODUCT_REPO}/${RELEASE_NAME}:${OCP_RELEASE}-${ARCHITECTURE} \ --to=${LOCAL_REGISTRY}/${LOCAL_REPOSITORY} \ --to-release-image=${LOCAL_REGISTRY}/${LOCAL_RELEASE_IMAGES_REPOSITORY}:${OCP_RELEASE}-${ARCHITECTURE} --dry-run
Copy to Clipboard Copied! Toggle word wrap Toggle overflow イメージをリムーバブルメディア上のディレクトリーにミラーリングします。
oc adm release mirror -a ${LOCAL_SECRET_JSON} --to-dir=${REMOVABLE_MEDIA_PATH}/mirror quay.io/${PRODUCT_REPO}/${RELEASE_NAME}:${OCP_RELEASE}-${ARCHITECTURE}
$ oc adm release mirror -a ${LOCAL_SECRET_JSON} --to-dir=${REMOVABLE_MEDIA_PATH}/mirror quay.io/${PRODUCT_REPO}/${RELEASE_NAME}:${OCP_RELEASE}-${ARCHITECTURE}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow メディアをネットワークが制限された環境に移し、イメージをローカルコンテナーレジストリーにアップロードします。
oc image mirror -a ${LOCAL_SECRET_JSON} --from-dir=${REMOVABLE_MEDIA_PATH}/mirror "file://openshift/release:${OCP_RELEASE}*" ${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}
$ oc image mirror -a ${LOCAL_SECRET_JSON} --from-dir=${REMOVABLE_MEDIA_PATH}/mirror "file://openshift/release:${OCP_RELEASE}*" ${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
REMOVABLE_MEDIA_PATH
の場合は、リムーバブルメディアをマウントしたパスを使用する必要があります。
リリースイメージを別のリポジトリーにミラーリングします。
oc image mirror -a ${LOCAL_SECRET_JSON} ${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}:${OCP_RELEASE}-${ARCHITECTURE} ${LOCAL_REGISTRY}/${LOCAL_RELEASE_IMAGES_REPOSITORY}:${OCP_RELEASE}-${ARCHITECTURE}
$ oc image mirror -a ${LOCAL_SECRET_JSON} ${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}:${OCP_RELEASE}-${ARCHITECTURE} ${LOCAL_REGISTRY}/${LOCAL_RELEASE_IMAGES_REPOSITORY}:${OCP_RELEASE}-${ARCHITECTURE}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
ローカルコンテナーレジストリーがミラーホストに接続されている場合、リリースイメージをローカルレジストリーに直接プッシュできます。
oc adm release mirror -a ${LOCAL_SECRET_JSON} \ --from=quay.io/${PRODUCT_REPO}/${RELEASE_NAME}:${OCP_RELEASE}-${ARCHITECTURE} \ --to=${LOCAL_REGISTRY}/${LOCAL_REPOSITORY} \ --to-release-image=${LOCAL_REGISTRY}/${LOCAL_RELEASE_IMAGES_REPOSITORY}:${OCP_RELEASE}-${ARCHITECTURE}
$ oc adm release mirror -a ${LOCAL_SECRET_JSON} \ --from=quay.io/${PRODUCT_REPO}/${RELEASE_NAME}:${OCP_RELEASE}-${ARCHITECTURE} \ --to=${LOCAL_REGISTRY}/${LOCAL_REPOSITORY} \ --to-release-image=${LOCAL_REGISTRY}/${LOCAL_RELEASE_IMAGES_REPOSITORY}:${OCP_RELEASE}-${ARCHITECTURE}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow