ইথারনেট চ্যানেল বন্ডিং ওরফে এনআইসি টিমিং লিনাক্স সিস্টেমে
ইথারনেট চ্যানেল বন্ডিং একটি একক ভার্চুয়াল এনআইসি কার্ডে দুটি বা ততোধিক নেটওয়ার্ক ইন্টারফেস কার্ড (এনআইসি) সক্ষম করে যা ব্যান্ডউইথকে বাড়িয়ে তুলতে পারে এবং এনআইসি কার্ডের অপ্রয়োজনীয়তা সরবরাহ করে। উত্পাদনের ব্যবস্থায় অপ্রয়োজনীয় লিঙ্কগুলি, ত্রুটি সহনশীলতা বা লোড ব্যালেন্সিং নেটওয়ার্কগুলি অর্জনের এটি দুর্দান্ত উপায়। যদি একটি শারীরিক এনআইসি ডাউন থাকে বা প্লাগ থাকে তবে এটি স্বয়ংক্রিয়ভাবে অন্যান্য এনআইসি কার্ডে সংস্থানগুলি সরিয়ে ফেলবে। চ্যানেল/এনআইসি বন্ধন কার্নেলের বন্ডিং ড্রাইভারের সহায়তায় কাজ করবে। আমরা এটি প্রদর্শনের জন্য দুটি এনআইসি ব্যবহার করব।
চ্যানেল বন্ডের প্রায় ছয় প্রকার উপলব্ধ are এখানে, আমরা মাত্র দুটি ধরণের চ্যানেল বন্ড পর্যালোচনা করব যা জনপ্রিয় এবং বহুল ব্যবহৃত।
- 0: লোড ব্যালেন্সিং (রাউন্ড-রবিন): ট্র্যাফিক ট্রান্সমিশনটি ক্রমবর্ধমান ক্রমে বা রাউন্ড-রবিন ফ্যাশনে এনআইসি উভয় থেকেই প্রেরণ করা হয়। এই মোডটি ভার ভারসাম্য এবং দোষ সহ্য করে।
- 1: অ্যাক্টিভ-ব্যাকআপ: যে কোনও সময় একটি মাত্র স্লেভ এনআইসি সক্রিয় রয়েছে। সক্রিয় দাস এনআইসি ব্যর্থ হলেই অন্যান্য ইন্টারফেস কার্ড সক্রিয় থাকবে
ইথারনেট চ্যানেল বন্ধন তৈরি করা হচ্ছে
আমাদের কাছে দুটি নেটওয়ার্ক ইথারনেট কার্ড রয়েছে অর্থাৎ এথ 1 এবং এথ 2 যেখানে বন্ধনের উদ্দেশ্যে বন্ধন তৈরি করা হবে। নীচের কমান্ডগুলি সম্পাদন করার জন্য সুপারভাইজার প্রয়োজন ged
নীচের চিত্রের মতো কনফিগারেশনের ফাইল হিসাবে স্ল্যাভ হিসাবে প্যারামিটার মাস্টার বন্ড0 এবং ইথ 1 ইন্টারফেসটি উল্লেখ করুন।
# vi /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE="eth1" TYPE=Ethernet ONBOOT="yes" BOOTPROTO="none" USERCTL=no MASTER=bond0 SLAVE=yes
এখানেও, স্ল্যাভ হিসাবে প্যারামিটার মাস্টার বন্ড0 এবং ইথ 2 ইন্টারফেস উল্লেখ করুন।
# vi /etc/sysconfig/network-scripts/ifcfg-eth2
DEVICE="eth2" TYPE="Ethernet" ONBOOT="yes" USERCTL=no #NM_CONTROLLED=yes BOOTPROTO=none MASTER=bond0 SLAVE=yes
Ifcfg-bond0 নামে পরিচিত “/ etc/sysconfig/নেটওয়ার্ক-স্ক্রিপ্ট /” ডিরেক্টরিতে বন্ড0 তৈরি করুন এবং চ্যানেল বন্ডিং ইন্টারফেসটি কনফিগার করুন।
নীচে একটি নমুনা চ্যানেল বন্ডিং কনফিগারেশন ফাইল রয়েছে।
# 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"
দ্রষ্টব্য: উপরের কনফিগারেশনে আমরা বন্ডিং বিকল্প মোড = 0 অর্থাত্ রাউন্ড-রবিন এবং মিমিমন = 100 (পোলিংয়ের অন্তর 100 মাইল) বেছে নিয়েছি।
আসুন, ifconfig কমান্ডটি ব্যবহার করে তৈরি করা ইন্টারফেসগুলি দেখি যা "বন্ধন "টিকে মাস্টার হিসাবে চলমান" ইন্টারফেস "এথ 1" এবং "এথ 2" স্লেভ হিসাবে চলমান দেখায়।
# 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)
পুনরায় চালু করুন নেটওয়ার্ক পরিষেবা এবং ইন্টারফেস ঠিক থাকতে হবে।
# service network restart
Shutting down interface bond0: [ OK ] Shutting down loopback interface: [ OK ] Bringing up loopback interface: [ OK ] Bringing up interface bond0: [ OK ]
বন্ডের স্থিতি পরীক্ষা করা হচ্ছে।
# watch -n .1 cat /proc/net/bonding/bond0
নীচে আউটপুট দেখায় যে বন্ডিং মোডটি লোড ব্যালেন্সিং (আরআর) এবং এথ 1 এবং এথ 2 প্রদর্শিত হচ্ছে।
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
এই পরিস্থিতিতে, স্লেভ ইন্টারফেস একই থাকে। ‘0’ এর পরিবর্তে বন্ড ইন্টারফেসে কেবলমাত্র একটি পরিবর্তন হবে ifcfg-bond0 এর পরিবর্তে এটি প্রদর্শিত হবে "1" যা নীচে হিসাবে দেখানো হয়েছে।
# 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"
নেটওয়ার্ক পরিষেবাটি পুনরায় আরম্ভ করুন এবং বন্ধনের স্থিতি পরীক্ষা করুন।
# service network restart
Shutting down interface bond0: [ OK ] Shutting down loopback interface: [ OK ] Bringing up loopback interface: [ OK ] Bringing up interface bond0: [ OK ]
কমান্ড সহ বন্ডের স্থিতি পরীক্ষা করা হচ্ছে।
# watch -n .1 cat /proc/net/bonding/bond0
বন্ডিং মোড ত্রুটি-সহনশীলতা দেখাচ্ছে (সক্রিয় ব্যাকআপ) এবং স্লেভ ইন্টারফেস আপ রয়েছে।
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
দ্রষ্টব্য: চ্যানেল বন্ডিংয়ের কাজ পরীক্ষা করার জন্য স্লেভ ইন্টারফেসগুলি ম্যানুয়ালি ডাউন এবং আপ করুন। নীচের মত কমান্ড দেখুন।
# ifconfig eth1 down # ifconfig eth1 up
এটাই!