खोजें

AWS EC2 पर LibreChat का स्वचालित तैनाती: एक नवोन्मेषी DevOps समाधान

AWS EC2 पर LibreChat का स्वचालित तैनाती: एक नवोन्मेषी DevOps समाधान

मैं आपको अपना नवीनतम प्रोजेक्ट प्रस्तुत करते हुए खुश हूँ: AWS EC2 पर LibreChat की पूरी तरह स्वचालित तैनाती, एक ओपन-सोर्स समाधान जो GitLab पर उपलब्ध है। यह प्रोजेक्ट मेरे DevOps और क्लाउड इंजीनियरिंग कौशल को दर्शाता है, और यह Terraform के साथ Infrastructure as Code (IaC), एक User-Data Bash स्क्रिप्ट, एक GitLab CI/CD पाइपलाइन, और केंद्रीय प्रबंधन के लिए AWS Systems Manager (SSM) का उपयोग करता है। परिणाम: एक LibreChat इंस्टेंस 6 मिनट से भी कम में चालू, लागत-अनुकूलित, सुरक्षित और आसानी से सुलभ।

यह प्रोजेक्ट सिर्फ तकनीकी तैनाती से आगे है: यह उन्नत स्वचालन की एक दृष्टि है, जिसे विशेषज्ञों और शुरुआती दोनों के लिए बनाया गया है। यहाँ बताया गया है कि मैंने यह समाधान कैसे डिज़ाइन किया।

1. एक अनुकूलित और पुनरुत्पादनीय क्लाउड आर्किटेक्चर

इन्फ्रास्ट्रक्चर Terraform पर आधारित है, Infrastructure as Code के सिद्धांतों का पालन करते हुए ताकि इसे आसानी से पुनरुत्पादित और स्केल किया जा सके। मुख्य घटक हैं:

  • AWS VPC : इन्फ्रास्ट्रक्चर को सुरक्षित करने के लिए एक अलग वर्चुअल नेटवर्क।
  • पब्लिक सबनेट्स : उच्च उपलब्धता सुनिश्चित करने के लिए तीन सबनेट।
  • EC2 इंस्टेंस (t3a.small) : LibreChat होस्ट करता है, और इसमें Spot Instances या On-Demand का विकल्प है।
  • Internet Gateway : HTTPS के माध्यम से सुरक्षित कनेक्शन की अनुमति देता है।
  • AWS SSM : API कीज़ और तैनाती की निगरानी को केंद्रीकृत करता है।

EC2 पर तैनाती एक User-Data Bash स्क्रिप्ट के ज़रिये स्वचालित है जो:

  • निर्भरताएँ स्थापित करता है (Docker, Git, Node.js) और सिस्टम को अपडेट करता है।
  • LibreChat (संस्करण 0.7.7) को क्लोन करता है और .env तथा librechat.yaml फाइलों को कॉन्फ़िगर करता है।
  • SSM से सुरक्षित रूप से API कीज़ प्राप्त करता है।
  • HTTPS के लिए एक self-signed SSL प्रमाणपत्र के साथ Nginx को कॉन्फ़िगर करता है।

यह स्क्रिप्ट, जो Terraform के ज़रिये समाहित है, में त्रुटि प्रबंधन (set -e, trap 'error_handler' ERR) और /var/log/user-data.log में लॉगिंग शामिल है, जिससे एक विश्वसनीय और ट्रैसेबल प्रक्रिया सुनिश्चित होती है।

2. सुरक्षा और API कीज़ का केंद्रीकृत प्रबंधन

सुरक्षा प्राथमिकता है। API कीज़ (OpenAI, Mistral AI, Anthropic, Google) को AWS SSM Parameter Store में स्टोर किया जाता है, डायनामिक रूप से पुनः प्राप्त किया जाता है, और कभी हार्डकोड नहीं किया जाता। उपायों में शामिल हैं:

  • HTTPS अनिवार्य : पोर्ट 80 से 443 पर रीडायरेक्शन के साथ self-signed सर्टिफिकेट।
  • त्रुटि प्रबंधन : समस्या होने पर स्क्रिप्ट रुकती है और SSM में स्थिति अपडेट होती है।
  • AWS Session Manager : SSH के बिना इंस्टेंस तक पहुँच के लिए उपयोग किया जाता है, जिससे सुरक्षा बढ़ती है।

यह दृष्टिकोण सुरक्षित प्रबंधन और रीयल-टाइम निगरानी सुनिश्चित करता है।

