कठपुतली का उपयोग करके विंडोज सर्वर 2012 / डेल पॉवरएडज R420 पर एक सर्वर को तैनात करना

कार्य


आपको निम्नलिखित आवश्यकताओं के साथ एक सर्वर तैनात करना होगा:



जटिलता


यहां मुख्य आवश्यकता यह है कि सब कुछ जितना संभव हो उतना स्वचालित होना चाहिए, मानव भागीदारी को "शुरुआत में 1 मिनट" और 1 मिनट "अंत में" न्यूनतम किया जाता है। इस तरह के स्वचालन का लक्ष्य संभावित रूप से भविष्य में कई नए सर्वरों को "पिकअप" करने की आवश्यकता है, बजाय जल्दी से। जूनियर प्रशासकों और डेवलपर्स के लिए यह समझना मुश्किल नहीं होना चाहिए कि किसकी ज़िम्मेदारी सर्वर की तैनाती की नहीं है।

निर्णय


शुरू करने के लिए, मेरे पास अब एक काम करने वाला सर्वर है जो नेटवर्क से जुड़ा है। मुझे उसका मैक पता और भविष्य का नाम (app8) पता है। इसमें न तो ऑपरेटिंग सिस्टम है और न ही डिस्क को मैन्युअल रूप से सम्मिलित करने की क्षमता। लेकिन क्या छिपाना पाप है - मेरे पास विंडोज के साथ एक डिस्क नहीं है!

निम्नलिखित कार्य करने की आवश्यकता है:

  1. BIOS प्रदर्शन विकल्प सेट करें
  2. RAID-10 सरणी बनाएँ
  3. पीएक्सई से pxeboot.com बूट लोडर पर बूट करें
  4. उपयुक्त boot.wim बूटलोडर का चयन करें और आवश्यक ऑपरेटिंग सिस्टम का चयन करें
  5. तार्किक ड्राइव बनाएँ C: \ और D: \
  6. C: \ ड्राइव पर ऑपरेटिंग सिस्टम स्थापित करें
  7. कठपुतली का उपयोग करके आवश्यक कार्यों के लिए सर्वर को कॉन्फ़िगर करें


इस लेख को पढ़ने से पहले, यह अनुशंसा की जाती है कि आप कठपुतली कक्षाओं को तैयार करने के लिए प्रासंगिक लेख पढ़ें जो इस लेख में उपयोग किए गए हैं:


हमारे सर्वर कॉलोकोलेशन पर स्थित हैं, जो शारीरिक रूप से बहुत दूर है, इसलिए मैं डब्ल्यूडीएस और आईपी केवीएम का उपयोग करूंगा। केवीएम तक पहुंच वेब इंटरफेस के माध्यम से है, रिमोट "स्क्रीन" स्वयं एक जावा-आधारित एप्लिकेशन का उपयोग करके कार्यान्वित किया जाता है। द्वारा और बड़े, आईपी KVM की अब आवश्यकता नहीं है, जैसा कि मेरी सारी तैनाती लगभग स्वचालित रूप से होती है, लेकिन स्क्रीन पर जो कुछ भी हो रहा है उसे देखने की पुरानी आदत बनी हुई है, और लोहे के लिए कारखाना सेटिंग्स हमेशा आवश्यक लोगों के साथ मेल नहीं खाती हैं।

अब तक, सर्वर पर कुछ भी नहीं है:


हम BIOS (F2) में जाते हैं और प्रदर्शन मापदंडों को कॉन्फ़िगर करते हैं। प्रदर्शन और प्रदर्शन प्रति वाट के बीच का अंतर यह है कि जब आप Perormance Per Watt का उपयोग करते हैं, तो सर्वर निष्क्रिय होने के बाद घटकों की बिजली की खपत को स्वचालित रूप से कम कर देता है। हमें इस व्यवहार की आवश्यकता नहीं है, क्योंकि हम कम बिजली की खपत से कुछ भी हासिल नहीं करते हैं, लेकिन हम प्रदर्शन देरी से ठीक इसके विपरीत खो देते हैं (उस समय जब सर्वर समझता है कि यह पूरी शक्ति से काम करने का समय है लेकिन अभी तक कम बिजली की खपत को बंद नहीं किया है)।

प्रदर्शन विकल्प:


