mirror of
https://github.com/openshift/openshift-docs.git
synced 2026-02-07 00:48:01 +01:00
151 lines
5.6 KiB
Plaintext
151 lines
5.6 KiB
Plaintext
// Module included in the following assemblies:
|
|
//
|
|
//
|
|
// * machine_management/modifying-machineset.adoc
|
|
|
|
:_mod-docs-content-type: PROCEDURE
|
|
[id="machineset-modifying_{context}"]
|
|
= Modifying a compute machine set by using the CLI
|
|
|
|
When you modify a compute machine set, your changes only apply to compute machines that are created after you save the updated `MachineSet` custom resource (CR).
|
|
The changes do not affect existing machines.
|
|
You can replace the existing machines with new ones that reflect the updated configuration by scaling the compute machine set.
|
|
|
|
If you need to scale a compute machine set without making other changes, you do not need to delete the machines.
|
|
|
|
[NOTE]
|
|
====
|
|
By default, the {product-title} router pods are deployed on compute machines.
|
|
Because the router is required to access some cluster resources, including the web console, do not scale the compute machine set to `0` unless you first relocate the router pods.
|
|
====
|
|
|
|
The output examples in this procedure use the values for an AWS cluster.
|
|
|
|
.Prerequisites
|
|
|
|
* Your {product-title} cluster uses the Machine API.
|
|
|
|
* You are logged in to the cluster as an administrator by using the {oc-first}.
|
|
|
|
.Procedure
|
|
|
|
. Edit the compute machine set by running the following command:
|
|
+
|
|
[source,terminal]
|
|
----
|
|
$ oc edit machineset <machine_set_name> -n openshift-machine-api
|
|
----
|
|
|
|
. Note the value of the `spec.replicas` field, because you need it when scaling the machine set to apply the changes.
|
|
+
|
|
[source,yaml]
|
|
----
|
|
apiVersion: machine.openshift.io/v1beta1
|
|
kind: MachineSet
|
|
metadata:
|
|
name: <machine_set_name>
|
|
namespace: openshift-machine-api
|
|
spec:
|
|
replicas: 2 # <1>
|
|
# ...
|
|
----
|
|
<1> The examples in this procedure show a compute machine set that has a `replicas` value of `2`.
|
|
|
|
. Update the compute machine set CR with the configuration options that you want and save your changes.
|
|
|
|
. List the machines that are managed by the updated compute machine set by running the following command:
|
|
+
|
|
[source,terminal]
|
|
----
|
|
$ oc get -n openshift-machine-api machines -l machine.openshift.io/cluster-api-machineset=<machine_set_name>
|
|
----
|
|
+
|
|
.Example output for an AWS cluster
|
|
[source,text]
|
|
----
|
|
NAME PHASE TYPE REGION ZONE AGE
|
|
<machine_name_original_1> Running m6i.xlarge us-west-1 us-west-1a 4h
|
|
<machine_name_original_2> Running m6i.xlarge us-west-1 us-west-1a 4h
|
|
----
|
|
|
|
. For each machine that is managed by the updated compute machine set, set the `delete` annotation by running the following command:
|
|
+
|
|
[source,terminal]
|
|
----
|
|
$ oc annotate machine/<machine_name_original_1> \
|
|
-n openshift-machine-api \
|
|
machine.openshift.io/delete-machine="true"
|
|
----
|
|
|
|
. To create replacement machines with the new configuration, scale the compute machine set to twice the number of replicas by running the following command:
|
|
+
|
|
[source,terminal]
|
|
----
|
|
$ oc scale --replicas=4 \// <1>
|
|
machineset <machine_set_name> \
|
|
-n openshift-machine-api
|
|
----
|
|
<1> The original example value of `2` is doubled to `4`.
|
|
|
|
. List the machines that are managed by the updated compute machine set by running the following command:
|
|
+
|
|
[source,terminal]
|
|
----
|
|
$ oc get -n openshift-machine-api machines -l machine.openshift.io/cluster-api-machineset=<machine_set_name>
|
|
----
|
|
+
|
|
.Example output for an AWS cluster
|
|
[source,text]
|
|
----
|
|
NAME PHASE TYPE REGION ZONE AGE
|
|
<machine_name_original_1> Running m6i.xlarge us-west-1 us-west-1a 4h
|
|
<machine_name_original_2> Running m6i.xlarge us-west-1 us-west-1a 4h
|
|
<machine_name_updated_1> Provisioned m6i.xlarge us-west-1 us-west-1a 55s
|
|
<machine_name_updated_2> Provisioning m6i.xlarge us-west-1 us-west-1a 55s
|
|
----
|
|
+
|
|
When the new machines are in the `Running` phase, you can scale the compute machine set to the original number of replicas.
|
|
|
|
. To remove the machines that were created with the old configuration, scale the compute machine set to the original number of replicas by running the following command:
|
|
+
|
|
[source,terminal]
|
|
----
|
|
$ oc scale --replicas=2 \// <1>
|
|
machineset <machine_set_name> \
|
|
-n openshift-machine-api
|
|
----
|
|
<1> The original example value of `2`.
|
|
|
|
.Verification
|
|
|
|
* To verify that a machine created by the updated machine set has the correct configuration, examine the relevant fields in the CR for one of the new machines by running the following command:
|
|
+
|
|
[source,terminal]
|
|
----
|
|
$ oc describe machine <machine_name_updated_1> -n openshift-machine-api
|
|
----
|
|
|
|
* To verify that the compute machines without the updated configuration are deleted, list the machines that are managed by the updated compute machine set by running the following command:
|
|
+
|
|
[source,terminal]
|
|
----
|
|
$ oc get -n openshift-machine-api machines -l machine.openshift.io/cluster-api-machineset=<machine_set_name>
|
|
----
|
|
+
|
|
.Example output while deletion is in progress for an AWS cluster
|
|
[source,text]
|
|
----
|
|
NAME PHASE TYPE REGION ZONE AGE
|
|
<machine_name_original_1> Deleting m6i.xlarge us-west-1 us-west-1a 4h
|
|
<machine_name_original_2> Deleting m6i.xlarge us-west-1 us-west-1a 4h
|
|
<machine_name_updated_1> Running m6i.xlarge us-west-1 us-west-1a 5m41s
|
|
<machine_name_updated_2> Running m6i.xlarge us-west-1 us-west-1a 5m41s
|
|
----
|
|
+
|
|
.Example output when deletion is complete for an AWS cluster
|
|
[source,text]
|
|
----
|
|
NAME PHASE TYPE REGION ZONE AGE
|
|
<machine_name_updated_1> Running m6i.xlarge us-west-1 us-west-1a 6m30s
|
|
<machine_name_updated_2> Running m6i.xlarge us-west-1 us-west-1a 6m30s
|
|
---- |