Solaris 11中配置基於link的IPMP

georgehmwang發表於2014-11-26

IPMP(IP Multipathing)是Solaris作業系統中重要特性,它將幾個網路介面繫結在一起作為一個IPMP組,做到網路介面的冗餘。即使其中的一個網路介面發生故障,IPMP上的業務IP不會丟失,會failover到其他介面上,避免了單點故障。IPMP可用於OracleRAC的公用網路或私有網路上。

基於linkIPMP(Link Based IPMP)

Solarismpathd守護程式負責探測網路介面的故障與修復,它所用的引數配置檔案為/etc/default/mpathdIPMP根據mpathd探測網路介面故障的方法不同,可分為基於linkIPMP和基於probeIPMP

基於linkIPMP具有以下特點

mpathd利用網路介面驅動程式進行探測(需要介面硬體支援)

–不需要額外的測試IP地址,節省IP資源

–預設可用(如果介面硬體支援)

在配置IPMP時,有兩種模式:Active-Active模式和Active-Standby模式。在Active-Active模式中所有網路介面都要線上處於active狀態;在Active-Standby模式中,至少有一個網路介面線上處於active狀態,其他網路介面處於standby狀態。檢視IPMP組中各個網路介面的狀態資訊可用ipmpstat命令。

# ipmpstat
usage: ipmpstat [-n] [-o [-P]] -a|-g|-i|-p|-t
  output modes:  -a  display IPMP data address information
                 -g  display IPMP group information
                 -i  display IPMP-related IP interface information
                 -p  display IPMP probe information
                 -t  display IPMP target information
       options:  -n  display IP addresses numerically
                 -o  display only the specified fields, in order
                 -P  display using parsable output mode


Solaris 11上配置Link Based IPMP示例

1. 設定NCP (network configuration profile) DefaultFixed.

# netadm enable -p ncp DefaultFixed
檢視ncp是否為DefaultFixed. # netadm list
TYPE        PROFILE        STATE
ncp         DefaultFixed   online
ncp         Automatic      disabled
loc         Automatic      offline
loc         NoNet          offline
loc         DefaultFixed   online

2. 設定IPMPtransitive-probing屬性false

#svccfg -s svc:/network/ipmp setprop config/transitive-probing=false

#svcadm refresh svc:/network/ipmp:default

檢視transitive-probing屬性

# svccfg -s svc:/network/ipmp listprop config/transitive-probing

config/transitive-probing boolean false

# ipmpstat -p

ipmpstat: probe-based failure detection is disabled

3. Active-Active模式 (4個網路介面為例)

建立IPMPipmp1

# ipadm create-ipmp ipmp1

建立網路介面net2, net3, net9net10

#ipadm create-ip net2

#ipadm create-ip net3

#ipadm create-ip net9

#ipadm create-ip net10

新增網路介面到ipmp1組中

# ipadm add-ipmp -i net2 -i net3 -i net9 -i net10 ipmp1

檢視ipmp1資訊

# ipmpstat -g
GROUP       GROUPNAME   STATE     FDT       INTERFACES
ipmp1           ipmp1                 ok            --           net10 net9 net3 net2
# ipmpstat -i
INTERFACE   ACTIVE  GROUP       FLAGS     LINK      PROBE     STATE
net10               yes         ipmp1          -------         up          disabled    ok
net9                 yes         ipmp1          -------         up          disabled    ok
net3                 yes         ipmp1          -------         up          disabled    ok
net2                 yes         ipmp1          --mbM--     up          disabled    ok

ipmp1設定IP地址

# ipadm create-addr -T static -a 192.168.57.142/24 ipmp1/v4

# ipmpstat -a
ADDRESS                   STATE  GROUP       INBOUND     OUTBOUND
192.168.57.142            up         ipmp1          net2              net10 net9 net3 net2
檢視ipmp1IP地址

# ipadm show-addr

ADDROBJ   TYPE     STATE     ADDR

lo0/v4           static      ok            127.0.0.1/8

ipmp1/v4      static       ok           192.168.57.144/24

4. Active-Standby模式

繼續上面的例子,把net9net10轉換為standby

# ipadm set-ifprop -p standby=on -m ip net9

# ipadm set-ifprop -p standby=on -m ip net10

# ipmpstat -i
INTERFACE   ACTIVE  GROUP       FLAGS     LINK      PROBE     STATE
net10              no           ipmp1           is-----        up          disabled    ok
net9                no           ipmp1           is-----        up          disabled    ok
net3                yes         ipmp1           -------         up          disabled    ok
net2                yes         ipmp1           --mbM--     up          disabled    ok

ifconfig命令輸出中可以看到net9net10STANDBY標誌,處於inactive狀態。

# ifconfig -a inet

ipmp1: flags=108001000843 mtu 1500 index 9
        inet 192.168.57.142 netmask ffffff00 broadcast 192.168.57.255
        groupname ipmp1
net2: flags=100001000843 mtu 1500 index 10
        inet 0.0.0.0 netmask ff000000 broadcast 0.255.255.255
        groupname ipmp1
net3: flags=100001000843 mtu 1500 index 11
        inet 0.0.0.0 netmask ff000000 broadcast 0.255.255.255
        groupname ipmp1
net9: flags=100061000843 mtu 1500 index 12
        inet 0.0.0.0 netmask ff000000
        groupname ipmp1
net10: flags=100061000843 mtu 1500 index 8
        inet 0.0.0.0 netmask ff000000
        groupname ipmp1




來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29960937/viewspace-1347901/,如需轉載,請註明出處,否則將追究法律責任。

相關文章