5.6. Shieldのノード追加手順

一度構成が完了したシステムにノードを追加する場合、下記コマンドを実行してください。

新規に追加するノード上で実行してください。ericomユーザのパスワードは 既存環境と統一 してください。

$ curl -O https://ericom-tec.ashisuto.co.jp/shield/prepare-node.sh
$ chmod 755 ./prepare-node.sh
$ sudo ./prepare-node.sh

################################################### Create Ericom user #################################
Adding user `ericom' ...
Adding new group `ericom' (1001) ...
Adding new user `ericom' (1001) with group `ericom' ...
Creating home directory `/home/ericom' ...
Copying files from `/etc/skel' ...
Enter new UNIX password:*****************
Retype new UNIX password:*****************
passwd: password updated successfully
########################## ericom Going to prepare super user #########################################
ericom ALL=(ALL:ALL) NOPASSWD: ALL
################################################### Changeing sshd_conf #################################
################################################### Changing to the symbolic link. /etc/resolv.conf #################################
[start] Changing to the symbolic link.
[INFO]/etc/resolv.conf is symlink
[WARN] nameserver is local stub!
[INFO] /run/systemd/resolve/resolv.conf exist!
[INFO] Changed to symlink
ノードを再起動してください。

続いて、Rancherサーバ上で下記を実行してください。指定するIPアドレスは、追加対象ノードのIPアドレスです。下記例の場合、2つのノードを追加することになります。

$ sudo ./ericomshield/shield-prepare-servers - u ericom 192.168.1.1 192.168.1.2 192.168.1.3

次に、下記例に従い、コマンドを実行してください。

コマンドを実行すると、追加をしたいノード上で実行すべきコマンドが表示されます。それぞれの役割に応じたブロックを選択し、各ノードで実行してください。 各ノードでのコマンド実行が完了したら y で先に進んでください。

$ ./ericomshield/shield-nodes.sh --addnodes
<表示例>
$ ./ericomshield/shield-nodes.sh --addnodes

###### START ###########################################################
[Start] Generate commands
[end] Generate commands
[Start] Exec docker command

=========================================================================================
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
※この後、複数台構成にする場合に他のノードで実行するコマンドが画面に表示されます。
※必要に応じてコピーの上、他ノードで実行してください。
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
------------------------------------------------------------
(【必要に応じて】 下記コマンドを他のオールインワンノード(Cluster Management + Worker)で実行してください。)

curl -s -o configure-sysctl-values.sh https://raw.githubusercontent.com/EricomSoftwareLtd/Shield/Rel-19.09.4/Kube/scripts/configure-sysctl-values.sh

chmod +x configure-sysctl-values.sh

sudo ./configure-sysctl-values.sh


curl -s -o install-docker.sh https://raw.githubusercontent.com/EricomSoftwareLtd/Shield/Rel-19.09.4/Kube/scripts/install-docker.sh

chmod +x install-docker.sh

./install-docker.sh

sudo usermod -aG docker "$USER"


sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/rancher-agent:v2.2.6 --server https://IPアドレス:8443 --token ランダム値 --ca-checksum ランダム値 --etcd --controlplane --worker

------------------------------------------------------------
または、
(【必要に応じて】 下記コマンドを他の Cluster Management ノードで実行してください。)

curl -s -o configure-sysctl-values.sh https://raw.githubusercontent.com/EricomSoftwareLtd/Shield/Rel-19.09.4/Kube/scripts/configure-sysctl-values.sh

chmod +x configure-sysctl-values.sh

sudo ./configure-sysctl-values.sh


curl -s -o install-docker.sh https://raw.githubusercontent.com/EricomSoftwareLtd/Shield/Rel-19.09.4/Kube/scripts/install-docker.sh

chmod +x install-docker.sh

./install-docker.sh

sudo usermod -aG docker "$USER"


sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/rancher-agent:v2.2.6 --server https://IPアドレス:8443 --token ランダム値 --ca-checksum ランダム値 --etcd --controlplane

------------------------------------------------------------
または、
(【必要に応じて】 下記コマンドを他の Worker ノードで実行してください。)

curl -s -o configure-sysctl-values.sh https://raw.githubusercontent.com/EricomSoftwareLtd/Shield/Rel-19.09.4/Kube/scripts/configure-sysctl-values.sh

chmod +x configure-sysctl-values.sh

sudo ./configure-sysctl-values.sh


curl -s -o install-docker.sh https://raw.githubusercontent.com/EricomSoftwareLtd/Shield/Rel-19.09.4/Kube/scripts/install-docker.sh

chmod +x install-docker.sh

./install-docker.sh

sudo usermod -aG docker "$USER"


sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/rancher-agent:v2.2.6 --server https://IPアドレス:8443 --token ランダム値 --ca-checksum ランダム値 --worker

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

=================================================================================
それぞれのノードでコマンドの実行は完了しましたか?
先に進んでもよろしいですか? [y/N]:

30秒の待機の後、既存のノード、新規に追加したノード、それぞれについて、ラベルの確認が行われます。既存のノードについては、下記のように現在設定されているラベルが表示され、再設定するかどうかの確認が 行われます。 今回のケースではノードを追加するだけのため、原則として再設定は行いませんので N で応答してください。

=================================================================================

*** {ホスト名} ***

上記ノードには下記のラベルが設定されています。

shield-role/elk=accept
shield-role/farm-services=accept
shield-role/management=accept
shield-role/proxy=accept
shield-role/remote-browsers=accept

再設定しますか? [y/N]:n

また、新規に追加したノードに対しては、下記のように確認が表示されます。 ここでは原則として y で応答してください。

=================================================================================

*** {ホスト名} ***

上記ノードにはまだラベルが設定されていません。設定しますか? [y/N]:y

ラベルの設定を選択すると、続いてどのコンポーネントを配置するかの選択を行います。 この選択は新規インストールに行ったものと同じです。 それぞれのノードに適切なコンポーネントを配置してください。

=================================================================================

*** {ホスト名} ***

上記ノードにどのShieldコンポーネントを配置しますか?

0) Cluster Management のみ
---------------------------------------------------------
【System ComponentとBrowserを分ける場合】
---------------------------------------------------------
2) System Component + Farm-service (management, proxy, elk, farm-services)
3) Browser のみ (remort-browsers)
---------------------------------------------------------
99) Advanced Option

番号で選択してください:


    [end] set labels
###### DONE ############################################################