प्रॉक्समॉक्स वीई (ईए) में केवीएम vSocket को विन्यस्त करना

Prev Next

नोट: यह एक प्रारंभिक उपलब्धता (EA) फीचर है जो केवल सीमित रिलीज के लिए उपलब्ध है। अधिक जानकारी के लिए, अपने Cato Networks प्रतिनिधि से संपर्क करें या ea@catonetworks.com पर ईमेल भेजें।

सारांश

यह लेख वर्णन करता है कि एक होस्ट पर जो Proxmox वर्चुअल एनवायरनमेंट (Proxmox VE) के माध्यम से प्रबंधित होता है, KVM vSocket कैसे तैनात करें। Proxmox VE QEMU/KVM का उपयोग करता है, इसलिए vSocket की तैनाती मॉडल मानक Linux KVM (libvirt/QEMU) होस्ट के समान है: vSocket QCOW2 इमेज के रूप में वितरित होता है और क्लाउड-init के साथ बूटस्ट्रैप्ड होता है। अंतर प्रबंधन परत है — आप virt-install या virsh का उपयोग करने के बजाय Proxmox वेब UI से VM बनाते और प्रबंधित करते हैं।

सामान्य KVM vSocket आवश्यकताएँ, Cloud-init user-data सेटिंग्स और Cato Management Application (CMA) में साइट निर्माण प्रवाह के लिए, KVM vSocket साइट को कॉन्फिगर करना देखें।

ये Proxmox VE पर KVM vSocket को तैनात करने के मुख्य चरण हैं:

  1. CMA में vSocket साइट बनाएँ और क्रमांक (S/N) कॉपी करें।
  2. QCOW2 इमेज डाउनलोड करें और क्लाउड-init सीड ISO बनाएं।
  3. QCOW2 इमेज और सीड ISO को Proxmox स्टोर में अपलोड करें।
  4. UEFI फर्मवेयर और virtio डिवाइस के साथ Proxmox वेब UI में VM बनाएं।
  5. सीरियल पोर्ट और VM में अतिरिक्त नेटवर्क इंटरफेस जोड़ें।
  6. VM शुरू करें और सत्यापित करें कि vSocket CMA से कनेक्ट होता है।

Proxmox VE में KVM vSocket प्रोविज़न की तैयारी

इनमें KVM vSocket बनाने और इसे Cato Cloud से कनेक्ट करने की पूर्व आवश्यकताएँ शामिल हैं:

  • Proxmox VE होस्ट जिसमें KVM (हार्डवेयर वर्चुअलाइजेशन) सक्षम है, और अतिथियों के लिए UEFI (OVMF) समर्थन है।
  • Proxmox होस्ट CPU Haswell-क्लास आर्किटेक्चर या नया है।
  • Cato Networks रिपॉजिटरी से डाउनलोड किया गया KVM vSocket के लिए QCOW2 इमेज।
  • "एक क्लाउड-इनिट सीड ISO, जो साइट की क्रमिक संख्या के साथ पूर्वनिर्धारित की गई होती है (देखें क्लाउड-इनिट सीड ISO बनाना)।"
  • सीड ISO जनरेट करने के लिए एक टूल (उदाहरण के लिए, mkisofs या genisoimage)।
  • vSocket के WAN1 इंटरफेस के लिए इंटरनेट कनेक्टिविटी और एक सार्वजनिक DNS सेवा।
  • Proxmox ब्रिज (जैसे, vmbr0) जो WAN, LAN, और वैकल्पिक प्रबंधन इंटरफ़ेस को संबंधित नेटवर्क्स से जोड़ता है।
  • vSocket के साथ केवल 4 नेटवर्क इंटरफेस (NICs) संलग्न करें। 4 से अधिक NICs जोड़ने से vSocket के लिए समस्याएँ हो सकती हैं।

नोट: हार्डवेयर NIC पैसथ्रू (PCI पैसथ्रू) और SR-IOV समर्थित नहीं हैं।

अनुशंसित VM सेटिंग्स

