हमने FreeBSD पर सर्वर के एक छोटे समूह के प्रशासन को किसी तरह सरल बनाने का निर्णय लिया। ऐसा लगता है कि इनमें से एक ही सर्वर के कई सर्वर नहीं हैं, लेकिन फिर भी अक्सर एक ही कार्य को एक ही बार में पूरा करना आवश्यक है।
उन्होंने एक लंबे समय के लिए सोचा, चुना, तुलना की, और फिर भी विकल्प प्रणाली स्थापित करने के लिए विकल्प पर आए। और स्पष्टता के लिए, AWX नाम के साथ एक वेब-थूथन को जकड़ें।
लेकिन यहाँ दुर्भाग्य है, हमारे पास FreeBSD पर सर्वर है, और डेबियन को "काम करने वाला" लिनक्स के रूप में चुना गया है। Ansible AWX आधिकारिक आरएचईएल / फेडोरा और उबंटू के रूप में समर्थन करता है।
जैसा कि हम सभी याद करते हैं, उबंटू ने डेबियन को छोड़ दिया, जिसका अर्थ है कि यह पूर्वज को याद रखना चाहिए। हम यह पता लगाएंगे कि डेबियन पर AWX कैसे स्थापित करें।
प्रारंभिक डेटा: शामिल कॉन्फ़िगरेशन विकल्पों "एसएसएच सर्वर" और "सिस्टम यूटिलिटीज" के साथ नए सिरे से स्थापित डेबियन 7.1 व्हीजी।
AWX इंस्टॉलर एक sh स्क्रिप्ट है (इसके बारे में थोड़ा और नीचे), लेकिन इस स्क्रिप्ट को चलाने वाली एकमात्र चीज़ ansible के लिए playbook चलाती है, जिसका अर्थ है कि आपको इस स्क्रिप्ट को चलाने से पहले ansible को इंस्टॉल करना होगा।
root@awx:~
लेकिन यहां मट्ठा में एक अप्रत्याशितता है यह वहां नहीं है, इसलिए आपको परीक्षण रिपॉजिटरी को कनेक्ट करना होगा। मैं यैंडेक्स दर्पण का उपयोग करता हूं, इसलिए मैंने अपनी /etc/apt/sources.list फ़ाइल में लाइन जोड़ी है)
deb http://mirror.yandex.ru/debian/ testing main contrib non-free
अगला, पैकेज सूचियों को अपडेट करें:
root@awx:~
और हम अपने आप को आवश्यक निर्भरता के साथ खुद को रख देते हैं:
root@awx:~
हम उन सभी चीजों से सहमत हैं, जिनके साथ हम पर आरोप लगाए गए हैं और स्थापना पूर्ण होने की प्रतीक्षा कर रहे हैं। जिसके बाद हम awx डाउनलोड करते हैं, दुर्भाग्य से यह संकुल में नहीं है।
wget http://ansibleworks.com/releases/awx/setup/awx-setup-latest.tar.gz
उद्धरण
root@awx:~
हम देखते हैं कि हमें क्या करना है।
root@awx:~/awx-setup-1.3.1
README.md फ़ाइल को पढ़ने के बाद, हमें पता चलता है कि हमें Group_vars / सभी फ़ाइल में PostgreSQL के लिए प्रमाणीकरण डेटा बदलने की आवश्यकता है, साथ ही एक चेतावनी है कि pg_hba.conf और supervisord.conf को अधिलेखित किया जाएगा। इसलिए, यदि आप एक स्वच्छ प्रणाली पर नहीं डालते हैं, तो आपको उपयुक्त बैकअप बनाना चाहिए।
जबकि सब कुछ स्पष्ट है, अब विचार करें कि इंस्टॉलर जिसके बारे में पहले ही उल्लेख किया गया है, उसमें निम्न शामिल हैं:
root@awx:~/awx-setup-1.3.1
यह सामग्री से देखा जा सकता है कि इस फ़ाइल का मुख्य और एकमात्र कार्य एक ही निर्देशिका से myhosts फ़ाइल (जिसमें केवल 127.0.0.1 होता है) में निर्दिष्ट नोड्स के समूह पर playbook site.yml को चलाना है। अगले -c स्थानीय पैरामीटर लक्ष्य मशीन को कमांड देने के लिए तंत्र को निर्दिष्ट करता है, हमारे मामले में, ansible और लक्ष्य मशीन समान हैं।
इसके अलावा, एक जिज्ञासु से, आप देख सकते हैं कि सूडो का उपयोग करने का सुझाव दिया गया है। लेकिन चूंकि हमारे पास डेबियन की एक साफ स्थापना है, यह सूडो है, उबंटू के विपरीत, यह शामिल नहीं है। इसलिए या तो हम कमांड डिलीट करते हैं, या हम sudo डिलीवर करते हैं।
मैंने sudo कॉल को हटा दिया और अधिक विस्तृत डीबगिंग के लिए दो और अक्षर "v" भी जोड़े।
मेरे संपादन के बाद फ़ाइल का प्रकार:
getopts "e:" EXTRA_ARGS if [ "$OPTARG" != "" ]; then echo "Running with extra args: ${OPTARG}" ANSIBLE_ERROR_ON_UNDEFINED_VARS=True ansible-playbook -i myhosts -c local -vvv -e "$OPTARG" site.yml else ANSIBLE_ERROR_ON_UNDEFINED_VARS=True ansible-playbook -i myhosts -c local -vvv site.yml fi
अब सबसे दिलचस्प फ़ाइल site.yml पर चलते हैं
root@awx:~/awx-setup-1.3.1
डेबियन के लिए विकल्प दिखाई नहीं देता है, लेकिन पहले से ही स्क्रिप्ट के 2 तैयार संस्करण हैं, उन पर RHEL और उबंटू के आधार पर, और जैसा कि आप जानते हैं, उबंटू डेबियन का प्रत्यक्ष वंशज है। हम इसे इंस्टॉलेशन के Ubunt वर्जन के अनुसार बिल्कुल इंस्टॉल कर देंगे, इसके लिए हम इस प्लेबुक में अपने OS का उल्लेख करेंगे:
- hosts: Ubuntu-12*:Ubuntu-13*:Debian*
चूंकि postgresql हम संस्करण 9.3 स्थापित करेंगे, हम इसकी कॉन्फ़िगरेशन फ़ाइलों के लिए मार्ग को थोड़ा ठीक करेंगे
- { role: postgres, pg_hba_location: "/etc/postgresql/9.3/main/pg_hba.conf" }
अन्यथा, हमारे लिए यहां और अधिक दिलचस्प कुछ भी नहीं है।
आइए अलग-अलग भूमिकाओं के माध्यम से चलते हैं, और package_ubuntu पहला होगा
root@awx:~/awx-setup-1.3.1
जिस पहली टेम्पलेट लाइन में हम रुचि रखते हैं: src = awx_repo.j2 dest = / etc / apt / source.list.d / awx_repo.list - रिपॉजिटरी कनेक्शन, फ़ाइल को देखें:
root@awx:~/awx-setup-1.3.1

