BIG-IP 3台以上のActive Standby構成

スポンサーリンク

BIG-IPで3台以上のActive/Standby構成を構築する操作を説明します。基本的に2台構成のActive/Standbyと殆ど同じ操作です。操作が異なるのは信頼関係の設定くらいです。

動作確認の構成

BIG-IP virtual editionで以下構成で動作確認をします。heart beat用途のinterfaceは3.0です。物理結線関係やインターフェース番号は構成によって異なる事に注意しましょう。

          |                      |                      | 
          |                      |                      | 
  +-------+--------+     +-------+--------+     +-------+--------+
  |                |     |                |     |                |
  |     BIG-IP     |     |     BIG-IP     |     |     BIG-IP     |
  |    (bigip01)   |     |    (bigip02)   |     |    (bigip03)   |
  +-------+--------+     +-------+--------+     +-------+--------+
      1.3 | .1               1.3 | .2               1.3 | .3
HeartBeat |            HeartBeat |            HeartBeat |
          +----------------------+----------------------+
          |                      |                      |
          |                      |                      |

Active/Standby構成の構築

ハートビートの疎通

Active/Standbyを構成する前に、BIG-IP同士が互いに疎通可能になるようにします。bigip01に192.168.100.1/24を、bigip02に192.168.100.2/24を、bigip03に192.168.100.3/24を付与します。

2台構成のActive/Standbyとほぼ同じ操作です。

[bigip01]
create net vlan VLAN0100 interfaces replace-all-with { 1.3 { untagged } } tag 100
create net self SelfIP_VLAN0100 address 192.168.100.1/24 allow-service all traffic-group traffic-group-local-only vlan VLAN0100

[bigip02]
create net vlan VLAN0100 interfaces replace-all-with { 1.3 { untagged } } tag 100
create net self SelfIP_VLAN0100 address 192.168.100.2/24 allow-service all traffic-group traffic-group-local-only vlan VLAN0100

[bigip03]
create net vlan VLAN0100 interfaces replace-all-with { 1.3 { untagged } } tag 100
create net self SelfIP_VLAN0100 address 192.168.100.3/24 allow-service all traffic-group traffic-group-local-only vlan VLAN0100

念の為、bigip01とbigip02とbigip03間で疎通可能である事をpingコマンドとcurlコマンドを使って確認しておきます。

[root@bigip01:Active:Standalone] config # ping -c 3 192.168.100.2
PING 192.168.100.2 (192.168.100.2) 56(84) bytes of data.
64 bytes from 192.168.100.2: icmp_seq=1 ttl=255 time=1.12 ms
64 bytes from 192.168.100.2: icmp_seq=2 ttl=255 time=0.630 ms
64 bytes from 192.168.100.2: icmp_seq=3 ttl=255 time=0.776 ms

--- 192.168.100.2 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2000ms
rtt min/avg/max/mdev = 0.630/0.843/1.124/0.208 ms
[root@bigip01:Active:Standalone] config # 
[root@bigip01:Active:Standalone] config # 
[root@bigip01:Active:Standalone] config # ping -c 3 192.168.100.3
PING 192.168.100.3 (192.168.100.3) 56(84) bytes of data.
64 bytes from 192.168.100.3: icmp_seq=1 ttl=255 time=0.770 ms
64 bytes from 192.168.100.3: icmp_seq=2 ttl=255 time=0.933 ms
64 bytes from 192.168.100.3: icmp_seq=3 ttl=255 time=0.538 ms

--- 192.168.100.3 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2000ms
rtt min/avg/max/mdev = 0.538/0.747/0.933/0.162 ms
[root@bigip01:Active:Standalone] config # 
[root@bigip01:Active:Standalone] config # 
[root@bigip01:Active:Standalone] config # curl -k -I https://192.168.100.2
HTTP/1.1 302 Found
Date: Sat, 04 Sep 2021 10:05:26 GMT
Server: Apache
X-Frame-Options: SAMEORIGIN
Strict-Transport-Security: max-age=16070400; includeSubDomains
Location: /tmui/login.jsp
Content-Type: text/html; charset=iso-8859-1