डेल वेबसाइट पर सर्वर ऑर्डर करते समय , आप आवश्यक RAID कॉन्फ़िगरेशन के साथ एक सर्वर भी ऑर्डर कर सकते हैं। यह विशेष सर्वर RAID5 के साथ आया है, इसलिए आपको कॉन्फ़िगरेशन बदलना होगा। हम बूट सेटअप पर Ctrl + R दबाकर RAID सेटअप उपयोगिता में जाते हैं और प्रत्येक 1 टीबी के 4 ड्राइव का एक RAID10 सरणी बनाते हैं, जो अंततः डेटा के लिए 2 टीबी "स्पेस" देता है। राइट-बैक और एडेप्टिव पढ़ें आगे - हमें डिफ़ॉल्ट रूप से क्या चाहिए:

RAID नियंत्रक कॉन्फ़िगर करें:


आप कस्टम लोडर (चाहे यह WinPE या लिनक्स इंस्टॉलर हो) का उपयोग करके OS स्थापित करने के चरण में सही RAID बनाने की प्रक्रिया को स्वचालित कर सकते हैं। अगर किसी ने DELL सिस्टम पर ऐसा किया है, तो मुझे खुशी होगी अगर आप अपना अनुभव साझा करेंगे - दुर्भाग्य से इसके लिए कोई समय नहीं है।

डीएचसीपी पर आगे आईपी पता भविष्य के सर्वर पर सेट है, नाम दिया गया है। मैं मैक पते को जानता हूं, क्योंकि उपकरण प्राप्त करते समय, हम इस जानकारी को रिकॉर्ड करते हैं। वैकल्पिक रूप से, आप मैक पते को तब बूट कर सकते हैं जब सर्वर बूट होता है, या डीसी में एनओसी कर्मचारियों से इसे सर्वर पर ही देखने के लिए कहता है।

हम नए सर्वर को आईपी एड्रेस देते हैं:


अगला, 'पता पट्टों' में, हम डीएचसीपी सर्वर का उपयोग करते हैं:


हम सर्वर को रिबूट करते हैं, पीएक्सई बूट मोड दर्ज करते हैं, जिसके बाद आपको डब्ल्यूडीएस में सर्वर की पुष्टि करने की आवश्यकता होती है, इसे एक नाम निर्दिष्ट करें, और आप इस मामले में बूटलोडर (pxeboot.com) भी निर्दिष्ट कर सकते हैं। यह क्रिया आपको सही कॉन्फ़िगरेशन को लागू करने की अनुमति देगी, साथ ही सर्वर को डोमेन में जोड़ेगी, अगर unattend.xml सही तरीके से कॉन्फ़िगर किया गया है।

WDS में सर्वर की पुष्टि करें:


उपयोगकर्ता के नाम और पासवर्ड को डोमेन में कंप्यूटर जोड़ने का अधिकार रखने वाले unattend.xml को निर्दिष्ट करना न भूलें। मुझे ये अधिकार विशेष रूप से इसके लिए बनाए गए सेवा उपयोगकर्ता को सौंप दिए गए हैं। जब तक विंडोज AIK (अपने पिछले अवतारों में) प्रकट नहीं हुआ, तब तक मैंने मैन्युअल रूप से unattend.xml को एडिट किया। अब इसे आधिकारिक Microsoft वेबसाइट से डाउनलोड किया जा सकता है।

एक्सेस की अनुमति देने के बाद, सर्वर उचित बूटलोडर में बूट होता है, जहां बूट छवि का चयन किया जाता है, और फिर सिस्टम की छवि। मैं यहाँ अद्यतन सर्वर 2012 मानक छवि का चयन करता हूँ। आप सर्वर पुष्टिकरण चरण में बूट छवि का चयन कर सकते हैं (उसी स्थान पर जहां आप unattend.xml फ़ाइल का चयन करते हैं)। यह ध्यान दिया जाना चाहिए कि बूट छवि में डिस्क कंट्रोलर और नेटवर्क कार्ड के लिए उपयुक्त ड्राइवर होना चाहिए ताकि सही तरीके से काम किया जा सके (डेल के लिए - सभी ड्राइवर ओपन मैनज डिस्क पर स्थित हैं, उन्हें उसी स्थान पर स्थित एक विशेष उपयोगिता का उपयोग करके अनज़िप किया जाना चाहिए)। अगर किसी ने मुझे कैसे किया में दिलचस्पी है - मुझे बताएं, मुझे इसे साझा करने में खुशी होगी।