3. Spot Instances के साथ लागत- अनुकूलन

लागत कम करने के लिए, मैंने AWS Spot Instances को शामिल किया है, जो अनुपयोगी संसाधनों का लाभ उठाते हैं। एक Terraform वेरिएबल spot_enabled Spot और On-Demand के बीच चयन करने की अनुमति देता है, जिससे प्रोजेक्ट सभी के लिए सुलभ बनता है। एक Python स्क्रिप्ट, check_spot.py, स्वतः ही variables.tf में कीमतों को समायोजित करती है ताकि लगातार अनुकूलन संभव हो।

4. GitLab के साथ एक पूरी CI/CD पाइपलाइन

एक GitLab CI/CD पाइपलाइन (जो gitlab-ci.yml में परिभाषित है) तैनाती को ऑर्केस्ट्रेट करती है:

  • Terraform : इंफ्रास्ट्रक्चर परिवर्तन प्लान और अप्लाई करता है।
  • इंस्टेंस प्रबंधन : SSM के माध्यम से इंस्टेंस को शुरू, रोक और स्थिति की जाँच करता है।
  • API कीज़ : सुरक्षित रूप से कीज़ जोड़ता या हटाता है।
  • पंजीकरण/एक्सेस नियंत्रण : LibreChat के एक्सेस को नियंत्रित करता है।

export.sh स्क्रिप्ट स्थानीय या CI/CD से चलाने वाली कमांड्स को सरल बनाती है, जिससे एक सहज और प्रोफेशनल अनुभव मिलता है।

5. वैश्विक पहुँच के लिए अंतर्राष्ट्रीयकरण

एक वैश्विक दर्शक तक पहुँचने के लिए, README को छह भाषाओं (अंग्रेज़ी, जर्मन, स्पेनिश, जापानी, कोरियाई, चीनी) में अनुवादित किया गया है मेरे AI-आधारित मार्कडाउन अनुवादक के जरिए। इससे प्रोजेक्ट अधिक समावेशी और सभी उपयोगकर्ताओं के लिए उपयुक्त बनता है।

6. सफलतापूर्वक निपटे गए तकनीकी चुनौतियाँ

LibreChat 0.7.6 को अनुकूलित करने के लिए निम्न समायोजन आवश्यक थे:

  • Mistral समर्थन : librechat.yaml को अपडेट कर mistral-large-latest को सक्षम किया गया।
  • Nginx : HTTP/2 के लिए SSL निर्देशों में सुधार।
  • Spot/On-Demand : Terraform के माध्यम से लचीला प्रबंधन।

इन चुनौतियों को कठोर परीक्षण और विस्तृत डॉक्स के साथ हल किया गया।

7. यह प्रोजेक्ट बाकी से अलग क्यों है

यह प्रोजेक्ट निम्नलिखित कारणों से विशिष्ट है:

  • पूर्ण स्वचालन : इंफ्रास्ट्रक्चर से लेकर इंस्टॉलेशन तक सब कुछ स्क्रिप्टेड।
  • अनुकूलन : कम लागत और बेहतर प्रदर्शन।
  • सुरक्षा : केंद्रीकृत प्रबंधन और डिफ़ॉल्ट HTTPS।
  • सुलभता : बहुभाषी डॉक्स और सरल विकल्प।

यह मेरे AWS आर्किटेक्चर, DevOps, क्लाउड और स्क्रिप्टिंग कौशल के साथ-साथ ओपन-सोर्स के प्रति मेरी प्रतिबद्धता को दर्शाता है।

खोजें और भाग लें!

इस प्रोजेक्ट को GitLab पर एक्सप्लोर करें, इसे आज़माएं, और अपने फीडबैक शेयर करें। चाहे आप एक्सपर्ट हों या नौसिखिया, यह प्रोजेक्ट आपके लिए है। योगदान दें और इसे बढ़ाएँ!

संपर्क : संपर्क

मेरे बारे में : मैं Julien LS हूँ, AWS क्लाउड आर्किटेक्चर, DevOps, AI और ऑटोमेशन के प्रति उत्साही। यह प्रोजेक्ट मेरे अन्य कार्यों जैसे BabelFish AI की कड़ी है। मुझे GitLab पर खोजें।

यह दस्तावेज़ fr संस्करण से hi भाषा में gpt-5-mini मॉडल का उपयोग करके अनुवादित किया गया है। अनुवाद प्रक्रिया के बारे में अधिक जानकारी के लिए, देखें https://gitlab.com/jls42/ai-powered-markdown-translator