[root@bigip01:Active:Standalone] config # 
[root@bigip01:Active:Standalone] config # 
[root@bigip01:Active:Standalone] config # curl -k -I https://192.168.100.3
HTTP/1.1 302 Found
Date: Sat, 04 Sep 2021 10:05:29 GMT
Server: Apache
X-Frame-Options: SAMEORIGIN
Strict-Transport-Security: max-age=16070400; includeSubDomains
Location: /tmui/login.jsp
Content-Type: text/html; charset=iso-8859-1

[root@bigip01:Active:Standalone] config # 

デバイス名の設定

デフォルト設定のデバイス名bigip1では混乱を招くので、何か分かりやすいデバイス名に変更します。

2台構成のActive/Standbyとほぼ同じ操作です。

BIG-IP デバイス名の設定

これをCLIで操作する場合は以下の通りです。

[bigip01]
mv cm device bigip1 bigip01.gokatei.go

[bigip02]
mv cm device bigip1 bigip02.gokatei.go

[bigip03]
mv cm device bigip1 bigip03.gokatei.go

確認方法は以下の通りです。

root@(bigip01)(cfg-sync Standalone)(Active)(/Common)(tmos)# show cm device
------------------------------------------------------
CentMgmt::Device: bigip01.gokatei.go
------------------------------------------------------
Hostname                            bigip01.gokatei.go
Mgmt IP                             192.168.2.31
Alternate Mgmt IP                   None
Configsync IP                       ::
Mirroring IP                        ::
Mirroring Secondary IP              ::
Failover Multicast IP               ::
Failover Unicast IP(s)              -
Time Delta to Current Device (sec)  -
Device Status                       -

configSync Failover Mirror

ConfigSyncとFailoverとMirrorのIPアドレスを設定します。2台構成のActive/Standbyとほぼ同じ操作です。

BIG-IP configsync設定

これをCLIで操作する場合は以下の通りです。

[bigip01]
modify cm device bigip01.gokatei.go configsync-ip 192.168.100.1
modify cm device bigip01.gokatei.go unicast-address {{ ip 192.168.100.1 }}
modify sys state-mirroring addr 192.168.100.1

[bigip02]
modify cm device bigip02.gokatei.go configsync-ip 192.168.100.2
modify cm device bigip02.gokatei.go unicast-address {{ ip 192.168.100.2 }}
modify sys state-mirroring addr 192.168.100.2

[bigip03]
modify cm device bigip03.gokatei.go configsync-ip 192.168.100.3
modify cm device bigip03.gokatei.go unicast-address {{ ip 192.168.100.3 }}
modify sys state-mirroring addr 192.168.100.3

確認方法は以下の通りです。

root@(bigip01)(cfg-sync Standalone)(Active)(/Common)(tmos)# show cm device
------------------------------------------------------
CentMgmt::Device: bigip01.gokatei.go
------------------------------------------------------
Hostname                            bigip01.gokatei.go
Mgmt IP                             192.168.2.31
Alternate Mgmt IP                   None
Configsync IP                       192.168.100.1
Mirroring IP                        192.168.100.1
Mirroring Secondary IP              ::
Failover Multicast IP               ::
Failover Unicast IP(s)              192.168.100.1
Time Delta to Current Device (sec)  -
Device Status                       -

デバイスの信頼関係

bigip01に対して、bigip02とbigip03を信頼するデバイスとして加えます。

「Device Management」「Device Trust」「Device Trust Members」の順に画面遷移し、「Add」を押下します。

BIG-IP 3台構成の場合の信頼関係操作 01

bigip02の情報を記入し、「Add Device」を押下します。

BIG-IP 3台構成の場合の信頼関係操作 02

「Device Trust Members」の画面にて、もう一度「Add」を押下します。

BIG-IP 3台構成の場合の信頼関係操作 03

bigip03の情報を記入し、「Add Device」を押下します。

BIG-IP 3台構成の場合の信頼関係操作 04

bigip01がbigip02とbigip03を信頼している事を確認します。

BIG-IP 3台構成の場合の信頼関係操作 05

これをCLIで操作する場合は以下の通りです。

