$ oc -n metallb-system get subscription metallb-operator -o yaml
A Subscription
custom resource (CR) that subscribes the namespace to metallb-system
by default, automatically sets the installPlanApproval
parameter to Automatic
. This means that when Red Hat-provided Operator catalogs include a newer version of the MetalLB Operator, the MetalLB Operator is automatically upgraded.
If you need to manually control upgrading the MetalLB Operator, set the installPlanApproval
parameter to Manual
.
To manually control upgrading the MetalLB Operator, you must edit the Subscription
custom resource (CR) that subscribes the namespace to metallb-system
. A Subscription
CR is created as part of the Operator installation and the CR has the installPlanApproval
parameter set to Automatic
by default.
You updated your cluster to the latest z-stream release.
You used OperatorHub to install the MetalLB Operator.
Access the cluster as a user with the cluster-admin
role.
Get the YAML definition of the metallb-operator
subscription in the metallb-system
namespace by entering the following command:
$ oc -n metallb-system get subscription metallb-operator -o yaml
Edit the Subscription
CR by setting the installPlanApproval
parameter to Manual
:
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
# ...
Find the latest OKD 4.13 version of the MetalLB Operator by entering the following command:
$ oc -n metallb-system get csv
NAME DISPLAY VERSION REPLACES PHASE
metallb-operator.v4.13.0 MetalLB Operator 4.13.0 Succeeded
Check the install plan that exists in the namespace by entering the following command.
$ oc -n metallb-system get installplan
NAME CSV APPROVAL APPROVED
install-shpmd metallb-operator.v4.13.0-202502261233 Automatic true
install-tsz2g metallb-operator.v4.13.0-202503102139 Manual false
Edit the install plan that exists in the namespace by entering the following command. Ensure that you replace <name_of_installplan>
with the name of the install plan, such as install-tsz2g
.
$ oc edit installplan <name_of_installplan> -n metallb-system
With the install plan open in your editor, set the spec.approval
parameter to Manual
and set the spec.approved
parameter to true
.
After you edit the install plan, the upgrade operation starts. If you enter the |
Verify the upgrade was successful by entering the following command:
$ oc -n metallb-system get csv
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