Thứ Tư, 23 tháng 2, 2022

Cấu hình IPMP trên Solaris 11


IPMP conponents :

1. mpathd daemon – Deamon này có nhiệm vụ phát hiện lỗi xảy ra trên interface và sửa lỗi. Nó sử dụng file config /etc/default/mpathd để xác định khi nào một interface lỗi.
# cat /etc/default/mpathd
#
#pragma ident   "@(#)mpathd.dfl 1.2     00/07/17 SMI"
#
# Time taken by mpathd to detect a NIC failure in ms. The minimum time
# that can be specified is 100 ms.
#
FAILURE_DETECTION_TIME=10000
#
# Failback is enabled by default. To disable failback turn off this option
#
FAILBACK=yes
#
# By default only interfaces configured as part of multipathing groups
# are tracked. Turn off this option to track all network interfaces
# on the system
#
TRACK_INTERFACES_ONLY_WITH_GROUPS=yes

2. ipmpstat – Show thông tin về IP interface của IPMP

Các kiểu cấu hình IPMP - Types of configurations

1. Singleton – IPMP group with single interface
2. Active-Active – All the interfaces in the IPMP group are online.
3. Active-standby – One of the interface in the IPMP configuration will be used as standby.

Kiểm tra IPMP failover

Ta có thể check giả lập lỗi của một interface thông qua dòng lệnh với tham số “-d” hoặc tham số “-r” để thủ reattaches interface.
# if_mpadm -d ce0
# if_mpadm -r ce0

Prerequisites

1. IPMP yêu cầu cấu hình fixed network mode, do đó, ta phải set network configuration profile (NCP) về DefaultFixed.
# netadm enable -p ncp DefaultFixed

Ta có thể check bằng lệnh như sau:
# netadm list
TYPE        PROFILE        STATE
ncp         Automatic      disabled
ncp         DefaultFixed   online
loc         Automatic      offline
loc         NoNet          offline
loc         DefaultFixed   online

2. Mỗi interface có một địa chỉ MAC duy nhất khi được sử dụng trong IPMP group:
# eeprom local-mac-address?=true
# dladm show-linkprop -p mac-address
LINK     PROPERTY            PERM VALUE        DEFAULT      POSSIBLE
net1     mac-address         rw   0:c:29:12:40:79 0:c:29:12:40:79 --
net2     mac-address         rw   0:c:29:12:40:83 0:c:29:12:40:83 --
net3     mac-address         rw   0:c:29:12:40:8d 0:c:29:12:40:8d --
net0     mac-address         rw   0:c:29:12:40:6f 0:c:29:12:40:6f --

Mặc định, link based failure detection được sử dụng (để phân biệt với probe-based detection) :
# ipmpstat -p
ipmpstat: probe-based failure detection is disabled
Trong ví dụ này, máy có 4 NIC cards, ta sẽ sử dụng 2 card net1 và net2 để cấu hình IPMP group.
# dladm show-phys
LINK              MEDIA                STATE      SPEED  DUPLEX    DEVICE
net0              Ethernet             unknown    1000   full      e1000g0
net1              Ethernet             unknown    1000   full      e1000g1
net2              Ethernet             unknown    1000   full      e1000g2
net3              Ethernet             unknown    1000   full      e1000g3


1. Active/Active Configuration

Active Interface : e1000g1 (net1)
                 : e1000g2 (net2)
Data IP          : 192.168.1.10
Tạo IPMP group “ipmp0″.
# ipadm create-ipmp ipmp0
Tạo interfaces net1 and net2 được sử dụng trong group IPMP.
# ipadm create-ip net1
# ipadm create-ip net2

Add the two interfaces to the IPMP group
# ipadm add-ipmp -i net1 -i net2 ipmp0
Kiểm tra trạng thái của IPMP group vừa tạo :
# ipmpstat -g
GROUP       GROUPNAME   STATE     FDT       INTERFACES
ipmp0       ipmp0       ok        --        net2 net1

Gán địa chỉ IP cho IPMP group
ipadm create-addr -T static -a [hostname or IP address] [IPMP-interface]/[arbitrary-string]
# ipadm create-addr -T static -a 192.168.1.10 ipmp0/data1

Để kiểm tra trạng thái của IPMP interface :
# ipmpstat -a
ADDRESS                   STATE  GROUP       INBOUND     OUTBOUND
ipmp0-data1               up     ipmp0       net1        net2 net1
# ipmpstat -an
ADDRESS                   STATE  GROUP       INBOUND     OUTBOUND
192.168.1.10              up     ipmp0       net1        net2 net1
Để kiểm tra trạng thái của từng interface trong IPMP group.
# ipmpstat -i
INTERFACE   ACTIVE  GROUP       FLAGS     LINK      PROBE     STATE
net2        yes     ipmp0       -------   up        disabled  ok
net1        yes     ipmp0       --mb---   up        disabled  ok
Để kiểm tra địa chỉ IP của IPMP group :
# ipadm show-addr
ADDROBJ           TYPE     STATE        ADDR
lo0/v4            static   ok           127.0.0.1/8
ipmp0/data1       static   ok           192.168.1.10/24
# ifconfig -a
lo0: flags=2001000849 mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000
net1: flags=1000843 mtu 1500 index 12
        inet 0.0.0.0 netmask ff000000
        groupname ipmp0
        ether 0:c:29:12:40:79
