0
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【F5】LB(BIG-IP)設定

Last updated at Posted at 2023-06-27

F5のロードバランサー。普通にド忘れするのでメモ。
ちなみにCUI初期ログインはroot:default,
GUIはadmin:defaultで入れる。
確認Versionは13.1.1.5

※versionのEOLは以下で確認できる。
https://my.f5.com/manage/s/article/K5903

■機器ステータス確認

###バージョン/ハードウェア
tmsh show sys version 
tmsh show sys hardware
tmsh show sys failover                     ###Act/Stb表示
tmsh show cm traffic-group


###負荷/CPU/メモリ
tmstat
show sys performance system
tmsh show sys cpu
tmsh show sys memory

###ネットワーク
tmsh show net fdb all                      ###MACアドレステーブル
tmsh show net arp all                      ###ARPテーブル 
tmsh show net interface
tmsh show net vlan all                     ###VLAN
tmsh list net route
tmsh show net route all
tmsh show sys connection                   ###システム全体のconnection。protocol tcpをつけるとTCPプロトコルに絞って表示
tmsh list ltm pool
tmsh show ltm node                         ###ノード単位のコネクション表示
tmsh show ltm persistence persist-records  ###LBが保持しているパーシステンステーブルを表示
tmsh list ltm pool
tmsh show ltm pool                         ###ノードとプールの情報を表示

###ログ
tmsh show sys log all
tmsh show sys log ltm lines 100
tail -f /var/log/ltm

###その他
list ltm monitor                           ###ヘルスチェックの設定確認
/config/snmp/snmpd.conf                    ###SNMP。Linuxと同じようにviで設定

■ライセンス適用

get_dossier -b ライセンス

出てきた文字列をファイルにしてF5のサイトへアップロード→ライセンスファイルができる
ライセンスファイルを配置し、

reloadlic

を実行。

cat /config/bigip.license
tmsh show sys license

で確認

tmsh revoke sys license

でライセンス解除

■設定方法

confファイル↓
/config/bigip.conf
/config/bigip_base.conf
viで直接いじることができるが、変更後は以下コマンドで反映が必要。

(tmsh)# load sys config
(tmsh)# save sys config

※tmshコマンドで設定を入れた場合はsaveのみでOK.
※GUI上は即時反映のためその後のアクションは不要。

・bigip.confとbigip_base.confの違い

/config/bigip.conf
active/standbyで同期される共通の設定が入っている。
VirtualServer、route、selfipのfloatingアドレス(gateway)など。

/config/bigip_base.conf
機器固有の設定が入っている。
ホスト名、VLAN、Interface、selfipのnon-floatingアドレス(機器物理アドレス)など。

・管理用アドレス設定(CLI)

(tmsh)# modify sys global-settings mgmt-dhcp disabled
(tmsh)# create /sys management-ip 10.1.1.1/24
(tmsh)# create /sys management-route default gateway 10.1.1.254
(tmsh)# save / sys config partitions all

・IF追加

tmsh show net interface all-properties

で確認できる。
"UNINIT"状態はIFとしては認識しているが、初期化されていない。
VLANに紐づけるとUPに変わる。
物理IFが認識された時点でconf上で反映されていることもあるが、見えていない場合は以下追加すればよい。
GUIならNetworkタブの"Interfaces"から確認。
Configファイルに追記する形でもOK。enable/disableも可能。1.Xを入れる。