यह ध्यान रखना दिलचस्प है कि मेरे पास पूरी तरह से अप्राप्य इंस्टॉलेशन के साथ कुछ कॉन्फ़िगरेशन हैं, लेकिन किसी कारण से मैं उनका उपयोग नहीं करता हूं, मुझे लगता है कि कंपनी का पैमाना विंडोज सर्वर कॉन्फ़िगरेशन को इतना अधिक टाइप करने के लिए समान नहीं है - लगातार कुछ अलग है। (वैसे, लिनक्स के लिए किकस्टार्ट विन्यास भी हैं, जिनका मैं अधिक बार उपयोग करता हूं, क्योंकि ये ज्यादातर क्लस्टर विशिष्ट विन्यास हैं)।

इसलिए, हार्ड ड्राइव कॉन्फ़िगरेशन चुनने का समय है, मैंने ड्राइव सी पर 250 जी और बाकी 1600 जी को डेटा विभाजन पर रखा है। यही है, प्रक्रिया शुरू हो गई है। "आप अपने कंप्यूटर पर विंडोज स्थापित होने के दौरान वापस बैठ सकते हैं" (मुझे याद है कि कैसे अंधेरे में मेरा कमरा विंडोज 98 इंस्टॉलर की नीली रोशनी से जलाया गया था ...)

विंडोज इंस्टॉलेशन:


जब Windows स्थापित किया जा रहा था, मुझे याद आया कि छवि में मेरे पास एक VNC सर्वर है जो Windows PE में नेटवर्क के आरंभ होने के तुरंत बाद शुरू होता है। यह अफ़सोस की बात है कि मैं एक सामान्य syslog क्लाइंट को एक छीन-छीन WindowsPE के लिए नहीं मिल सका - मैं जानना चाहता हूं कि VNC कब शुरू होता है, क्या कोई जान सकता है?

कठपुतली एजेंट के पंजीकरण सहित इस स्तर पर unattend.xml चरण भी किया जाता है।

कठपुतली एजेंट को स्वचालित रूप से पंजीकृत करने के लिए, निम्नलिखित को unattend.xml फ़ाइल में जोड़ें
<component name="Microsoft-Windows-Deployment" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <RunSynchronous> <RunSynchronousCommand wcm:action="add"> <Order>1</Order> <Description>Install Puppet</Description> <Path>cinst puppet -ia "PUPPET_MASTER_SERVER=puppet.mydomain.local"</Path> </RunSynchronousCommand> <RunSynchronousCommand wcm:action="add"> <Order>2</Order> <Description>Request Certificate</Description> <Path>("C:\Program Files (x86)\Puppet Labs\Puppet\bin\puppet_interactive.bat" --test) && echo OK</Path> </RunSynchronousCommand> <RunSynchronousCommand wcm:action="add"> <Order>3</Order> <Description>Stop Puppet Service</Description> <Path>(sc stop puppet) && echo Service Stop OK</Path> </RunSynchronousCommand> <RunSynchronousCommand wcm:action="add"> <Order>4</Order> <Description>Start Puppet Service</Description> <Path>(sc start puppet) && echo Service Start OK</Path> </RunSynchronousCommand> </RunSynchronous> </component> 


इसलिए, विंडोज ने बूट किया - हम उपलब्धता की जांच करते हैं (मैन्युअल रूप से या स्वचालित रूप से), ज़ोन को फिर से लोड करना न भूलें और डीएनएस कैश को साफ़ करें। यदि यह डोमेन नाम से प्रतिक्रिया करता है, तो सर्वर को डोमेन में जोड़ा जाता है (यदि नहीं, तो सर्वर पर जाएं और जांचें कि यह पर्याप्त नहीं है)। ठीक है, आप कठपुतली जादू शुरू कर सकते हैं, क्योंकि कठपुतली एजेंट पहले से ही माइक्रोसॉफ्ट-विंडोज-परिनियोजन / RunSynchronous चरण में स्थापित किया जाना चाहिए।

हम कठपुतली मास्टर सर्वर पर प्रमाण पत्र की पुष्टि करते हैं, जिसके बाद हम TheForeman में ऐसी तस्वीर देखते हैं:


इसका मतलब यह है कि हमारा नया सर्वर "समर्पण" के लिए तैयार है और हम उन कक्षाओं को लागू कर सकते हैं जिनकी हमें ज़रूरत है (संकुल :: opsview, package :: ऑक्टोपस-टेंटकल, संकुल :: logstash :: ग्राहक और अन्य)। हम TheForeman नियंत्रण कक्ष में सर्वर सेटिंग्स में जाते हैं और जो आवश्यक है उसका चयन करते हैं:

