Ethernet Channel Bonding aka NIC Teaming á Linux kerfum
Ethernet Channel Bonding gerir tveimur eða fleiri netviðmótskorti (NIC) kleift á einu sýndar-NIC-korti sem getur aukið bandbreiddina og veitir offramboð á NIC-kortum. Þetta er frábær leið til að ná fram óþarfa tenglum, bilunarþoli eða álagsjöfnunarnetum í framleiðslukerfi. Ef eitt líkamlegt NIC er niðri eða aftengt mun það sjálfkrafa færa tilföng yfir á annað NIC kort. Rás/NIC tenging mun virka með hjálp tengingarstjóra í kjarna. Við munum nota tvö NIC til að sýna fram á það sama.
Það eru næstum sex tegundir af Channel Bond gerðum í boði. Hér munum við skoða aðeins tvær tegundir af Channel Bond sem eru vinsælar og mikið notaðar.
- 0: Álagsjöfnun (Round-Robin) : Umferð er send í röð eða hringrásarröð frá báðum NIC. Þessi stilling veitir álagsjafnvægi og bilanaþol.
- 1: Virk öryggisafrit: Aðeins einn þræll NIC er virkur á hverjum tíma. Annað tengikort verður aðeins virkt ef virka þræl-NIC bilar.
Að búa til Ethernet Channel Bonding
Við erum með tvö net Ethernet kort, þ.e. eth1 og eth2 þar sem bond0 verður búið til í tengingartilgangi. Þarf ofurnotandaréttindi til að framkvæma fyrir neðan skipanir.
Nefnið færibreytuna MASTER bond0 og eth1 tengi sem SLAVE í stillingarskrá eins og sýnt er hér að neðan.
# vi /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE="eth1" TYPE=Ethernet ONBOOT="yes" BOOTPROTO="none" USERCTL=no MASTER=bond0 SLAVE=yes
Hér líka, tilgreindu færibreytuna MASTER bond0 og eth2 tengi sem þræl.
# vi /etc/sysconfig/network-scripts/ifcfg-eth2
DEVICE="eth2" TYPE="Ethernet" ONBOOT="yes" USERCTL=no #NM_CONTROLLED=yes BOOTPROTO=none MASTER=bond0 SLAVE=yes
Búðu til bond0 og stilltu Channel bonding tengi í /etc/sysconfig/network-scripts/ möppunni sem heitir ifcfg-bond0.
Eftirfarandi er sýnishorn af rásartengingarstillingarskrá.
# vi /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0 ONBOOT=yes IPADDR=192.168.246.130 NETMASK=255.255.255.0 BONDING_OPTS="mode=0 miimon=100"
Athugið: Í uppsetningunni hér að ofan höfum við valið Bonding Options mode=0, þ.e. Round-Robin og miimon=100 (Kannanabil 100 ms).
Við skulum sjá viðmót búin til með ifconfig skipuninni sem sýnir „bond0“ í gangi sem MASTER bæði tengi „eth1“ og „eth2“ sem keyra sem ÞRÁLAR.
# ifconfig
bond0 Link encap:Ethernet HWaddr 00:0C:29:57:61:8E inet addr:192.168.246.130 Bcast:192.168.246.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe57:618e/64 Scope:Link UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1 RX packets:17374 errors:0 dropped:0 overruns:0 frame:0 TX packets:16060 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:1231555 (1.1 MiB) TX bytes:1622391 (1.5 MiB) eth1 Link encap:Ethernet HWaddr 00:0C:29:57:61:8E UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1 RX packets:16989 errors:0 dropped:0 overruns:0 frame:0 TX packets:8072 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:1196931 (1.1 MiB) TX bytes:819042 (799.8 KiB) Interrupt:19 Base address:0x2000 eth2 Link encap:Ethernet HWaddr 00:0C:29:57:61:8E UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1 RX packets:385 errors:0 dropped:0 overruns:0 frame:0 TX packets:7989 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:34624 (33.8 KiB) TX bytes:803583 (784.7 KiB) Interrupt:19 Base address:0x2080 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:8 errors:0 dropped:0 overruns:0 frame:0 TX packets:8 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:480 (480.0 b) TX bytes:480 (480.0 b)
Endurræstu netþjónustu og viðmót ættu að vera í lagi.
# service network restart
Shutting down interface bond0: [ OK ] Shutting down loopback interface: [ OK ] Bringing up loopback interface: [ OK ] Bringing up interface bond0: [ OK ]
Athugun á stöðu skuldabréfsins.
# watch -n .1 cat /proc/net/bonding/bond0
Úttakið fyrir neðan sýnir að tengistilling er álagsjafnvægi (RR) og eth1 og eth2 eru að birtast.
Every 0.1s: cat /proc/net/bonding/bond0 Thu Sep 12 14:08:47 2013 Ethernet Channel Bonding Driver: v3.6.0 (September 26, 2009) Bonding Mode: load balancing (round-robin) MII Status: up MII Polling Interval (ms): 100 Up Delay (ms): 0 Down Delay (ms): 0 Slave Interface: eth1 MII Status: up Speed: Unknown Duplex: Unknown Link Failure Count: 2 Permanent HW addr: 00:0c:29:57:61:8e Slave queue ID: 0 Slave Interface: eth2 MII Status: up Speed: Unknown Duplex: Unknown Link Failure Count: 2 Permanent HW addr: 00:0c:29:57:61:98 Slave queue ID: 0
Í þessari atburðarás eru þrælaviðmótin þau sömu. aðeins ein breyting verður til staðar í tengiviðmóti skuldabréfa ifcfg-bond0 í stað '0' það verður '1' sem er sýnt eins og hér að neðan.
# vi /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0 ONBOOT=yes IPADDR=192.168.246.130 NETMASK=255.255.255.0 BONDING_OPTS="mode=1 miimon=100"
Endurræstu sérþjónustu og athugaðu stöðu tengingar.
# service network restart
Shutting down interface bond0: [ OK ] Shutting down loopback interface: [ OK ] Bringing up loopback interface: [ OK ] Bringing up interface bond0: [ OK ]
Athugaðu stöðu skuldabréfsins með skipun.
# watch -n .1 cat /proc/net/bonding/bond0
Tengistilling sýnir bilunarþol (virkt öryggisafrit) og þrælaviðmót er upp.
Every 0.1s: cat /proc/n... Thu Sep 12 14:40:37 2013 Ethernet Channel Bonding Driver: v3.6.0 (September 2 6, 2009) Bonding Mode: fault-tolerance (active-backup) Primary Slave: None Currently Active Slave: eth1 MII Status: up MII Polling Interval (ms): 100 Up Delay (ms): 0 Down Delay (ms): 0 Slave Interface: eth1 MII Status: up Speed: Unknown Duplex: Unknown Link Failure Count: 0 Permanent HW addr: 00:0c:29:57:61:8e Slave queue ID: 0 Slave Interface: eth2 MII Status: up Speed: Unknown Duplex: Unknown Link Failure Count: 0 Permanent HW addr: 00:0c:29:57:61:98 Slave queue ID: 0
Athugið: Niður og upp þrælaviðmótin handvirkt til að athuga virkni rásartengingar. Vinsamlegast sjáðu skipunina eins og hér að neðan.
# ifconfig eth1 down # ifconfig eth1 up
Það er það!