ベアメタル (Docker) 環境で実行されているコントローラの IP アドレスを変更するには、次の手順を実行します。
手順
- ホストの network-scripts を手動で編集し、インターフェイス構成を変更することで、クラスタ内の各コントローラ ノードの IP アドレスを新しい IP に変更します。
- 新しいコントローラ IP アドレスが、他のコントローラ ノードからネットワーク内でアクセス可能であることを確認します。
- Controller Docker コンテナを実行している各ホストで
/etc/systemd/system/avicontroller.service
または/usr/sbin/avicontroller
ファイルを編集し、必要に応じて古いコントローラ IP を新しいコントローラ IP で上書きします。以下の長いコマンド ラインには、サンプルの
/etc/systemd/system/avicontroller.service
ファイル内のコントローラ IP アドレスが含まれています。code>ExecStartPre=/usr/bin/docker run --name=avicontroller -m 48g --cpu-period=100000 --cpu-quota=2400000 -p 5098:5098 -p 8443:8443 -p 5054:5054 -p 80:80 -p 443:443 -p 161:161/udp -d --privileged -e "CONTAINER_NAME=avicontroller" -e "MANAGEMENT_IP=10.122.0.112" -e NUM_CPU=24 -e NUM_MEMG=48 -e DISK_GB=30 -e CNTRL_SSH_PORT=5098 -e SYSINT_PORT=8443 -e HTTP_PORT=80 -e HTTPS_PORT=443 -v /:/hostroot/ -v /dev:/dev -v /var/run/docker.sock:/var/run/docker.sock -v /run/xtables.lock:/run/xtables.lock -v /opt/avi/controller/data:/vol/ avinetworks/controller:18.2.5-5116-20190708.063533</code>
- 各コントローラ ホストで、管理者は次の 3 つのコマンドを実行します。
systemctl daemon-relaod systemctl stop avicontroller systemctl start avicontroller
- 手順 3 のサンプルに対応するいずれかのコントローラ コンテナで、管理者は次のコマンドを実行します。
cd /opt/avi/python/bin python change_ip.py -i 10.122.0.111 -o 10.122.0.112 -o 10.122.0.113
結果
Controller クラスタが新しい IP アドレスで再び稼動します。