सेटिंग अनुशंसित मूल्य
मशीन प्रकार q35
BIOS / फर्मवेयर OVMF (UEFI), बिना EFI डिस्क के
CPU प्रकार होस्ट (Haswell-क्लास आर्किटेक्चर या नया होस्ट CPU)
vCPU 2 या अधिक
मेमोरी 4096 MB या अधिक
प्राथमिक डिस्क आयातित QCOW2 इमेज, VirtIO Block बस (8 GB थिन बैकिंग स्टोर)
Cloud-init मीडिया सीड ISO, जिसे CD-ROM ड्राइव के रूप में संबद्ध किया गया है
NIC मॉडल VirtIO (पैरावर्चुअलाइज्ड)
NIC गिनती 2 से 4 इंटरफेस

Proxmox VE में KVM vSocket को तैनात करने के लिए सर्वोत्तम प्रथाएं

  • हार्डवेयर संगतता समस्याओं से बचने के लिए और यह सुनिश्चित करने के लिए कि सभी आवश्यक हार्डवेयर सेटिंग्स सही ढंग से लागू की गई हैं, Cato QCOW2 इमेज से सीधे vSocket तैनात करें।
  • मूल QCOW2 इमेज की एक अनछुई प्रतिलिपि संभाल कर रखें और प्रत्येक vSocket VM के लिए इमेज की एक साफ प्रतिलिपि आयात करें। क्लाउड-init सीड ISO केवल पहले बूट पर चलता है। अगर कॉन्फ़िगरेशन सही ढंग से लागू नहीं किया गया है, तो यह आंशिक रूप से प्रारंभिक VM को ठीक करने की तुलना में एक साफ़ इमेज से VM फिर से बनाने के लिए आमतौर पर तेज़ होता है।
  • पहली शुरुआत से पहले VM का एक Proxmox स्नैपशॉट लें, ताकि यदि बूटस्ट्रैप कॉन्फ़िगरेशन सही नहीं है, तो आप प्रारंभिक अवस्था में लौट सकें।
  • प्रत्येक vSocket VM के लिए, संबंधित साइट के क्रमांक के साथ एक अद्वितीय सीड ISO बनाएं (HA युग्म के प्रत्येक सदस्य सहित)।
  • नेटवर्क और डिस्क डिवाइस दोनों के लिए Virtio का उपयोग करें — कोई NIC अनुकरण आवश्यक नहीं है।
  • VM को तब तक शुरू न करें जब तक कि वह पूरी तरह से विन्यस्त न हो। क्लाउड-init सीड ISO केवल पहले बूट पर पढ़ा जाता है।

KVM vSocket साइट बनाते समय

CMA में, vSocket KVM कनेक्शन प्रकार के साथ एक नई साइट बनाएं, और फिर साइट कॉन्फ़िगरेशन > सॉकेट से क्रमांक (S/N) कॉपी करें। आपको इस क्रमांक (डैश सहित) को क्लाउड-init user-data फ़ाइल में दर्ज करने की आवश्यकता है।

पूरी प्रक्रिया के लिए, KVM vSocket साइट कॉन्फ़िगर करना देखें।

Proxmox VE पर vSocket VM को तैनात करना

चरण 1 – Proxmox नेटवर्क तैयार करें

सुनिश्चित करें कि Proxmox होस्ट में vSocket से कनेक्ट करने के लिए हर इंटरफेस के लिए एक Linux ब्रिज है:

  • WAN1 – इंटरनेट कनेक्टिविटी और एक सार्वजनिक DNS सेवा तक पहुंच के साथ एक ब्रिज (उदाहरण के लिए, vmbr0)। यह एक अनिवार्य इंटरफेस है।
  • LAN1 – vSocket के पीछे के LAN सेगमेंट के लिए एक ब्रिज। यह एक अनिवार्य इंटरफेस है।
  • MGMT (वैकल्पिक) – vSocket तक प्रबंधकीय पहुँच के लिए एक ब्रिज।
  • WAN2 (वैकल्पिक) – दूसरे WAN लिंक के लिए एक ब्रिज।

