ফেজ ৩ — নেটওয়ার্ক ও স্টোরেজ#
৮টি লেসন · লেভেল: মধ্যম
VPS ব্যবসায় সবচেয়ে বেশি সাপোর্ট টিকিট আসে নেটওয়ার্ক থেকে। এই ফেজটি ভালো করে পড়ুন।
এই ফেজে কী আছে#
| লেসন | কী শিখবেন |
|---|---|
| ১ — নেটওয়ার্ক মোড: কোনটি কখন | ছয়টি মোডের কোনটি আপনার IP বরাদ্দে খাটে |
| ২ — IPv4 ব্লক তৈরি ও বরাদ্দ | ব্লক বানিয়ে নোডে বরাদ্দ করা |
| ৩ — IPv6 ব্লক ও রুট ব্লক | মাস্টার সাবনেট ভাগ করে প্রতি VM-কে একটি /64 |
| ৪ — NAT সেটআপ | একটি পাবলিক IP-তে অনেক VM চালানো |
| ৫ — নেটওয়ার্ক ফিল্টারিং | এক কাস্টমার যেন অন্যের IP বা MAC না নিতে পারে |
| ৬ — rDNS ও DHCP | মেইলের জন্য PTR, আর VM-এ IP বসানোর দুই পথ |
| ৭ — স্টোরেজের ধরন | স্থানীয় ডিস্ক না শেয়ার্ড স্টোরেজ |
| ৮ — হাইপারভাইজার অ্যাসেট: GPU ও CPU পিনিং | নির্দিষ্ট ডিভাইস বা কোর একটি VM-কে দেওয়া |
লেসন ১ — নেটওয়ার্ক মোড: কোনটি কখন#
সহজ ভাষায়#
VirtFusion ছয় ধরনের নেটওয়ার্ক দিতে পারে। পছন্দ নির্ভর করে প্রোভাইডার আপনাকে কীভাবে IP দিয়েছে তার উপরে।
| মোড | কীভাবে কাজ করে | কখন ব্যবহার করবেন |
|---|---|---|
| Direct (MacVTap) | VM সরাসরি ফিজিক্যাল NIC-এর উপরে বসে, নিজস্ব MAC পায় | ডিফল্ট। প্রোভাইডার IP রুট করে দিলে সবচেয়ে সহজ |
| Bridged | লিনাক্স ব্রিজ (br0) দিয়ে VM LAN-এ যুক্ত হয় | পুরনো সেটআপ, বা ব্রিজে বিশেষ নিয়ম দরকার হলে |
| Routed | হোস্ট রাউটার হিসেবে কাজ করে, প্রতি VM-এ /32 রুট | প্রোভাইডার MAC ফিল্টার করলে |
| NAT | হাইপারভাইজারে একটি পাবলিক IP, VM-রা প্রাইভেট IP | IP-র দাম বেশি বা সংখ্যা কম হলে |
| Open vSwitch Bridged | OVS ব্রিজ — VLAN, ফ্লো নিয়ন্ত্রণ | বড় সেটআপ, VLAN-ভিত্তিক আইসোলেশন |
| Isolated | শুধু হোস্ট ও নিজেদের মধ্যে | ভেতরের নেটওয়ার্ক, পরীক্ষা |
MacVTap ১.৭.২ সংস্করণ থেকে ডিফল্ট এবং বেশিরভাগ ক্ষেত্রে বাড়তি কনফিগ লাগে না।
সতর্কতা: প্রোভাইডার প্রায়ই সার্ভারপ্রতি IP বেঁধে দেয় (ARP/MAC ফিল্টার)। এক নোডের IP অন্য নোডের VM-এ বসালে প্যাকেট নীরবে হারায় — কোনো এরর আসে না। কোন IP কোন নোডের, তা লিখে রাখুন।
ইন্টারফেসের নাম ভুল হলে#
Unable to get index for interface eth0: No such deviceMacVTap-এর ইন্টারফেসের নাম ভুল। নোডে ip a চালিয়ে আসল নাম দেখুন, তারপর Hypervisor → Networks → Primary Network → Interface Name ঠিক করুন।
লেসন ২ — IPv4 ব্লক তৈরি ও বরাদ্দ#
ধাপে ধাপে#
- Admin → IP Address Blocks → Create Block, ধরন IPv4
- নেটওয়ার্কের তথ্য দিন: সাবনেট, গেটওয়ে, নেটমাস্ক
- ব্যবহারযোগ্য রেঞ্জ যোগ করুন (শুরু ও শেষ IP)
- ব্লকটি এক বা একাধিক হাইপারভাইজারে অ্যাসাইন করুন
অ্যাসাইন না করলে ব্লক অকেজো — সার্ভার তৈরির সময় "no IP available" আসবে।
বরাদ্দের নিয়ম#
- সার্ভার তৈরির সময় প্যাকেজে বলা সংখ্যক IPv4 স্বয়ংক্রিয়ভাবে বসে
- পরে বাড়ানো-কমানো যায় (API:
/servers/{id}/ipv4Qty) - গেটওয়ে, নেটওয়ার্ক ও ব্রডকাস্ট ঠিকানা রেঞ্জের বাইরে রাখুন
ব্যবহারিক পরামর্শ#
| অভ্যাস | কারণ |
|---|---|
| প্রতি নোডের ব্লক আলাদা রাখুন | ভুল নোডে IP যাওয়া ঠেকায় |
| কিছু IP সংরক্ষিত রাখুন | মাইগ্রেশন ও জরুরি কাজে লাগে |
| ব্লকের নামে লোকেশন লিখুন | পরে খুঁজতে সুবিধা |
লেসন ৩ — IPv6 ব্লক ও রুট ব্লক#
সহজ ভাষায়#
IPv6-এ ঠিকানা প্রায় অফুরন্ত, তাই প্রতিটি VM-কে সাধারণত একটি সাবনেট দেওয়া হয়।
- Create Block → IPv6
- মাস্টার সাবনেট দিন (যেমন
2001:db8:100::/48) - তার ভেতরে ছোট সাবনেটে ভাগ করুন (সাধারণত
/64প্রতি VM) - অব্যবহৃত অংশ ব্ল্যাকলিস্ট করা যায়
- হাইপারভাইজারে অ্যাসাইন করুন
রুট ব্লক#
প্রতি VM-এ পুরো /64 দিতে না চাইলে আরও ছোট সাবনেট দেওয়া যায়। প্রোভাইডার বড় ব্লক রুট করে দিলে VirtFusion সেই ব্লকের ভেতরে /128, /127 বা /126 সাবনেট বরাদ্দ করতে পারে।
cloud-init ও IPv6#
Ubuntu টেমপ্লেটে রাউটার অ্যাডভার্টাইজমেন্ট বন্ধ রাখা দরকার হতে পারে, নাহলে VM নিজে থেকেই বাড়তি ঠিকানা নেয়। cloud-init দিয়ে netplan ফাইল বসানো যায়:
# /etc/netplan/99-user-conf.yaml — cloud-init write_files দিয়ে বসানো হয়
network:
version: 2
ethernets:
ens3:
accept-ra: falseলেসন ৪ — NAT সেটআপ#
সহজ ভাষায়#
NAT মানে: হাইপারভাইজারে একটি পাবলিক IPv4, আর সব VM প্রাইভেট রেঞ্জে (যেমন 192.168.200.0/24)। বাইরে থেকে ঢোকা হয় পোর্ট ফরওয়ার্ডিং দিয়ে। IP-র দাম বেশি হলে এটি খরচ অনেক কমায়।
যা লাগবে#
হাইপারভাইজারে Dnsmasq ও HAProxy ইনস্টল থাকতে হবে। তারপর একটি নেটওয়ার্ক XML ফাইল বানাতে হয়, যেখানে IP রেঞ্জ ও প্রধান ডিভাইস লেখা থাকে।
VirtFusion-এর দিকে#
- ওই প্রাইভেট রেঞ্জটি সাধারণ IP ব্লক হিসেবে যোগ করুন
(.0, .1 আর .255 বাদ রাখুন)
- হাইপারভাইজারের নেটওয়ার্ক টাইপ NAT v1, ইন্টারফেসের নাম natbr0
IPv6#
NAT-এ থাকা VM-কেও নেটিভ IPv6 দেওয়া যায় — নেটওয়ার্ক কনফিগে বৈধ IPv6 ঠিকানা (সম্ভব হলে /64) উল্লেখ করলে হয়।
তিনটি সীমা
- কন্ট্রোল ও হাইপারভাইজার একই মেশিনে হলে NAT চলবে না — প্রক্সি পোর্ট সংঘাত করে
- IPv4 NAT-এ VM-এর প্রাথমিক ইন্টারফেসই ব্যবহার করতে হয়
- NAT ইন্টারফেসওয়ালা সার্ভার মাইগ্রেট করা যায় না (live বা hybrid, কোনোটিই নয়)
লেসন ৫ — নেটওয়ার্ক ফিল্টারিং (IP হাইজ্যাক ঠেকানো)#
সহজ ভাষায়#
একই ব্রিজে থাকা এক কাস্টমার অন্যের IP বসিয়ে ট্রাফিক চুরি করতে পারে, বা MAC স্পুফ করতে পারে। VirtFusion-এ ব্রিজ পর্যায়ের ফিল্টার এটি ঠেকায়।
| ফিল্টার | কী করে |
|---|---|
| None | কিছুই না — ব্যবহার করবেন না |
| Libvirt | libvirt-এর মানসম্মত ফিল্টার (MAC স্পুফ ও IP চুরি ঠেকায়) |
| Native Standard | Libvirt-এর সমান নিয়ম, VirtFusion-এর নিজস্ব বাস্তবায়ন |
| Native Performance (IPv4) | ন্যূনতম নিয়ম, শুধু IPv4 — দ্রুততম |
| Native Performance (IPv4 + IPv6) | ন্যূনতম নিয়ম, সাথে ICMPv6 সামলানো |
নতুন হাইপারভাইজারে ডিফল্ট Native Performance (IPv4 + IPv6) (২.৪ সংস্করণ থেকে)। পুরনো ইনস্টলে Libvirt ফিল্টার রয়ে যায়, হাতে বদলাতে হয়।
বিদ্যমান সার্ভারে প্রয়োগ#
ফিল্টার বদলালে তা কেবল নতুন সার্ভারে বা যেসব সার্ভারে কোনো অ্যাকশন চলেছে সেখানে বসে। সব সার্ভারে একসাথে বসাতে কন্ট্রোল সার্ভারে:
vfcli-ctrl server:configurations HYPERVISOR_ID --options=networkকাস্টম ফিল্টার#
ডিফল্ট কনফিগ কপি করে /home/vf-data/conf/netfilters/-এ রাখুন — JSON ফাইলে ebtables নিয়ম, set ও unset অংশসহ।
লেসন ৬ — rDNS ও DHCP#
রিভার্স DNS#
মেইল পাঠানোর জন্য কাস্টমারের rDNS দরকার হয়। VirtFusion দুই ভাবে দেয়:
| মোড | মানে |
|---|---|
| Manual | কাস্টমার অনুরোধ করে, আপনি হাতে বসান |
| Automation | প্যানেল সরাসরি DNS প্রোভাইডারে রেকর্ড লেখে |
Automation চালু থাকলে কাস্টমার নিজেই প্যানেল থেকে PTR বদলাতে পারে — সাপোর্ট টিকিট অনেক কমে।
হাইপারভাইজারে DHCP#
কিছু নেটওয়ার্ক নকশায় VM-দের DHCP দিয়ে IP দেওয়া হয়। তখন হাইপারভাইজারে একটি DHCP সার্ভার (dnsmasq) চালাতে হয়। VirtFusion-এর DHCP গাইড এই সেটআপ দেখায়।
সাধারণ পরামর্শ: সম্ভব হলে স্ট্যাটিক (cloud-init) ব্যবহার করুন। DHCP-তে লিজ শেষ হওয়া, ভুল রেঞ্জ ও দুই সার্ভারে একই IP — এই সমস্যাগুলো বাড়ে।
লেসন ৭ — স্টোরেজের ধরন#
সহজ ভাষায়#
ডিফল্টে VM ডিস্ক থাকে হাইপারভাইজারের স্থানীয় ডিস্কে (/home)। বড় সেটআপে শেয়ার্ড স্টোরেজ যুক্ত করা যায়।
| ধরন | বৈশিষ্ট্য | কখন |
|---|---|---|
| Local (ডিফল্ট) | দ্রুততম, সহজ। নোড নষ্ট হলে ডিস্কেও পৌঁছানো যাবে না | ছোট ও মাঝারি প্রোভাইডার |
| Ceph RBD | বিতরণকৃত, রিডান্ডেন্ট, live migration সহজ | বড় ক্লাস্টার, ৩+ নোড |
| Remote Filesystem | NFS-জাতীয় মাউন্ট | ভাগাভাগি করা ইমেজ, ব্যাকআপ |
| StorPool | বাণিজ্যিক উচ্চ-পারফরম্যান্স SDS | এন্টারপ্রাইজ |
| Lightbits | NVMe/TCP ভিত্তিক | কম লেটেন্সি, বড় স্কেল |
বেছে নেওয়ার নিয়ম#
- শুরু করছেন? স্থানীয় NVMe দিয়ে শুরু করুন — সবচেয়ে কম জটিলতা, সবচেয়ে বেশি IOPS
- একটি নোড নষ্ট হলেও VM চালু রাখতে চান? Ceph ছাড়া উপায় নেই
- মনে রাখুন: Ceph-এ লেটেন্সি বাড়ে, নেটওয়ার্ক আলাদা করতে হয় (কমপক্ষে ১০ GbE)
সতর্কতা: ডিজাস্টার রিকভারি (
vfcli-hv dr:backup) শুধু স্থানীয় ডিস্কের ব্যাকআপ নেয় — Ceph-এর মতো শেয়ার্ড স্টোরেজ বাদ পড়ে। শেয়ার্ড স্টোরেজের নিজস্ব রিডান্ডেন্সি ও ব্যাকআপ আলাদা করে ভাবতে হবে।
লেসন ৮ — হাইপারভাইজার অ্যাসেট: GPU ও CPU পিনিং#
সহজ ভাষায়#
GPU, USB ডিভাইস বা নির্দিষ্ট CPU কোর কোনো VM-কে সরাসরি দিতে চাইলে "Asset" ব্যবহার হয় (৫.১ সংস্করণ থেকে)।
কনফিগ#
Compute Resources → Hypervisors → [নোড] → Assets
- নাম দিন, ধরন বাছুন (যেমন "Device"), ডিভাইসের XML দিন
- GPU পাসথ্রুর জন্য আগে IOMMU গ্রুপিং ঠিক থাকতে হবে (BIOS-এ VT-d/AMD-Vi চালু)
- অ্যাসেটগুলো গ্রুপ করে প্যাকেজে যুক্ত করতে হয়
প্যাকেজে অ্যাসেট গ্রুপ যুক্ত থাকলে সার্ভার তৈরির সময় ফাঁকা অ্যাসেট স্বয়ংক্রিয়ভাবে বসে। API দিয়ে সার্ভার তৈরির সময় ডিফল্ট গ্রুপ ওভাররাইড করা যায়।
সীমা#
সতর্কতা: অ্যাসেট হাইপারভাইজার-নির্দিষ্ট। কোনো সার্ভারে অ্যাসেট যুক্ত থাকলে সেটি মাইগ্রেট করা যাবে না। GPU VPS বিক্রি করলে এই সীমাটি বিজ্ঞাপনেই বলে দিন।
কাস্টমারকে অ্যাসেটের তথ্য দেখানো যায়, সাথে নিজের আইকনও দেওয়া যায় (PNG, ~২৫০×২৫০, রাখতে হয় /opt/virtfusion/app/control/public/custom/img/assets/-এ)।
ফেজ ৩ শেষে আপনি যা পারবেন#
- সঠিক নেটওয়ার্ক মোড বেছে নেওয়া
- IPv4 ও IPv6 ব্লক তৈরি করে নোডে বসানো
- NAT দিয়ে কম IP-তে বেশি VM চালানো
- IP হাইজ্যাক ঠেকানো
- rDNS ও DHCP-এর সিদ্ধান্ত নেওয়া
- স্টোরেজ ব্যাকএন্ড বাছা
- GPU পাসথ্রু ও তার সীমা বোঝা
পরবর্তী: ফেজ ৪ — দৈনন্দিন অ্যাডমিন