جوابدہ ایڈوانسڈ ہوسٹ لسٹ انوینٹری

Jwabd Ay Wans Ws Ls Anwyn Ry



جدید ترین انتظامی تکنیکوں میں سے ایک کا استعمال کرتے ہوئے، 'Ansible'، ہم متعارف کراتے ہیں کہ ہم آلہ پر ہر نگرانی شدہ میزبان کی فہرست کیسے بناتے ہیں۔ جوابدہ میں، ہم نیٹ ورک میں موجود تمام میزبانوں کی فہرست کے لیے 'انوینٹری' پلگ ان کا استعمال کرتے ہیں۔

Ansible میں اپنی تمام میزبان مشینوں کی فہرست کا ہونا بہت ضروری ہے۔ انوینٹری فائل کو منظم رکھنا اتنا ہی ضروری ہے جتنا کہ پلے بکس یا ٹاسکس کو برقرار رکھنا کیونکہ آپ خود کو مسلسل غیر یقینی کی حالت میں پائیں گے اور اپنے آپ سے کئی خدشات کے ساتھ پوچھیں گے کہ کیا آپ کی انوینٹری فائل کا انتظام غلط ہے۔ مذکورہ بالا کے علاوہ، مطلوبہ متغیرات کی انوینٹری فائل کی تعریف پلے بکس میں کام کے مواد کو کم سے کم کرتی ہے اور تشریحات کو تیز کرتی ہے۔ متغیرات کا ایک گروپ ہے جو آپ کی پلے بکس اور جوابی انوینٹری فائلوں دونوں میں ظاہر کیا جا سکتا ہے جو میزبان مشین سے کنیکٹیویٹی کے رویے کو کنیکٹ کرنے اور کنفیگر کرنے کے لیے ذمہ دار ہیں۔







شرائط:

جواب میں میزبان فہرست انوینٹری کمانڈ کو لاگو کرنے سے پہلے درج ذیل تقاضے ہیں:



  • لاگو کرنا شروع کرنے کے لیے، ہمیں سب سے پہلے ایک سافٹ ویئر کی ضرورت ہے جو Ansible کنفیگریشن کے لیے استعمال کیا جائے جو کہ سرور ڈیوائس میں جدید ترین ورژن کے ساتھ انسٹال ہو۔ Ansible کو کنفیگر کیا جانا چاہیے تاکہ ہم اپنے نیٹ ورک میں تمام میزبان مشین کو آسانی سے لسٹ کر سکیں۔
  • Ansible میں کنفیگریشن کا کوئی بھی کام کرنے کے لیے، ہمیں ایک مین کنفیگریشن مینیجر کی ضرورت ہے۔ اس ٹیوٹوریل میں، ہم کنٹرولر سرور کو بطور مین کنٹرولر استعمال کرتے ہیں۔
  • کسی بھی تبدیلی کو لاگو کرنے کے لیے، ہمیں میزبان فہرست انوینٹری ٹیوٹوریل میں میزبان سرورز کو ہدف بنانا ہوگا۔ یہاں، ہمارے پاس دو ٹارگٹ ریموٹ میزبان ہیں۔

مثال: مشین میں ہوسٹ لسٹ انوینٹری

یہ وہ مثال ہے جسے ہم جوابی ٹول میں لاگو کرتے ہیں تاکہ ہوسٹ لسٹ انوینٹری کو چیک یا اس کی وضاحت کی جا سکے۔ اس کے لیے، ہم اس مثال کو مختلف مراحل میں کریں گے تاکہ ہم اس ٹیوٹوریل کے کام اور عمل کو آسانی سے سمجھ سکیں۔ مندرجہ ذیل اقدامات ہیں:



مرحلہ 1: ٹارگٹ ریموٹ ہوسٹ ڈیوائس میں ڈیفالٹ ہوسٹ لسٹ انوینٹری کو چیک کریں۔