नेटवर्क डिवाइस पर VLAN टैग का उपयोग करके LAN सेगमेंट को पृथक करें जो एक ही ब्रिज साझा करते हैं।

HA डिप्लॉयमेंट के लिए, दोनों vSockets के LAN इंटरफेस को समान ब्रॉडकास्ट डोमेन (उसी ब्रिज और VLAN) में होना चाहिए।

चरण 2 – क्लाउड-init सीड ISO बनाएं

KVM vSocket NoCloud सीड ISO का उपयोग करते हुए cloud-init के साथ बूटस्ट्रैप किया जाता है। एक डायरेक्टरी बनाएँ जिसमें एक फाइल हो:

TMPDIR=$(mktemp -d)
touch $TMPDIR/user-data

साइट कॉन्फ़िगरेशन के साथ user-data को पॉपुलेट करें। फ़ाइल एक सरल TOML (key = value) प्रारूप का उपयोग करती है, और टिप्पणियाँ समर्थित हैं। क्रमांक अनिवार्य है; प्रति-इंटरफ़ेस नेटवर्क सेटिंग्स वैकल्पिक हैं (इंटरफेस DHCP को डिफ़ॉल्ट करते हैं)।

# अनिवार्य: CMA साइट से क्रमांक (साइट कॉन्फ़िगरेशन > सॉकेट)
serial = "XXXX-XXXX-XXXX-XXXX"

# वैकल्पिक प्रति-इंटरफ़ेस नेटवर्क सेटिंग्स।
# प्रत्येक इंटरफ़ेस के लिए [[network]] ब्लॉक को दोहराएं; नाम अद्वितीय होना चाहिए
# और वास्तविक इंटरफेस से मेल खाना चाहिए (WAN1, WAN2, LAN1, ...)।

[[network]]
name = "WAN1"                       # अनिवार्य
addressing_type = "Static"          # "Static" या "DHCP"
address = "192.168.50.201"          # अनिवार्य यदि Static
netmask = "255.255.255.0"           # अनिवार्य यदि Static
default_gw = "192.168.50.1"         # अनिवार्य यदि Static
primary_dns = "192.168.50.1"        # अनिवार्य यदि Static
secondary_dns = "8.8.4.4"           # वैकल्पिक

# DHCP डिफ़ॉल्ट है, इसलिए यह ब्लॉक वैकल्पिक/अत्यधिक है।
[[network]]
name = "WAN2"
addressing_type = "DHCP"

सीड ISO में cidata के रूप में लेबल की गई फ़ाइल को पैक करें:

pushd $TMPDIR
mkisofs -output seed.iso -volid cidata -joliet -rock user-data
popd

ISO को ऐसा नाम दें जो उन vSocket VM की पहचान करे जो इसका उपयोग करते हैं (उदाहरण के लिए, seed-<site-name>.iso), ताकि आप VM बनाते समय सही ISO चुन सकें।

चरण 3 – फाइलें Proxmox स्टोरेज पर अपलोड करें

  1. फाइल अपलोड करें ISO इमेज स्टोरेज पर उस नोड के जो VM होस्ट करता है (उदाहरण के लिए, local स्टोरेज, ISO Images सेक्शन में)।
  2. vSocket QCOW2 इमेज को उसी नोड की स्टोरेज के Import सेक्शन में अपलोड करें। स्टोरेज में Import सामग्री प्रकार को सक्षम किया गया होना चाहिए।

प्रत्येक vSocket VM के लिए QCOW2 इमेज की एक साफ़ कॉपी का उपयोग करें।

स्क्रीनशॉट प्लेसहोल्डर – vSocket स्टोरेज में अपलोड किया जा रहा सीड ISO।

स्क्रीनशॉट प्लेसहोल्डर – QCOW2 इमेज अपलोड या आयात किया जा रहा है।

चरण 4 – VM बनाएँ

Proxmox वेब UI में, Create VM पर क्लिक करें और विजार्ड के टैब्स को निम्नानुसार कॉन्फ़िगर करें।