net2: flags=1000843 mtu 1500 index 13
        inet 0.0.0.0 netmask ff000000
        groupname ipmp0
        ether 0:c:29:12:40:83
ipmp0: flags=8001000843 mtu 1500 index 11
        inet 192.168.1.10 netmask ffffff00 broadcast 192.168.1.255
        groupname ipmp0

Các cấu hình vừa thực hiện được lưu trong /etc/ipadm/ipadm-DefaultFixed.conf file
# cat /etc/ipadm/ipadm-DefaultFixed.conf
_ifname=lo0;_aobjname=lo0/v4;   _ipv4saddr=string,127.0.0.1;prefixlen=string,8;up=string,yes;
_ifname=lo0;    _family=string,2,26;_class=uint64,2;
_ifname=net1;   _family=string,2,26;_class=uint64,0;_ipmpif=string,ipmp0;
_ifname=ipmp0;  _family=string,2,26;_class=uint64,1;_underif=string,net1,net2;
_ifname=net2;   _family=string,2,26;_class=uint64,0;_ipmpif=string,ipmp0;
_ifname=ipmp0;_aobjname=ipmp0/data1;    _ipv4saddr=string,192.168.1.10;up=string,yes;


2. Active/Standby Configuration

Trong phần này ta sẽ cấu hình net2 ở trạng thái standby interface.
Active Interface  : e1000g1 (net1)
Standby Interface : e1000g2 (net2)
Data IP           : 192.168.1.10
Set net2 interface ở trạng thái standby :
# ipadm set-ifprop -p standby=on -m ip net2
Kiểm tra trạng thái của từng interface. Net2 interface ở trạng thái active.
#  ipmpstat -i
INTERFACE   ACTIVE  GROUP       FLAGS     LINK      PROBE     STATE
net2        no      ipmp0       is-----   up        disabled  ok
net1        yes     ipmp0       --mb---   up        disabled  ok

Hoặc có thể kiểm tra STANDBY flag trong câu lệnh ifconfig
# ifconfig -a
lo0: flags=2001000849 mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000
net1: flags=1000843 mtu 1500 index 12
        inet 0.0.0.0 netmask ff000000
        groupname ipmp0
        ether 0:c:29:12:40:79
net2: flags=61000843STANDBY,INACTIVE> mtu 1500 index 13
        inet 0.0.0.0 netmask ff000000
        groupname ipmp0
        ether 0:c:29:12:40:83
ipmp0: flags=8001000843 mtu 1500 index 11
        inet 192.168.1.10 netmask ffffff00 broadcast 192.168.1.255
        groupname ipmp0

Với câu lệnh ipmpstat, trạng thái của net2 interface được thể hiện trong dấu (), trái ngược với trạng thái trong cấu hình Active/Active.
# ipmpstat -g
GROUP       GROUPNAME   STATE     FDT       INTERFACES
ipmp0       ipmp0       ok        --        net1 (net2)

Ngoài ra khi check inboud & outbound traffic đều đi qua interface net1.
# ipmpstat -an
ADDRESS                   STATE  GROUP       INBOUND     OUTBOUND
192.168.1.10              up     ipmp0       net1        net1
P/S: kiểm tra địa chỉ MAC:
# dladm show-linkprop -p mac-address
LINK     PROPERTY            PERM VALUE        DEFAULT      POSSIBLE
net1     mac-address         rw   0:c:29:12:40:79 0:c:29:12:40:79 --
net2     mac-address         rw   0:c:29:12:40:83 0:c:29:12:40:83 --
net3     mac-address         rw   0:c:29:12:40:8d 0:c:29:12:40:8d --
net0     mac-address         rw   0:c:29:12:40:6f 0:c:29:12:40:6f --
=============================
* KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE trực tiếp từ tôi giúp bạn bước đầu trở thành những chuyên gia DBA, đủ kinh nghiệm đi thi chứng chỉ OA/OCP, đặc biệt là rất nhiều kinh nghiệm, bí kíp thực chiến trên các hệ thống Core tại VN chỉ sau 1 khoá học.
* CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
* Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile: 0902912888
⚡️ Skype: tranbinh48ca
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: http://bit.ly/ytb_binhoraclemaster
👨 Tiktok: https://www.tiktok.com/@binhoraclemaster?lang=vi
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhoracle
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội

=============================
học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,khóa học pl/sql, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle oca, oracle ocp, oracle ocm , oracle weblogic, middleware, hoc solaris, hoc linux, hoc aix, unix, securecrt, xshell, mobaxterm, putty

ĐỌC NHIỀU

Trần Văn Bình - Oracle Database Master