[bigip01]
modify cm trust-domain Root add-device { ca-device true device-ip 192.168.100.2 device-name bigip02.gokatei.go username admin password admin }
modify cm trust-domain Root add-device { ca-device true device-ip 192.168.100.3 device-name bigip03.gokatei.go username admin password admin }

CLIで確認する場合は以下の通りです。

[bigip01]
root@(bigip01)(cfg-sync In Sync (Trust Domain Only))(Active)(/Common)(tmos)# show cm device

------------------------------------------------------
CentMgmt::Device: bigip01.gokatei.go
------------------------------------------------------
Hostname                            bigip01.gokatei.go
Mgmt IP                             192.168.2.31
Alternate Mgmt IP                   None
Configsync IP                       192.168.100.1
Mirroring IP                        192.168.100.1
Mirroring Secondary IP              ::
Failover Multicast IP               ::
Failover Unicast IP(s)              192.168.100.1
Time Delta to Current Device (sec)  -
Device Status                       -

------------------------------------------------------
CentMgmt::Device: bigip02.gokatei.go
------------------------------------------------------
Hostname                            bigip02.gokatei.go
Mgmt IP                             192.168.2.32
Alternate Mgmt IP                   None
Configsync IP                       192.168.100.2
Mirroring IP                        192.168.100.2
Mirroring Secondary IP              ::
Failover Multicast IP               ::
Failover Unicast IP(s)              192.168.100.2
Time Delta to Current Device (sec)  -
Device Status                       connected

------------------------------------------------------
CentMgmt::Device: bigip03.gokatei.go
------------------------------------------------------
Hostname                            bigip03.gokatei.go
Mgmt IP                             192.168.2.33
Alternate Mgmt IP                   None
Configsync IP                       192.168.100.3
Mirroring IP                        192.168.100.3
Mirroring Secondary IP              ::
Failover Multicast IP               ::
Failover Unicast IP(s)              192.168.100.3
Time Delta to Current Device (sec)  -
Device Status                       connected

root@(bigip01)(cfg-sync In Sync (Trust Domain Only))(Active)(/Common)(tmos)# 

デバイスグループの作成

「Device Management」「Device Groups」の順に画面遷移し、「Create」を押下します。

BIG-IP 3台構成のデバイスグループ作成 01

「Name」欄に何か分かりやすい名前を記入し、「Member」欄にはデバイス3台を登録します。

以上の操作後に「Finish」を押下しあmす。

BIG-IP 3台構成のデバイスグループ作成 02

操作後は以下のような画面になります。Membersが3と表示されています。

BIG-IP 3台構成のデバイスグループ作成 03

これをCLIで操作する場合は以下の通りです。

[bigip01]
create cm device-group Device-Group-001 devices add { bigip01.gokatei.go bigip02.gokatei.go bigip03.gokatei.go } type sync-failover network-failover enabled

CLIで確認する場合は以下の通りです。

[bigip01]
root@(bigip01)(cfg-sync Awaiting Initial Sync)(Standby)(/Common)(tmos)# show cm device-group Device-Group-001

---------------------------------------------------
CM::Device-Group               
---------------------------------------------------
Group Name                       Device-Group-001
Member Name                      bigip01.gokatei.go
Time Since Last Sync (HH:MM:SS)  -
Last Sync Type                   none
CID Originator                   -
CID Time (UTC)                   -
LSS Originator                   -
LSS Time (UTC)                   -

---------------------------------------------------
CM::Device-Group               
---------------------------------------------------
Group Name                       Device-Group-001
Member Name                      bigip02.gokatei.go
Time Since Last Sync (HH:MM:SS)  -
Last Sync Type                   none
CID Originator                   -
CID Time (UTC)                   -
LSS Originator                   -
LSS Time (UTC)                   -

---------------------------------------------------
CM::Device-Group               
---------------------------------------------------
Group Name                       Device-Group-001
Member Name                      bigip03.gokatei.go
Time Since Last Sync (HH:MM:SS)  -
Last Sync Type                   none
CID Originator                   -
CID Time (UTC)                   -
LSS Originator                   -
LSS Time (UTC)                   -

