|
6 | 6 | [id="sno-adding-worker-nodes-to-single-node-clusters-manually_{context}"]
|
7 | 7 | = Adding worker nodes to {sno} clusters manually
|
8 | 8 |
|
9 |
| -You can add a worker node to a {sno} cluster manually by booting the worker node from {op-system-first} ISO and using the cluster `worker.ign` file to join the new worker node to the cluster. |
| 9 | +You can add a worker node to a {sno} cluster manually by booting the worker node from {op-system-first} ISO and by using the cluster `worker.ign` file to join the new worker node to the cluster. |
10 | 10 |
|
11 | 11 | .Prerequisites
|
12 | 12 |
|
@@ -79,22 +79,91 @@ $ curl -L $ISO_URL -o rhcos-live.iso
|
79 | 79 |
|
80 | 80 | . Use the {op-system} ISO and the hosted `worker.ign` file to install the worker node:
|
81 | 81 |
|
82 |
| -.. Boot the target host using the {op-system} ISO and your preferred method of installation. |
| 82 | +.. Boot the target host with the {op-system} ISO and your preferred method of installation. |
83 | 83 |
|
84 |
| -.. When the target host has booted from the {op-system} ISO, open a console on the target host, and run the following `coreos-installer` command to install the system: |
| 84 | +.. When the target host has booted from the {op-system} ISO, open a console on the target host. |
| 85 | + |
| 86 | +.. If your local network does not have DHCP enabled, you need to create an ignition file with the new hostname and configure the worker node static IP address before running the {op-system} installation. Perform the following steps: |
| 87 | + |
| 88 | +... Configure the worker host network connection with a static IP. Run the following command on the target host console: |
85 | 89 | +
|
86 | 90 | [source,terminal]
|
87 | 91 | ----
|
88 |
| -$ coreos-installer install --ignition-url=<hosted_worker_ign_file> <hard_disk> |
| 92 | +$ nmcli con mod <network_interface> ipv4.method manual / |
| 93 | +ipv4.addresses <static_ip> ipv4.gateway <network_gateway> ipv4.dns <dns_server> |
89 | 94 | ----
|
90 | 95 | +
|
91 | 96 | where:
|
92 | 97 | +
|
93 | 98 | --
|
94 |
| -<hosted_worker_ign_file>:: is the locally accessible URL for the hosted `worker.ign` file, for example, `http://webserver.example.com/worker.ign` |
95 |
| -<hard_disk>:: is hard disk where you install {op-system}, for example, `/dev/sda`. |
| 99 | +<static_ip>:: Is the host static IP address and CIDR, for example, `10.1.101.50/24` |
| 100 | +<network_gateway>:: Is the network gateway, for example, `10.1.101.1` |
96 | 101 | --
|
97 | 102 |
|
| 103 | +... Activate the modified network interface: |
| 104 | ++ |
| 105 | +[source,terminal] |
| 106 | +---- |
| 107 | +$ nmcli con up <network_interface> |
| 108 | +---- |
| 109 | + |
| 110 | +... Create a new ignition file `new-worker.ign` that includes a reference to the original `worker.ign` and an additional instruction that the `coreos-installer` program uses to populate the `/etc/hostname` file on the new worker host. For example: |
| 111 | ++ |
| 112 | +[source,json] |
| 113 | +---- |
| 114 | +{ |
| 115 | + "ignition":{ |
| 116 | + "version":"3.2.0", |
| 117 | + "config":{ |
| 118 | + "merge":[ |
| 119 | + { |
| 120 | + "source":"<hosted_worker_ign_file>" <1> |
| 121 | + } |
| 122 | + ] |
| 123 | + } |
| 124 | + }, |
| 125 | + "storage":{ |
| 126 | + "files":[ |
| 127 | + { |
| 128 | + "path":"/etc/hostname", |
| 129 | + "contents":{ |
| 130 | + "source":"data:,<new_fqdn>" <2> |
| 131 | + }, |
| 132 | + "mode":420, |
| 133 | + "overwrite":true, |
| 134 | + "path":"/etc/hostname" |
| 135 | + } |
| 136 | + ] |
| 137 | + } |
| 138 | +} |
| 139 | +---- |
| 140 | +<1> `<hosted_worker_ign_file>` is the locally accessible URL for the original `worker.ign` file. For example, `http://webserver.example.com/worker.ign` |
| 141 | +<2> `<new_fqdn>` is the new FQDN that you set for the worker node. For example, `new-worker.example.com`. |
| 142 | + |
| 143 | +... Host the `new-worker.ign` file on a web server accessible from your network. |
| 144 | + |
| 145 | +... Run the following `coreos-installer` command, passing in the `ignition-url` and hard disk details: |
| 146 | ++ |
| 147 | +[source,terminal] |
| 148 | +---- |
| 149 | +$ sudo coreos-installer install --copy-network / |
| 150 | +--ignition-url=<new_worker_ign_file> <hard_disk> --insecure-ignition |
| 151 | +---- |
| 152 | ++ |
| 153 | +where: |
| 154 | ++ |
| 155 | +-- |
| 156 | +<new_worker_ign_file>:: is the locally accessible URL for the hosted `new-worker.ign` file, for example, `http://webserver.example.com/new-worker.ign` |
| 157 | +<hard_disk>:: Is the hard disk where you install {op-system}, for example, `/dev/sda` |
| 158 | +-- |
| 159 | + |
| 160 | +.. For networks that have DHCP enabled, you do not need to set a static IP. Run the following `coreos-installer` command from the target host console to install the system: |
| 161 | ++ |
| 162 | +[source,terminal] |
| 163 | +---- |
| 164 | +$ coreos-installer install --ignition-url=<hosted_worker_ign_file> <hard_disk> |
| 165 | +---- |
| 166 | + |
98 | 167 | . As the installation proceeds, the installation generates pending certificate signing requests (CSRs) for the worker node. When prompted, approve the pending CSRs to complete the installation.
|
99 | 168 |
|
100 | 169 | . When the install is complete, reboot the host. The host joins the cluster as a new worker node.
|
|
0 commit comments