vSocket VM बनाने के लिए:

  1. General टैब में, Node का चयन करें, और फिर vSocket VM के लिए VM ID और Name दर्ज करें। "HA में जोड़ें चेकबॉक्स को साफ़ छोड़ें (देखें उच्च उपलब्धता (HA) तैनाती)।"

  2. OS टैब में:

    1. Use CD/DVD disc image file (iso) का चयन करें।
    2. Storage और ISO image के लिए, आपके द्वारा इस vSocket के लिए बनाए गए सीड ISO का चयन करें।
    3. Guest OS के लिए, डिफ़ॉल्ट मूल्य रखें (Type: Linux, Version: 6.x - 2.6 Kernel)।

    स्क्रीनशॉट प्लेसहोल्डर – OS टैब में क्लाउड-init सीड ISO का चयन करना।

  3. System टैब में:

    1. BIOS के लिए, OVMF (UEFI) का चयन करें।
    2. Add EFI Disk चेकबॉक्स साफ करें। vSocket इमेज को EFI डिस्क की आवश्यकता नहीं है।
    3. Machine के लिए, q35 का चयन करें।
    4. डिफ़ॉल्ट SCSI Controller (VirtIO SCSI single) रखें।

    स्क्रीनशॉट प्लेसहोल्डर – UEFI फर्मवेयर का चयन किया गया और Add EFI Disk साफ किया गया।

  4. Disks टैब में:

    1. डिफ़ॉल्ट डिस्क को हटा दें (virtio0)।
    2. Import पर क्लिक करें, और फिर Select Image में vSocket QCOW2 इमेज का चयन करें।
    3. Bus/Device के लिए, VirtIO Block का चयन करें, और डिस्क के लिए Target Storage का चयन करें।

    स्क्रीनशॉट प्लेसहोल्डर – डिफ़ॉल्ट डिस्क को हटाना।

    स्क्रीनशॉट प्लेसहोल्डर – QCOW2 इमेज को VM डिस्क के रूप में आयात करना।

  5. CPU टैब में, कम से कम 2 Cores कॉन्फ़िगर करें, और Type के लिए host चुनें।

    स्क्रीनशॉट प्लेसहोल्डर – CPU कोर और होस्ट CPU प्रकार।

  6. Memory टैब में, कम से कम 4096 MB दर्ज करें।

  7. Network टैब में, पहले नेटवर्क डिवाइस (net0) को कॉन्फ़िगर करें। यह इंटरफ़ेस vSocket का WAN1 इंटरफ़ेस है:

    1. Bridge के लिए, इंटरनेट कनेक्टिविटी वाला ब्रिज चुनें।
    2. Model के लिए, VirtIO (paravirtualized) का चयन करें।
    3. वैकल्पिक रूप से, Firewall चेकबॉक्स साफ करें।
  8. Confirm टैब में, सुनिश्चित करें कि Start after created चयनित नहीं है, और फिर Finish पर क्लिक करें।

महत्वपूर्ण! VM को तब तक शुरू न करें जब तक कि वह पूरी तरह से विन्यस्त न हो। क्लाउड-init सीड ISO केवल पहले बूट पर पढ़ा जाता है।

चरण 5 – सीरियल पोर्ट और शेष इंटरफेस जोड़ें

VM बनने के बाद, VM के Hardware सेक्शन से शेष हार्डवेयर जोड़ें।

VM हार्डवेयर कॉन्फ़िगरेशन को पूरा करने के लिए:

  1. Add > Serial Port पर क्लिक करें और सीरियल पोर्ट 0 (serial0) जोड़ें। सीरियल पोर्ट vSocket को कंसोल एक्सेस के लिए उपयोग किया जाता है।
  2. Add > Network Device पर क्लिक करें और LAN1 इंटरफ़ेस जोड़ें:
    1. Bridge के लिए, LAN ब्रिज का चयन करें।
    2. Model के लिए, VirtIO (paravirtualized) का चयन करें।
    3. वैकल्पिक रूप से, LAN सेगमेंट को पृथक करने के लिए एक VLAN Tag दर्ज करें जो एक ही ब्रिज का उपयोग करते हैं।
  3. प्रत्येक अतिरिक्त इंटरफ़ेस (प्रबंधन या WAN2) के लिए पूर्व चरण को दोहराएं, एक बार में 4 इंटरफेस तक।