root@(bigip01)(cfg-sync Awaiting Initial Sync)(Standby)(/Common)(tmos)# 

初回同期操作

デバイスグループ作成後は同期待ちの状態になっていますので、同期操作をします。

「Device Management」「Overview」の順に画面遷移し、「Sync」を押下します。

BIG-IP 3台構成 初回同期操作 01

同期が確認すると以下のように表示されます。

BIG-IP 3台構成 初回同期操作 02

これをCLIで操作する場合は以下の通りです。しばらく待つと、プロンプトが「In Sync」に変わります。

[bigip01]
root@(bigip01)(cfg-sync Awaiting Initial Sync)(Standby)(/Common)(tmos)# run cm config-sync to-group Device-Group-001 
root@(bigip01)(cfg-sync Awaiting Initial Sync)(Standby)(/Common)(tmos)# 
root@(bigip01)(cfg-sync In Sync)(Standby)(/Common)(tmos)# 

動作確認

初期状態の確認

現在の構成を確認します。以下出力の場合は、「Status」欄がActiveと記載されているbigip03がActive機です。「Next Active」欄にtrueと書かれているのはbigip02ですので、Active機に障害が発生した時に次にActiveに昇格するのはbigip02となる事が分かります。

root@(bigip01)(cfg-sync In Sync)(Standby)(/Common)(tmos)# show cm traffic-group 
-------------------------------------------------------------------------------
CentMgmt::Traffic-Group 
Name                      Device              Status   Next    Previous  Active
                                                       Active  Active    Reason
-------------------------------------------------------------------------------
traffic-group-1           bigip01.gokatei.go  standby  false   false     -
traffic-group-1           bigip02.gokatei.go  standby  true    false     -
traffic-group-1           bigip03.gokatei.go  active   false   false     -
traffic-group-local-only  -                   -        -       -         -

root@(bigip01)(cfg-sync In Sync)(Standby)(/Common)(tmos)# 

1台目の障害

bigip03に障害を発生させます。

[root@bigip03:Active:In Sync] config # reboot
Connection to 192.168.2.33 closed by remote host.
Connection to 192.168.2.33 closed.

bigip02がActiveになった事を確認します。また、bigip01の「Next Active」欄がtrueに変わった事を確認します。

root@(bigip02)(cfg-sync In Sync)(Active)(/Common)(tmos)# show cm traffic-group

--------------------------------------------------------------------------------
CentMgmt::Traffic-Group 
Name                      Device              Status   Next    Previous  Active
                                                       Active  Active    Reason
--------------------------------------------------------------------------------
traffic-group-1           bigip01.gokatei.go  standby  true    false     -
traffic-group-1           bigip02.gokatei.go  active   false   false     peer-offline
traffic-group-1           bigip03.gokatei.go  offline  false   true      -
traffic-group-local-only  -                   -        -       -         -

root@(bigip02)(cfg-sync In Sync)(Active)(/Common)(tmos)# 

1台目の障害

bigip02に障害を発生させます。

[root@bigip02:Active:In Sync] config # reboot
Connection to 192.168.2.32 closed by remote host.
Connection to 192.168.2.32 closed.

bigip01がActiveになった事を確認します。2台に障害が発生してしまったので、「Traffic group traffic-group-1 has no next-active device」との警告が表示されています。

root@(bigip01)(cfg-sync In Sync)(Active)(/Common)(tmos)# show cm traffic-group

--------------------------------------------------------------------------------
CentMgmt::Traffic-Group 
Name                      Device              Status   Next    Previous  Active
                                                       Active  Active    Reason
--------------------------------------------------------------------------------
traffic-group-1           bigip01.gokatei.go  active   false   false     peer-offline
traffic-group-1           bigip02.gokatei.go  offline  false   true      -
traffic-group-1           bigip03.gokatei.go  offline  false   false     -
traffic-group-local-only  -                   -        -       -         -

Warning(s):
* Traffic group traffic-group-1 has no next-active device.


root@(bigip01)(cfg-sync In Sync)(Active)(/Common)(tmos)# 
タイトルとURLをコピーしました