目次
【F5】BIG-IPのCLI設定方法【Virtual Server(VIP)に紐づくPoolを変更する・入れ替える方法】
bigipのCLIでVirtual Serverに紐づいているPoolの修正方法をまとめていきます。
Virtual Serverに関連づけられているPoolを、新規に作成するPoolに入れ替える方法を記載していきます。
- 挙動はbigipのバージョンによって差異がありますので、その点は公式のドキュメントを参考にしてください
- 設定内容は架空であるため、都度ご自身で読み替えてください
Virtual Server(VIP)に紐づくPoolを入れ替える方法
設定の流れ
- 事前確認
- 新規のPoolを作成する
- 変更するVirtual Serverに紐づくPoolが正しい変更対象であることを確認する
- Virtual ServerのPoolを新しいPoolに入れ替える
- 事後確認
- 設定の保存
- 設定の同期(冗長の場合)
前提
- VS(Virtual Server)名を「test_virtual_server」とする
- VS(Virtual Server)に紐づく、Poolの設定のみを変更する
- VS(Virtual Server)に紐づく、変更前のPoolは「before_pool」とする
- VS(Virtual Server)に紐づく、変更後のPoolは「after_pool」とする
事前確認コマンド
tmsh list /
tmsh list / one-line
※前提として、細かいVSのステータスやPool member、コネクションの確認は省いております。
tmsh list / でCiscoでいうsh runをとります。
tmsh list / one-line でCLIコマンドのバックアップのため、出力を保存しておきます。
新規のPoolを作成する
tmsh list ltm pool after_pool
tmsh create ltm pool after_pool min-active-members 1 monitor gateway-icmp and tcp members add {
192.168.0.1:80 192.168.0.2:80 192.168.0.3:80 } slow-ramp-time 0
tmsh list ltm pool after_pool
↑の例では、Poolを作成しております。
Poolのメンバーは192.168.0.1:80 、192.168.0.2:80 、192.168.0.3:80 で、これらの3台で負荷分散します。
変更するVirtual Serverに紐づくPoolが正しい変更対象であることを確認する
tmsh list ltm virtual test_virtual_server
tmsh show ltm virtual detail | egrep 'Ltm::Virtual Server: | Ltm::Pool:'
↑でVirtual Server(test_virtual_server)に紐づくPoolがbefore_poolであることを確認します。
2つの確認コマンドをうっておりますが、単一のvirtual serverを確認するなら一行目だけで十分です。自分の場合は大量のPoolを変更する機会があったので、2行目のコマンドで確認しました。
Virtual ServerのPoolを新しいPoolに入れ替える
tmsh modify ltm virtual test_virtual_server pool none
tmsh modify ltm virtual test_virtual_server pool after_pool
Virtual ServerのPoolを「replace-all-with」で入れ替えることができません。
ので、Virtual ServerのPoolを取り外して、新しいPoolに付け替えるという方法で設定しています。
事後確認コマンド
tmsh list ltm virtual test_virtual_server
tmsh show ltm virtual detail | egrep 'Ltm::Virtual Server: | Ltm::Pool:'
↑でVirtual Server(test_virtual_server)に紐づくPoolがafter_poolであることを確認します。Poolがbefore_poolからafter_poolに変わったことを確認します。
設定の保存
tmsh save sys config
設定の同期
tmsh run cm config-sync to-group デバイスグループ名
冗長構成であれば、同期も忘れずに行う。
まとめ
最後にまとめになります!
- Virtual Serverに紐づいているPoolの入れ替え方法は、Poolを取り外して、新しいPoolに付け替えるという方法で対処する
- 残念ながら、Virtual ServerのPoolを「replace-all-with」のように入れ替えることができない
以上!