नेटवर्क डिवाइस उनके क्रम के अनुसार vSocket इंटरफ़ेस पर मैप होते हैं: net0 WAN1 है, net1 LAN1 है, और बाकी के डिवाइस वैकल्पिक इंटरफ़ेस हैं।

स्क्रीनशॉट प्लेसहोल्डर – सीरियल पोर्ट जोड़ना।

स्क्रीनशॉट प्लेसहोल्डर – एक अतिरिक्त नेटवर्क डिवाइस जोड़ना।

स्क्रीनशॉट प्लेसहोल्डर – vSocket VM के लिए पूरा हार्डवेयर सूची।

चरण 6 – (अनुशंसित) स्नैपशॉट लें

पहली शुरुआत से पहले, VM के Snapshots सेक्शन में, Take Snapshot पर क्लिक करें और प्रारंभिक गणराज्य का स्नैपशॉट बनाएं (उदाहरण के लिए, pristine)। यदि पहली बूट कॉन्फ़िगरेशन सही नहीं है, तो आप VM को फिर से बनाने के बजाय इस स्नैपशॉट में वापस जा सकते हैं।

स्क्रीनशॉट प्लेसहोल्डर – प्रारंभिक VM स्थिति का स्नैपशॉट लेना।

चरण 7 – VM प्रारंभ करें

VM प्रारंभ करें। पहली बार बूट पर, vSocket सीड ISO से कॉन्फ़िगरेशन पढ़ता है और Cato Cloud में रजिस्टर होना शुरू करता है।

vSocket को CMA से जोड़ना

CMA स्वचालित रूप से vSocket का पता लगाता है और इसे साइट से जोड़ने के लिए क्रमांक (क्लाउड-init user-data से) का उपयोग करता है। पंजीकरण के लिए, WAN1 इंटरफ़ेस के पास इंटरनेट कनेक्टिविटी और एक सार्वजनिक DNS तक पहुंच होनी चाहिए ताकि वह Cato Cloud और CMA तक पहुंच सके।

  • यदि WAN1 DHCP के माध्यम से एक डायनामिक IP पता प्राप्त करता है, तो vSocket स्वचालित रूप से Cato Cloud में रजिस्टर होने के लिए शुरू हो जाता है।
  • यदि DHCP उपलब्ध नहीं है, तो क्लाउड-init user-data में WAN1 के लिए स्टैटिक IP पता कॉन्फ़िगर करें (चरण 2 देखें)।
  • डिफ़ॉल्ट रूप से, WAN2 इंटरफ़ेस अक्षम है और vSocket केवल पंजीकरण के लिए WAN1 का उपयोग करता है।

बूट प्रक्रिया और पंजीकरण की निगरानी के लिए, Proxmox वेब UI में VM के Console सेक्शन का उपयोग करें। vSocket अपने बूट आउटपुट को सीरियल कंसोल पर भेजता है, इसलिए इस आउटपुट को देखने के लिए, हार्डवेयर > डिस्प्ले > ग्राफिक कार्ड को सीरियल टर्मिनल 0 पर सेट करें।

उच्च उपलब्धता (HA) परिनियोजन

HA VRRP का उपयोग करते हुए दो KVM vSockets के बीच एक भौतिक HA पेयर की तरह व्यवहार करता है। यह Proxmox क्लस्टर HA सुविधा (ADD TO HA विकल्प) से अलग है, जो किसी अन्य नोड पर एक VM को पुनरारंभ करता है और vSocket HA के लिए उपयोग नहीं किया जाता है।

  • दो vSocket VMs को तैनात करें, प्रत्येक के पास QCOW2 छवि की अपनी प्रतिलिपि और अपना बीज ISO हो (प्राथमिक या द्वितीयक सॉकेट की क्रमिक संख्या के साथ)।
  • दोनों VMs की LAN इंटरफेस एक ही ब्रॉडकास्ट डोमेन में होनी चाहिए (एक ही पुल और VLAN टैग) ताकि VRRP संचालित हो सके। यदि VMs विभिन्न Proxmox नोड्स पर हैं, तो LAN पुलों को एक ही परत 2 सेगमेंट से जुड़ा होना चाहिए।
  • CMA में साइट पर द्वितीयक सॉकेट जोड़ें। दो सदस्य HA पेयर बनाते हैं, स्वास्थ्य/राज्य का आदान-प्रदान करते हैं, और उत्पाद HA डिजाइन के अनुसार विफल हो जाते हैं।
  • HA स्वास्थ्य और राज्य CMA में दिखाई देते हैं।