सब कुछ स्पष्ट लगता है, 2 चर, पहले मामले में group_vars / सभी फ़ाइल में निर्दिष्ट रिपॉजिटरी URL, दूसरे मामले में ऑपरेटिंग सिस्टम कोड नाम, हमारे पास whezzy है, लेकिन चूंकि घरघराहट में रिपॉजिटरी में कुछ भी नहीं है, इसलिए हम खुद को Ubuntu Raring रिंगटोन के रूप में प्रच्छन्न करेंगे।
"मास्किंग" के बाद फ़ाइल निम्न रूप लेती है।
root@awx:~/awx-setup-1.3.1
अगला भाग जाँच करता है कि क्या सटीक पैंगोलिन हमारे साथ है:
- name: install python-pip package for ubuntu 12.04 apt: name=python-pip when: ansible_lsb.codename == "precise" - name: install django 1.5.4 via pip for ubuntu 12.04 pip: name=django version=1.5.4 when: ansible_lsb.codename == "precise" - name: install django via apt for ubuntu 12.10 or later apt: name=python-django when: ansible_lsb.codename != "precise"
चूँकि पुराने संस्करण के Django रिपॉजिटरी में उनका (Precise Pangolin) है, और AWX लेखकों ने नया (1.5.4) वैकल्पिक तरीका रखा है। इस समस्या से हमें कोई खतरा नहीं है, इसलिए कुछ भी नहीं बदला जा सकता है। हम http के लिए हैंडलर फ़ाइल में स्थिति भी बदलते हैं, उबुनू से डेबियन तक:
root@awx:~/awx-setup-1.3.1
उबंटू की अंतिम पंक्ति में हम डेबियन में बदलते हैं।
निम्नलिखित पोस्टग्रेज भूमिका के लिए इसी तरह के कार्यों को करने की आवश्यकता है:
root@awx:~/awx-setup-1.3.1
अपनी उंगलियों को पार करें और चलाएं
root@awx:~/awx-setup-1.3.1
Apache सेटअप इंस्टॉलर फ़ोल्डर में रखता है
root@awx:~/awx-setup-1.3.1
इस फ़ोल्डर की सामग्री मुख्य अपाचे विन्यास में शामिल नहीं है, इसलिए हमें उन्हें स्थानांतरित करने की आवश्यकता है:
mv /etc/apache2/conf.d/awx* /etc/apache2/sites-enabled/
फिर कुछ भी जटिल नहीं है, अपाचे को कॉन्फ़िगर करें, डुप्लिकेट मॉड्यूल कॉल हटाएं और इसका उपयोग करें।