हम कठपुतली कक्षाओं का उपयोग करते हैं जिसमें आपकी ज़रूरत की हर चीज़ शामिल होती है:


कठपुतली का पूरा आकर्षण यह है कि यह एक कॉन्फ़िगरेशन और ऑर्केस्ट्रेशन कंट्रोल सिस्टम है, अर्थात यह मायने नहीं रखता है कि सिस्टम अब किस स्थिति में है, यह आपके द्वारा बताए गए राज्य में लाने के लिए सब कुछ करना चाहिए। इसलिए, उदाहरण के लिए, पैकेजों के लिए :: ऑक्टोपस-टेंकल, यह आवश्यक फ्रेमवर्क स्थापित करेगा, पैकेज स्थापित करेगा, और मेरे मामले में यह ऑक्टोपस सर्वर पर "टेंटकल एजेंट" को पंजीकृत करेगा, और यह केवल इस सर्वर के लिए उपयुक्त समूहों / परियोजनाओं को असाइन करने के लिए बना रहेगा ( कि हम तैनात करेंगे) - यह सब आपके द्वारा कॉन्फ़िगर किया गया है, लेकिन उस समय के बारे में अधिक।

यदि समय की अनुमति है - मैं पहली बार मैन्युअल रूप से सीधे सर्वर पर कठपुतली एजेंट को चलाना पसंद करता हूं ताकि अगले कर्मचारी की प्रतीक्षा न करें:

 puppet agent --test --debug 


कठपुतली रन पूरा होने के बाद:


वह सब है!

निष्कर्ष


जब मुझे याद आता है कि सर्वर को मैन्युअल रूप से परिनियोजित करने की प्रक्रिया किस तरह से गुजरती है, तो कांपना मुझे लगता है। ये सीडी / डीवीडी डिस्क हैं, यह 2 दिन है (यदि धीरे-धीरे, पृष्ठभूमि में) या 1 दिन (यदि आप ध्यान केंद्रित करते हैं और कुछ नहीं करते हैं) - तो यह कितना समय लगा! हर बार मुझे सिस्टम को वर्तमान स्थिति में अपडेट करना पड़ा। आखिरकार, यह "इंस्टॉल, रिबूट, इंस्टॉल, रिबूट" जैसे काम करता है ... और अगर यह 10 या 20 या 100 सर्वर है? सामान्य रूप से छोटी सेटिंग्स और ट्वीक के बारे में मैं चुप हूं।

मुझे पता है कि यह MS SCCM, सॉफ़्टवेयर इंस्टॉलेशन - समूह नीति के माध्यम से आसान और अधिक सुविधाजनक बनाया गया है, और शायद मैंने ऐसा तब किया होता अगर यह मिश्रित वातावरण के लिए नहीं होता जहाँ Windows एक एकल IT विभाग की देखरेख में Linux के साथ शांति से रहता। कठपुतली, मेरी राय में, एक सार्वभौमिक उपकरण है। कठपुतली मेरे जीवन को बचाती है, और मैं अपने डेवलपर्स को इसका उपयोग करना भी सिखाता हूं (और वे सी # लोग हैं)। फायदे के बीच यह है कि कठपुतली विन्यास प्रकट कार्यक्रम कोड है जिसे एक संस्करण नियंत्रण प्रणाली (उदाहरण के लिए गिट) में संग्रहीत किया जा सकता है, और वितरित करना भी आसान है! (IaaC चर्चा का स्वागत है)। मुझे ऐसे विकल्पों के बारे में नहीं पता है जो सभी प्रकार की AXIS नस्लों को विषम वातावरण से बुनियादी ढांचे के एक एकल विवरण में जोड़ सकते हैं, और आप? इसके अलावा, मुझे Microsoft से एक सुविधाजनक प्रणाली नहीं पता है जिसे सोर्स कंट्रोल के तहत संग्रहीत किया जा सकता है और आसानी से वितरित किया जा सकता है। अगर किसी को पता है कि क्या - मुझे टिप्पणियों में सुनकर खुशी होगी।
मैं सिम के लिए अपनी छुट्टी ले रहा हूं, यह अन्य चीजें करने का समय है!

अद्यतन: सभी नाबालिगों - सभी को शून्य करने या न करने का एक बड़ा अनुरोध।

Source: https://habr.com/ru/post/In204322/


All Articles