अतिरिक्त vSocket VMs तैनात करना

उसी Proxmox होस्ट या क्लस्टर पर एक से अधिक vSocket VM चलाने के लिए:

  • प्रत्येक VM के लिए QCOW2 छवि की एक साफ प्रतिलिपि आयात करें।
  • संबंधित साइट की क्रमिक संख्या के साथ एक नया बीज ISO उत्पन्न करें।
  • एक अद्वितीय VM नाम और VM ID का उपयोग करें।
  • जहां पृथक्करण आवश्यक है, वहां अलग-अलग LAN पुलों या VLAN टैग्स का उपयोग करें।

vSocket VM कॉन्फ़िगरेशन बदलना

आप कुछ VM सेटिंग्स बदल सकते हैं यदि नई कॉन्फ़िगरेशन समर्थित मानों का उपयोग करती है। परिवर्तनों के प्रभावी होने के लिए vSocket VM को पुनः प्रारंभ करें।

निम्न VM सेटिंग्स बदली जा सकती हैं:

  • सीपीयू
  • मेमोरी
  • नेटवर्किंग, जैसे नेटवर्क इंटरफेस जोड़ना या निकालना

ट्रबलशूटिंग

VM बूट करता है लेकिन vSocket रजिस्टर नहीं करता है

  • सुनिश्चित करें कि सीड ISO CD-ROM के रूप में अटैच है।
  • सुनिश्चित करें कि ISO में user-data फाइल शामिल है।
  • सुनिश्चित करें कि serial मूल्य CMA में साइट की क्रमिक संख्या के साथ मेल खाता है।
  • सुनिश्चित करें कि WAN1 के पास इंटरनेट पहुंच और सार्वजनिक DNS सेवा तक पहुंच है।
  • सुनिश्चित करें कि पहला नेटवर्क उपकरण (net0) इच्छित WAN ब्रिज से जुड़ा हुआ है।

cloud-init कॉन्फ़िगरेशन में परिवर्तन नजरअंदाज किए जाते हैं

vSocket बूटस्ट्रैप केवल पहली बूट पर चलता है। यदि user-data VM के प्रारंभ के बाद बदला जाता है, तो परिवर्तन मौजूदा बूट डिस्क पर लागू नहीं होते हैं। प्रारंभिक अवस्था के स्नैपशॉट को वापस ले जाएं या QCOW2 इमेज की साफ कॉपी और नए सीड ISO के साथ VM को पुनः बनाएं।

कंसोल आउटपुट नहीं है

  • सुनिश्चित करें कि VM में serial पोर्ट (serial0) जोड़ा गया है।
  • वेब UI कंसोल में क्रमात्मक आउटपुट देखने के लिए, Hardware > Display > Graphic card को Serial terminal 0 पर सेट करें।

नेटवर्क अपेक्षा के अनुसार व्यवहार नहीं करता है

  • प्रत्येक नेटवर्क उपकरण से जुड़े हुए ब्रिज की पुष्टि करें।
  • VM कॉन्फ़िगरेशन में नेटवर्क उपकरणों का क्रम सुनिश्चित करें (net0 WAN1 और net1 LAN1 है)।
  • सुनिश्चित करें कि user-data फाइल में [[network]] सेक्शन DHCP या स्थिर सेटिंग्स का उपयोग कर रहे हैं जैसा कि इरादा किया गया है।

संबंधित लेख