// Module included in the following assemblies:
//
// *nodes/nodes/nodes-nodes-adding-node-iso.adoc

:_mod-docs-content-type: PROCEDURE
[id="adding-node-iso-flags_{context}"]
= Adding a node with command flags

You can add a single node to your cluster by using command flags to specify configurations for the new node.

.Prerequisites

* You have installed the OpenShift CLI (`oc`)
* You have an active connection to your target cluster
* You have a kubeconfig file available

.Procedure

. Generate the ISO image by running the following command. The MAC address must be specified using a command flag. See the "Cluster configuration reference" section for more flags that you can use with this command.
+
[source,terminal]
----
$ oc adm node-image create --mac-address=<mac_address>
----
+
--
where:

`<mac_address>`:: Specifies the MAC address of the node that is being added.
--
+
[IMPORTANT]
====
In order for the `create` command to fetch a release image that matches the target cluster version, you must specify a valid pull secret.
You can specify the pull secret either by using the `--registry-config` flag or by setting the `REGISTRY_AUTH_FILE` environment variable beforehand.
====
+
[TIP]
====
To see additional flags that can be used to configure your node, run the following `oc adm node-image create --help` command.
====

. Verify that a new `node.<arch>.iso` file is present in the asset directory.
The asset directory is your current directory, unless you specified a different one when creating the ISO image.

. Boot the node with the generated ISO image.

. Track progress of the node creation by running the following command:
+
[source,terminal]
----
$ oc adm node-image monitor --ip-addresses <ip_address>
----
+
--
where:

`<ip_address>`:: Specifies a list of the IP addresses of the nodes that are being added.
--
+
[NOTE]
====
If reverse DNS entries are not available for your node, the `oc adm node-image monitor` command skips checks for pending certificate signing requests (CSRs).
If these checks are skipped, you must manually check for CSRs by running the `oc get csr` command.
====

. Approve the pending CSRs by running the following command for each CSR:
+
[source,terminal]
----
$ oc adm certificate approve <csr_name>
----