bigip_base.conf
}
net interface 1.1 {
    disabled
    lldp-tlvmap 114552
    media-fixed 10000T-FD
    }
}
net interface 1.X {
    media-fixed 10000T-FD
}
bigip_base.conf
net stp /Common/cist {
    interfaces {
        1.1 {
            external-path-cost 200000
            internal-path-cost 200000
        }
        1.X {
            external-path-cost 200000
            internal-path-cost 200000
        }

IFをdisableにしたい場合のコマンド↓

tmsh modify net interface 1.X disabled
tmsh save sys config

・VLAN設定

GUIならNetworkタブ→"VLANs"。
Configは

bigip_base.conf
}
net vlan /Common/VLAN_NAME {
    interfaces {
        1.X { }
    }
    sflow {
        poll-interval-global no
        sampling-rate-global no
    }
    tag VLAN_NUM
}
bigip_base.conf
net fdb vlan /Common/VLAN_NAME { }
bigip_base.conf
net stp /Common/cist {
    vlans {
        /Common/VLAN_NAME1
        /Common/VLAN_NAME2
    }
bigip_base.conf
net route-domain /Common/0 {
    id 0
    vlans {
        /Common/VLAN_NAME1
        /Common/VLAN_NAME2

CLIは

create net vlan VLAN_NAME { interfaces add { 1.X { } } sflow { poll-interval-global no sampling-rate-global no } tag VLAN_NUM }
###確認
tmsh show net vlan all

・Selfip設定

自分に付けるアドレス(non-floating)とvip(floating)を設定できる。上記で設定したVLANに紐づけ。
floatingはbigip_base.confだが、Syncで同期される。
GUI上設定はNetworkタブ→SelfIPs

bigip_base.conf
}
net self /Common/SELFIP_NAME1 {
    address 192.168.10.101/24
    traffic-group /Common/traffic-group-local-only
    vlan /Common/VLAN_NAME1
}
net self /Common/SELFIP_NAME2 {
    address 192.168.100.200/24
    traffic-group /Common/traffic-group-1
    vlan /Common/VLAN_NAME2
}

上記例だと上段がnon-floating,下段がfloatingになる。
CLIは以下。

create net self SELFIP_NAME { address XXX.XXX.XXX.XXX/255.255.255.0 vlan VLAN_NAME allow-service default traffic-group traffic-group-local-only}

###確認
tmsh list net self

・node(realserver)/pool設定

Syncで同期。GUIはLocalTrafficタブ→Node

bigip.conf
}
ltm node /Common/NODENAME {
    address X.X.X.X
    monitor /Common/icmp
}

ltm pool /Common/POOLNAME {
    members {
        /Common/NODENAME:80 {
            address X.X.X.X
            monitor /Common/tcp-80
        }
create ltm node /Common/NODENAME { address X.X.X.X monitor /Common/icmp }
create ltm pool /Common/POOLNAME { members add { /Common/NODENAME:80 address X.X.X.X } monitor /Common/tcp-80 }

###確認
show ltm node
show ltm pool

・VirtualServer設定

Syncで同期。GUIはLocalTrafficタブ→Virtual Servers

bigip.conf
}
ltm virtual /Common/VS_NAME {
    destination /Common/XXX.XXX.XXX.XXX:PORT
    ip-protocol tcp
    mask 255.255.XXX.XXX
    profiles {
        /Common/Profile_NAME { }
        /Common/tcp { }
    }
    source 0.0.0.0/0
    source-address-translation {
        pool /Common/Pool_NAME          ###Pool指定する場合
        type snat
    }
    translate-address enabled
    translate-port enabled
}
bigip.conf
ltm virtual-address /Common/XXX.XXX.XXX.XXX {
    address XXX.XXX.XXX.XXX
    arp enabled
    mask 255.255.XXX.XXX
    traffic-group /Common/traffic-group-1
}

アドレスは同じものになる。※VS設定のDestinationAddress.
VIPなのでtraffic-groupはfloating.
CLIなら以下。

create ltm virtual VS_NAME { destination XXX.XXX.XXX.XXX:webcache ip-protocol tcp mask 255.255.255.255 profiles add { Profile_NAME { } tcp {} } source 0.0.0.0/0 source-address-translation { pool Pool_NAME type snat } translate-address enabled translate-port enabled }

###確認
tmsh show ltm virtual
tmsh list ltm virtual
show ltm pool
show ltm node

・Staticroute追加

Syncで同期される。GUIならNetworkタブ→Routes

bigip.conf
}
net route /Common/ROUTENAME {
    gw 192.168.10.254
    network 172.21.30.0/24
}

VLAN間ルーティング許可設定

create ltm virtual Forwarding ip-forward

CLIは以下

tmsh create net route VLAN_NAME network XXX.XX.XXX.0/24 gw XXX.XX.XXX.254

###確認
tmsh list net route
tmsh show net route all

・DNS設定

Syncで同期される。GUIならNetworkタブ→DNS Resolvers

bigip.conf
}
net dns-resolver /Common/f5-aws-dns {
    forward-zones {
        amazonaws.com {
            nameservers {
                8.8.8.8:53 { }
            }

CLIは以下

###確認
tmsh list net dns-resolver
tmsh show net route all

・Sync

bigip.confをStandby機と同期する。※デバイスグループ等の設定が完了していることが前提。
たとえばActive機で設定を追加し、Standby機に設定を反映させたい場合、
Active機上のGUIでDevice Management⇒OverviewよりSyncを押下するか、以下コマンド実行。

tmsh run cm config-sync to-group device-group-name

###確認
tmsh show sys failover
tmsh show cm traffic-group

to-groupは自分設定を反映させる。fromだとstandby機の設定を持ってくる。

0
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?