32.3. MetalLB のアップグレード
デフォルトで namespace を metallb-system
にサブスクライブする Subscription
カスタムリソース (CR) は、installPlanApproval
パラメーターを Automatic
に自動的に設定します。そのため、Red Hat が提供する Operator カタログに MetalLB Operator の新しいバージョンが含まれている場合、その MetalLB Operator は自動的にアップグレードされます。
MetalLB Operator のアップグレードを手動で制御する必要がある場合は、installPlanApproval
パラメーターを Manual
に設定します。
32.3.1. MetalLB Operator の手動アップグレード
MetalLB Operator のアップグレードを手動で制御するには、namespace を metallb-system
にサブスクライブする Subscription
カスタムリソース (CR) を編集する必要があります。Subscription
CR は Operator のインストール中に作成されます。この CR の installPlanApproval
パラメーターは、デフォルトで Automatic
に設定されます。
前提条件
- クラスターを最新の z-stream リリースに更新した。
- OperatorHub を使用して MetalLB Operator をインストールした。
-
cluster-admin
ロールを持つユーザーとしてクラスターにアクセスします。
手順
次のコマンドを入力して、
metallb-system
namespace 内のmetallb-operator
サブスクリプションの YAML 定義を取得します。oc -n metallb-system get subscription metallb-operator -o yaml
$ oc -n metallb-system get subscription metallb-operator -o yaml
Copy to Clipboard Copied! installPlanApproval
パラメーターをManual
に設定して、Subscription
CR を編集します。apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: metallb-operator namespace: metallb-system # ... spec: channel: stable installPlanApproval: Manual name: metallb-operator source: redhat-operators sourceNamespace: openshift-marketplace # ...
apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: metallb-operator namespace: metallb-system # ... spec: channel: stable installPlanApproval: Manual name: metallb-operator source: redhat-operators sourceNamespace: openshift-marketplace # ...
Copy to Clipboard Copied! 次のコマンドを入力して、最新の OpenShift Container Platform 4.19 バージョンの MetalLB Operator を見つけます。
oc -n metallb-system get csv
$ oc -n metallb-system get csv
Copy to Clipboard Copied! 出力例
NAME DISPLAY VERSION REPLACES PHASE metallb-operator.v4.14.0 MetalLB Operator 4.14.0 Succeeded
NAME DISPLAY VERSION REPLACES PHASE metallb-operator.v4.14.0 MetalLB Operator 4.14.0 Succeeded
Copy to Clipboard Copied! 次のコマンドを入力して、namespace に存在するインストールプランを確認します。
oc -n metallb-system get installplan
$ oc -n metallb-system get installplan
Copy to Clipboard Copied! 手動インストールプランとして install-tsz2g が表示された出力例
NAME CSV APPROVAL APPROVED install-shpmd metallb-operator.v4.14.0-202502261233 Automatic true install-tsz2g metallb-operator.v4.14.0-202503102139 Manual false
NAME CSV APPROVAL APPROVED install-shpmd metallb-operator.v4.14.0-202502261233 Automatic true install-tsz2g metallb-operator.v4.14.0-202503102139 Manual false
Copy to Clipboard Copied! 次のコマンドを入力して、namespace に存在するインストールプランを編集します。
<name_of_installplan>
は、install-tsz2g
などのインストールプランの名前に置き換えてください。oc edit installplan <name_of_installplan> -n metallb-system
$ oc edit installplan <name_of_installplan> -n metallb-system
Copy to Clipboard Copied! エディターでインストールプランを開いた状態で、
spec.approval
パラメーターをManual
に設定し、spec.approved
パラメーターをtrue
に設定します。注記インストールプランを編集すると、アップグレード操作が開始します。アップグレード操作中に
oc -n metallb-system get csv
コマンドを入力すると、出力にReplacing
またはPending
ステータスが表示される場合があります。
検証
次のコマンドを入力して、アップグレードが成功したことを確認します。
oc -n metallb-system get csv
$ oc -n metallb-system get csv
Copy to Clipboard Copied! 出力例
NAME DISPLAY VERSION REPLACE PHASE metallb-operator.v<latest>.0-202503102139 MetalLB Operator {product-version}.0-202503102139 metallb-operator.v{product-version}.0-202502261233 Succeeded
NAME DISPLAY VERSION REPLACE PHASE metallb-operator.v<latest>.0-202503102139 MetalLB Operator {product-version}.0-202503102139 metallb-operator.v{product-version}.0-202502261233 Succeeded
Copy to Clipboard Copied!