आर्किटेक्चर
एडमिन में कहाँ: यह एक संदर्भ पेज है। यहाँ वर्णित सेवाएँ
sudo nexcmp statusके साथ दिखाई देती हैं; कनेक्शन Infrastructure और System › Settings के तहत कॉन्फ़िगर किए जाते हैं।
चित्र
शब्दों में वही आरेख
- कोई ग्राहक या व्यवस्थापक
https://cloud.example.com(पोर्टल),https://cloud.example.com/admin(एडमिन कंसोल) खोलता है या REST API को कॉल करता है। DNS नाम को आपके सर्वर या Cloudflare पर इंगित करता है, जो इस पर प्रॉक्सी करता है। - nginx पैनल सर्वर पर पोर्ट 80 (रीडायरेक्ट और प्रमाणपत्र नवीनीकरण) और 443 (TLS) पर सुनता है और प्रत्येक अनुरोध को
127.0.0.1:3000पर पैनल को अग्रेषित करता है। सेटअप विज़ार्ड के बाद पैनल केवल लूपबैक इंटरफ़ेस पर सुनता है। - पैनल (
nexcmp.service) ग्राहक पोर्टल, एडमिन कंसोल, REST API, सेटअप विज़ार्ड और नोड्स को आवश्यक डाउनलोड (एजेंट बाइनरी, इंस्टॉल स्क्रिप्ट,cmpकमांड-लाइन टूल) प्रदान करता है। यह दिन में एक बार आपके लाइसेंस की भी जाँच करता है। - वर्कर (
nexcmp-vmd.service)127.0.0.1:8112पर सुनता है, जो केवल स्थानीय है। यह वह सब कुछ चलाता है जिसमें समय लगता है या जो शेड्यूल पर होना चाहिए: प्रावधान कार्य, CloudStack और Proxmox VE के साथ सिंक्रनाइज़ेशन, बिलिंग टिक्स, बैंडविड्थ संग्रह और ब्राउज़र कंसोल कनेक्शन। - इन दो प्रक्रियाओं से NexCMP बाहर की ओर कॉल करता है: CloudStack (प्रबंधन API), Proxmox VE (पोर्ट 8006 पर API, प्रमाणपत्र पिन किया गया), Dell iDRAC (प्रबंधन नेटवर्क पर HTTPS पर Redfish), Ceph RGW (HTTPS पर S3 और Admin Ops), भुगतान गेटवे (Stripe, PayPal, USDT और बैंक-ट्रांसफर प्रदाता, जो आपके वेबहुक यूआरएल को भी कॉल करते हैं), आपका SMTP सर्वर, एक OpenAI-संगत API वाला AI प्रदाता, और वैकल्पिक रूप से Telegram।
- VPN नोड्स
cmp-agentचलाते हैं। प्रत्येक नोड एक बार वन-टाइम टोकन के साथ नामांकित होता है, फिर पैनल को HTTPS पर हर 5 सेकंड में एक हार्टबीट भेजता है और उत्तर में अपना कॉन्फ़िगरेशन प्राप्त करता है। IPv6 प्रॉक्सी नोड्स SSH पर पैनल द्वारा एक बार स्थापित किए जाते हैं, फिर पैनल से अपना कॉन्फ़िगरेशन खींचते हैं। - स्टेट SQLite डेटाबेस और
/var/lib/nexcmpमें कुछ फ़ाइलों में रहता है। CloudStack, Proxmox, S3, iDRAC और AI प्रदाता के लिए क्रेडेंशियल उसी क्षेत्र में मास्टर कुंजी फ़ाइलों के साथ एन्क्रिप्टेड (AES-256-GCM) संग्रहीत किए जाते हैं।
सेवाएं और प्रक्रियाएं
| प्रक्रिया | इस रूप में चलता है | इस पर सुनता है | करता है |
|---|---|---|---|
nginx | root (workers www-data) | 80, 443 | TLS, रीडायरेक्ट, पैनल पर प्रॉक्सी |
nexcmp | nexcmp | 3000 (पहले इंस्टॉल के दौरान सभी इंटरफ़ेस, फिर 127.0.0.1) | पोर्टल, एडमिन कंसोल, API, विज़ार्ड, डाउनलोड |
nexcmp-vmd | nexcmp | 127.0.0.1:8112 | जॉब्स, सिंक, बिलिंग, बैंडविथ, कंसोल |
nexcmp-update | root | कोई नहीं | एडमिन कंसोल के अनुरोधों पर अपडेट लागू करता है (एक पाथ यूनिट अनुरोध की प्रतीक्षा करती है) |
cmp-agent (VPN नोड्स पर) | root | VPN लिसनर पोर्ट्स | पैनल को रिपोर्ट करता है, पब्लिक IPv4 पर प्रॉक्सी लिसनर चलाता है |
पैनल और वर्कर किसी भी Linux क्षमताओं के बिना एक साधारण यूजर के रूप में चलते हैं, जिसमें /var/lib/nexcmp और /var/log/nexcmp को छोड़कर रीड-ओनली फ़ाइल सिस्टम होता है। इन्हें root, Docker, अलग डेटाबेस और Redis की आवश्यकता नहीं होती है।
फ़ाइलें और वे कहाँ स्थित हैं
| पाथ | सामग्री |
|---|---|
/opt/nexcmp | प्रोग्राम: रिलीज़, bin/, टेम्पलेट बिल्डर जैसी साझा फ़ाइलें। root के स्वामित्व में, सर्विस के लिए रीड-ओनली। |
/etc/nexcmp | इंस्टॉलर सेटिंग्स (install.conf), पोर्ट और बाइंड (nexcmp.env)। |
/var/lib/nexcmp | SQLite डेटाबेस, अपलोड की गई ब्रांडिंग, एजेंट डाउनलोड फ़ोल्डर, लाइसेंस स्थिति, मास्टर कुंजी फ़ाइलें। इसका बैकअप लें। |
/var/log/nexcmp | लॉग्स। |
Backup and restore देखें। मास्टर कुंजी फ़ाइलों का बैकअप डेटाबेस के साथ लिया जाना चाहिए, अन्यथा पुनर्स्थापित डेटाबेस अपनी संग्रहीत क्रेडेंशियल्स को डिक्रिप्ट नहीं कर सकता है।
कौन किससे कनेक्ट होता है
| दिशा | पाथ | पोर्ट | नोट्स |
|---|---|---|---|
| ग्राहक से पैनल | इंटरनेट, DNS, वैकल्पिक Cloudflare, nginx | 443 | DNS and Cloudflare देखें। |
| पैनल से लाइसेंस सर्वर | nexcmp.com | 443 | सक्रियण, दैनिक जाँच और अपडेट। |
| पैनल से CloudStack | API | 443 या 8080 | VM कंसोल, बैंडविथ और Kubernetes सुविधाएँ एक ही एंडपॉइंट का उपयोग करती हैं। |
| पैनल से Proxmox VE | API और WebSocket कंसोल | 8006 | SHA-256 द्वारा पिन किया गया सर्टिफिकेट। |
| पैनल से iDRAC | Redfish | 443, VNC 5901 | केवल प्रबंधन नेटवर्क। |
| iDRAC से ISO सर्वर | HTTP | आपका पोर्ट | iDRAC ISO खींचता है। |
| पैनल से Ceph RGW | Admin Ops | 443 | |
| पैनल से SMTP | SMTP | 587 या 465 | |
| पैनल से AI प्रदाता | HTTPS | 443 | केवल जब AI मॉड्यूल चालू हो। |
| पेमेंट गेटवे से पैनल | वेबहुक | 443 | Stripe और PayPal कॉलबैक करते हैं। |
| नोड से पैनल | cmp-agent | 443 | एनरोल, हार्टबीट, अपग्रेड। |
| पैनल से IPv6 प्रॉक्सी नोड | SSH | आपके द्वारा दर्ज किया जाने वाला पोर्ट | केवल एक बार इंस्टॉल। |
यह क्यों महत्वपूर्ण है
- जो पैनल पहुंच में है, उस पर हमला किया जा सकता है। सेटअप विज़ार्ड पूरा होने के बाद पोर्ट 3000 को बंद रखें। टीएलएस (TLS) सक्रिय होने पर इंस्टॉलर पहले ही ऐसा कर देता है।
- वर्कर चलना चाहिए ताकि कुछ भी बनाया या बिल किया जा सके।
sudo nexcmp statusदोनों सेवाओं और हेल्थ चेक को दिखाता है। - आउटबाउंड फ़ायरवॉल की योजना बनाएं। यदि पैनल सर्वर का आउटबाउंड ट्रैफ़िक फ़िल्टर किया जाता है, तो ऊपर दी गई तालिका में गंतव्यों की अनुमति दें।
- प्रबंधन ट्रैफ़िक सार्वजनिक पथ से दूर रहता है। CloudStack, Proxmox VE, iDRAC और Ceph के कनेक्शन सीधे पैनल सर्वर से उन सिस्टम पर जाते हैं, कभी भी nginx या Cloudflare के माध्यम से नहीं।