پہلے، ہم چیک کرتے ہیں کہ جوابی ٹول کی انوینٹری میں کتنے میزبان ہیں۔ اس کے لیے، ہم 'لسٹ-میزبان' کے ساتھ 'قابل قبول' بیان استعمال کرتے ہیں تاکہ ہم انوینٹری میں پہلے سے طے شدہ ہینڈل نوڈس کو ظاہر کر سکیں۔

[ جڑ @ ماسٹر جوابدہ ] # جوابدہ تمام --list-hosts



پچھلی کمانڈ لکھنے کے بعد آؤٹ پٹ یہ ہے:

جوابدہ ٹرمینل '0 میزبان' دکھاتا ہے جیسا کہ آپ فراہم کردہ جواب میں دیکھ سکتے ہیں کیونکہ ہم نے انوینٹری کا اعلان نہیں کیا تھا۔ ہم اس سے پہلے ٹرمینل میں میزبان کی انوینٹری کی فہرست بنانے کے لیے انوینٹری تیار کرتے ہیں۔

ڈیفالٹ انوینٹری:

جب ہم سافٹ ویئر میں Ansible کو انسٹال کرتے ہیں تو Ansible ایک انوینٹری فائل بناتا ہے جو ٹرمینل میں درج ذیل بیان کو لکھ کر پایا جاتا ہے۔

[ جڑ @ ماسٹر جوابدہ ] # sudo nano /etc/ansible/hosts

جب ہم پچھلا بیان لکھتے ہیں تو نتیجہ پیدا ہوتا ہے۔ پھر، یہ آپ سے پاس ورڈ درج کرنے کو کہتا ہے:

اس سنیپ شاٹ میں، ڈیفالٹ جوابی میزبان فائل غیر گروپ شدہ میزبانوں اور ویب سرورز گروپ میزبانوں کے بارے میں معلومات فراہم کرتی ہے۔ ان میزبانوں میں URLs اور مختلف IP پتے شامل ہیں۔

مرحلہ 2: جوابدہ میں کسٹم انوینٹری کی وضاحت کریں۔

Ansible میں، ہم Ansible ٹرمینل میں متعدد بیانات لکھ کر اپنی انوینٹری کی وضاحت بھی کر سکتے ہیں۔ بیانات اور پلے بکس کو چلاتے وقت انوینٹری کی تعریف کرنا ایک دانشمندانہ فیصلہ ہے جو میزبانوں کے ساتھ جڑتے ہوئے تصادم اور ناکامی کو روکتا ہے۔

اپنے طور پر انوینٹری کی وضاحت شروع کرنے کے لیے، ہم سب سے پہلے درج ذیل بیان لکھتے ہیں تاکہ ہم جوابی میں انوینٹری بنا سکیں اور اس میں میزبانوں کی فہرست بنا سکیں تاکہ ہم جوابی کنٹرولر اور ٹارگٹڈ ریموٹ ہوسٹس کے درمیان رابطہ قائم کر سکیں۔

[ جڑ @ ماسٹر جوابدہ ] # nano hosts.yml

پچھلا بیان لکھنے کے بعد، انوینٹری کو 'hosts.yml' عنوان کے ساتھ ایک نئے جوابی ٹرمینل میں بنایا اور لانچ کیا جاتا ہے۔ اگلا، ہم انوینٹری میں ایک ایک کرکے ہدف بنائے گئے میزبانوں کی فہرست بناتے ہیں۔ پہلا میزبان جس سے ہم جڑتے ہیں وہ ایک لینکس ہوسٹ ہے۔ ہم لینکس ہوسٹ کا آئی پی ایڈریس، جوابدہ صارف، جوابدہ پاس ورڈ، کنکشن کی قسم، اور جوابدہ پورٹ نمبر فراہم کرتے ہیں۔ ہم دوسرے ہدف والے میزبان کے ساتھ بھی ایسا ہی کرتے ہیں۔ دوسرا میزبان جسے ہم استعمال کرتے ہیں وہ ہے جوابی میزبان۔ تمام میزبان جو ہم نے درج کیے ہیں وہ انوینٹری میں جوابی پیرامیٹر کے تحت ہیں۔

