علی ذوقی
علی ذوقی
خواندن ۲ دقیقه·۲ سال پیش

آشنایی کوتاه با open vswitch




اما Open vSwitch چیست ؟

هدف اصلی این ابزار بر ایجاد و مدیریت شبکه بصورت خودکار و داینامیک در سطح وسیعی از سرورهای لینوکسی هست. یعنی هم بتونیم با اسکریپت خودمون اینترفیسهای مجازی رو ایجاد، مدیریت، حذف و مونیتور کنیم.

تاکید خود Open vSwitch بر مولتی سرور بودن قابلیت مدیریت و ایجاد شبکه هست که طبیعتا در محیطهای کلود این کاربرد بسیار به چشم می آید.

برای اینکه مفهوم vSwitch را بهتر بفهمیم میرم سراغ یه مثال ساده که شکل زیر نشون میده میخوایم چه کنیم:

Open vSwitch with linux network namespace
Open vSwitch with linux network namespace


گامها:

۱- ایجاد دو network namespace به نامهای ns1 و ns2

۲- ساخت زوج پورت اینترفیس veth1 و veth2 و اتصال آنها بهم

۳- ساخت زوج پورت اینتفریس veth3 و veth4 و اتصال آنها بهم

۴- انتقال پورتهای veth1, veth2 به ns1

۵- انتقال پورتهای veth3,veth4 به ns2

۶- آی پی دادن به پورتهای حاضر در ns1 و ns2

۷- ساخت vSwitch

۸- اتصال veth2,veth4 به vSwitch ایجاد شده

۹- بررسی اتصال

۱۰- آی پی دادن به vSwitch و دسترسی به اینترفیسهای داخل namespace ها از طریق هاست (لینوکسی که روی آن سوئیچ را ایجاد کردیم)


گام ۱: ایجاد دو network namespace به نامهای ns1 و ns2

ip netns add ns1 ip netns add ns2

گام ۲: ساخت زوج پورت اینترفیس veth1 و veth2 و اتصال آنها بهم

ip link add veth1 type veth peer name veth2

گام ۳: ساخت زوج پورت اینتفریس veth3 و veth4 و اتصال آنها بهم

ip link add veth3 type veth peer name veth4

گام ۴: انتقال پورتهای veth1, veth2 به ns1

ip link set veth1 netns ns1

گام ۵: انتقال پورتهای veth3,veth4 به ns2

ip link set veth3 netns ns2

گام ۶: آی پی دادن به پورتهای حاضر در ns1 و ns2

ip netns exec ns1 ifconfig veth1 10.10.11.1/24 up ip netns exec ns2 ifconfig veth3 10.10.11.2/24 up

حالا اگر از داخل فضانام ns1 پینگ آی پی 10.10.11.2 گرفته شود جواب گرفته نمی‌شود چون این دو نتورک کاملا ایزوله هستند.

ip netns exec ns1 ping 10.10.11.2

گام ۷: ساخت vSwitch

ovs-vsctl add-br vSwitch

گام ۸: اتصال veth2,veth4 به vSwitch ایجاد شده

ovs-vsctl add-port vSwitch veth2 ovs-vsctl add-port vSwitch veth4 ifconfig veth2 up ifconfig veth4 up

گام ۹: بررسی اتصال

ip netns exec ns1 ping 10.10.11.2

گام ۱۰: آی پی دادن به vSwitch و دسترسی به اینترفیسهای داخل namespace ها از طریق هاست

ifconfig vSwitch 10.10.11.3/24 up ping 10.10.11.1 ping 10.10.11.2

تمام!







open vswitchlinux namespace
علاقه مند به کلود، بنیانگذار پلتفرم ابری متن باز vuki و بنیانگذار هایو
شاید از این پست‌ها خوشتان بیاید