جوابدہ:
میزبان:
Linux_Host:
جوابی_میزبان: 192.168.3.229
ansible_user: جڑ
جوابی_پاس ورڈ: tpstps_22
جوابی_کنکشن: ssh
جوابی_پورٹ: 22

جوابدہ_میزبان:
جوابی_میزبان: 192.168.7.10
ansible_user: iris
جوابی_پاس ورڈ: TpsTps_1
جوابی_کنکشن: ssh
جوابی_پورٹ: 22

انوینٹری فائل بنانے اور اس میں میزبان فراہم کرنے کے بعد، اب ہم انوینٹری فائل کو ختم کرتے ہیں اور مرکزی جوابی ٹرمینل پر واپس چلے جاتے ہیں۔

مرحلہ 3: جوابدہ میں پلے بک بنائیں

اگلا، ہم جوابی ٹول میں پلے بک بناتے ہیں تاکہ ہم کاموں کی وضاحت کریں۔ اس کے لیے ہم جوابی مین ٹرمینل میں درج ذیل کمانڈ لکھتے ہیں۔

[ جڑ @ ماسٹر جوابدہ ] # nano ansible_advanced_inventory.yml

اب، پلے بک کو ایک نئے ٹرمینل میں لانچ کیا گیا ہے۔ سب سے پہلے، ہم پلے بک کا عنوان لکھتے ہیں۔ اگلی لائن میں، ہم ہدف میزبان فراہم کرتے ہیں۔ ہم گیدر فیکٹ آپشن استعمال کرتے ہیں جو میزبانوں کی پوری معلومات حاصل کرنے کے لیے استعمال ہوتا ہے۔ لیکن یہاں، ہم 'نہیں' پاس کرتے ہیں جس کا مطلب ہے کہ ہم میزبانوں کا تمام ڈیٹا حاصل نہیں کرنا چاہتے۔

اگلا، ہم پلے بک میں کاموں کی فہرست دیتے ہیں۔ پہلا کام میزبان نام کے ساتھ ہدف میزبان کو ظاہر کرنے کے لیے استعمال کیا جاتا ہے۔ اگلے کام میں، ہم میزبان کے نتائج پرنٹ کرتے ہیں۔

- نام: جوابدہ اعلی درجے کی میزبان انوینٹری
میزبان: جوابدہ [ 0 ]
جمع_حقائق: نہیں
کام:

- نام: حاصل کریں۔ میزبان کا نام منظم نوڈ کے
شیل: 'میزبان کا نام'
رجسٹر: نتیجہ

- نام: پرنٹ میزبان کا نام
ڈیبگ:
پیغام: '{{result.stdout}}'

اب، ہم انوینٹری فائل کے ساتھ ساتھ پلے بک کو بھی چلانا چاہتے ہیں۔ تو، ہم سب سے پہلے پلے بک ختم کرتے ہیں۔ درج ذیل بیان ہے جسے ہم کمانڈ چلانے کے لیے استعمال کرتے ہیں:

[ جڑ @ ماسٹر جوابدہ ] # جوابی-پلے بک جوابی_ایڈوانسڈ_انوینٹری.yml -i host.yml

ذیل میں آؤٹ پٹ ڈسپلے ہے جو ظاہر کرتا ہے کہ کنکشن کامیاب ہے۔ چونکہ ہم نے پلے بک میں Ansible[0] کو پاس کیا ہے، اس لیے آؤٹ پٹ میں پہلا میزبان ظاہر ہوتا ہے:

نتیجہ

ہم نے اس پورے ٹیوٹوریل میں جوابی انوینٹری پر گہرائی سے بحث کی۔ ہم نے جواب میں انوینٹری بنانے کا طریقہ سیکھا اور پھر انہیں ٹارگٹ ریموٹ میزبانوں سے جوڑنا ہے۔ ہم نے ایک مثال بھی نافذ کی ہے تاکہ ہم جوابی انوینٹری کے تصورات کو آسانی سے سمجھ سکیں۔