جوابي ٽاور ۾ جوابي مواد جي مجموعن مان انوینٽري پلگ ان استعمال ڪندي

آئي ٽي ماحول وڌيڪ ۽ وڌيڪ پيچيده ٿي رهيا آهن. انهن حالتن ۾، آئي ٽي آٽوميشن سسٽم لاءِ اهو ضروري آهي ته نيٽ ورڪ ۾ موجود نوڊس جي باري ۾ تازه ترين معلومات ۽ پروسيسنگ جي تابع هجي. Red Hat Ansible Automation پليٽ فارم ۾، اهو مسئلو نام نهاد انوینٽري ذريعي حل ڪيو ويو آهي (شفقت) - منظم ڪيل نوڊس جي فهرست.

جوابي ٽاور ۾ جوابي مواد جي مجموعن مان انوینٽري پلگ ان استعمال ڪندي

ان جي آسان ترين شڪل ۾، انوینٽري هڪ جامد فائل آهي. اهو مثالي آهي جڏهن توهان جواب ڏيڻ سان ڪم ڪرڻ شروع ڪيو، پر جيئن خودڪار وڌندو آهي، اهو ڪافي نه ٿيندو.

۽ هتي ڇو آهي:

  1. جڏهن شيون مسلسل تبديل ٿي رهيون آهن، توهان مانيٽر ٿيل نوڊس جي مڪمل فهرست کي ڪيئن تازه ڪاري ۽ برقرار رکو ٿا، جڏهن ڪم لوڊ- ۽ بعد ۾ نوڊس اهي هلن ٿا- اچن ۽ وڃو؟
  2. آئي ٽي انفراسٽرڪچر جي اجزاء کي ڪيئن درجه بندي ڪرڻ لاءِ خاص طور تي هڪ خاص آٽوميشن لاڳو ڪرڻ لاءِ نوڊس کي چونڊڻ لاءِ؟

Dynamic inventory انهن ٻنهي سوالن جا جواب مهيا ڪري ٿي (متحرڪ فهرست) - هڪ اسڪرپٽ يا پلگ ان جيڪو ڳولهي ٿو نوڊس خودڪار ٿيڻ لاءِ، حقيقت جي ماخذ ڏانهن اشارو ڪندي. اضافي طور تي، متحرڪ انوینٽري خودڪار طريقي سان نوڊس کي گروپن ۾ درجه بندي ڪري ٿو ته جيئن توهان مخصوص جوابي خودڪار طريقي سان انجام ڏيڻ لاء ٽارگيٽ سسٽم کي وڌيڪ صحيح طور تي چونڊيو.

انوینٽري پلگ ان جوابي صارف کي متحرڪ طور تي ٽارگيٽ نوڊس کي ڳولڻ لاءِ ٻاهرين پليٽ فارمن تائين رسائي حاصل ڪرڻ جي صلاحيت ڏيو ۽ انهن پليٽ فارمن کي استعمال ڪريو حقيقت جي هڪ ماخذ طور جڏهن هڪ انوینٽري ٺاهي. Ansible ۾ ذريعن جي معياري لسٽ ۾ ڪلائوڊ پليٽ فارمز AWS EC2، گوگل GCP ۽ Microsoft Azure شامل آهن، ۽ جوابي لاءِ ٻيا ڪيترائي انوینٽري پلگ ان پڻ آهن.

جوابي ٽاور هڪ نمبر سان اچي ٿو inventory plugins، جيڪو دٻي کان ٻاهر ڪم ڪري ٿو ۽ مٿي ڏنل ڪلائوڊ پليٽ فارمن کان علاوه، VMware vCenter، Red Hat OpenStack پليٽ فارم ۽ Red Hat Satellite سان انضمام مهيا ڪري ٿو. انهن پلگ انز لاءِ، توهان کي صرف ٽارگيٽ پليٽ فارم سان ڳنڍڻ لاءِ سندون مهيا ڪرڻ گهرجن، جنهن کان پوءِ اهي جوابي ٽاور ۾ انوینٽري ڊيٽا جي ماخذ طور استعمال ڪري سگھجن ٿيون.

جوابي ٽاور سان شامل معياري پلگ ان کان علاوه، ٻيا انوینٽري پلگ ان آهن جيڪي جوابي ڪميونٽي جي حمايت ڪن ٿيون. جي منتقلي سان Red Hat جوابي مواد جو مجموعو اهي پلگ ان لاڳاپيل مجموعن ۾ شامل ٿيڻ شروع ٿيا.

هن پوسٽ ۾، اسان هڪ مثال کڻنداسين انوینٽري پلگ ان سان ڪم ڪرڻ لاءِ ServiceNow، هڪ مشهور IT سروس مئنيجمينٽ پليٽ فارم جنهن ۾ گراهڪ اڪثر CMDB ۾ انهن جي سڀني ڊوائيسن بابت معلومات محفوظ ڪندا آهن. ان کان علاوه، CMDB ان حوالي سان ٿي سگھي ٿو جيڪو آٽوميشن لاءِ ڪارآمد آھي، جھڙوڪ سرور مالڪن بابت معلومات، خدمت جي سطح (پيداوار/غير پيداوار)، نصب ڪيل تازه ڪاريون، ۽ سار سنڀال ونڊوز. جوابي انوینٽري پلگ ان ServiceNow CMDB سان ڪم ڪري سگهي ٿي ۽ گڏ ڪرڻ جو حصو آهي خدمت وارو پورٽ تي galaxy.ansible.com.

Git مخزن

جوابي ٽاور ۾ گڏ ڪيل انوینٽري پلگ ان کي استعمال ڪرڻ لاء، ان کي منصوبي جي ماخذ طور مقرر ڪيو وڃي. جوابي ٽاور ۾، هڪ پروجيڪٽ ڪجهه قسم جي ورزن ڪنٽرول سسٽم سان گڏ هڪ انضمام آهي، جهڙوڪ گٽ مخزن، جيڪو نه صرف آٽوميشن پلے بڪ، پر متغير ۽ فهرستن جي فهرستن کي هم وقت سازي ڪرڻ لاء استعمال ڪري سگهجي ٿو.

اسان جو مخزن اصل ۾ تمام سادو آهي:

├── collections
│   └── requirements.yml
└── servicenow.yml

servicenow.yml فائل ۾ پلگ ان جي فهرست جا تفصيل شامل آھن. اسان جي حالت ۾، اسان صرف جدول بيان ڪريون ٿا ServiceNow CMDB جنهن کي اسان استعمال ڪرڻ چاهيون ٿا. اسان انهن شعبن کي پڻ سيٽ ڪيو آهي جيڪي شامل ڪيا ويندا نوڊ متغير، ۽ خاص معلومات انهن گروپن تي جيڪي اسان ٺاهڻ چاهيون ٿا.

$ cat servicenow.yml
plugin: servicenow.servicenow.now
table: cmdb_ci_linux_server
fields: [ip_address,fqdn,host_name,sys_class_name,name,os]
keyed_groups:
  - key: sn_sys_class_name | lower
	prefix: ''
	separator: ''
  - key: sn_os | lower
	prefix: ''
	separator: ''

مهرباني ڪري نوٽ ڪريو ته اهو بيان نٿو ڪري ServiceNow مثال جنهن سان اسان ڪنهن به طريقي سان ڳنڍينداسين، ۽ ڪنيڪشن لاءِ ڪا به سند بيان نه ڪندو آهي. اسان اهو سڀ ڪجهه بعد ۾ جوابي ٽاور ۾ ترتيب ڏينداسين.

فائل گڏ ڪرڻ/requirements.yml جي ضرورت آهي ته جوابي ٽاور گهربل مجموعو ڊائون لوڊ ڪري سگهي ٿو ۽ اهڙي طرح گهربل انوینٽري پلگ ان حاصل ڪري سگهي ٿو. ٻي صورت ۾، اسان کي دستي طور تي اسان جي سڀني جوابي ٽاور نوڊس تي هن مجموعي کي نصب ۽ برقرار رکڻو پوندو.

$ cat collections/requirements.yml
---
collections:

- name: servicenow.servicenow

هڪ دفعو اسان هن ترتيب کي ورزن ڪنٽرول ڏانهن ڌڪايو آهي، اسان جوابي ٽاور ۾ هڪ پروجيڪٽ ٺاهي سگهون ٿا جيڪو لاڳاپيل مخزن جو حوالو ڏئي ٿو. هيٺ ڏنل مثال اسان جي گٿب مخزن ڏانهن جوابي ٽاور کي ڳنڍي ٿو. SCM URL تي ڌيان ڏيو: اهو توهان کي اجازت ڏئي ٿو هڪ اڪائونٽ رجسٽر ڪرڻ لاءِ هڪ خانگي مخزن سان ڳنڍڻ لاءِ، انهي سان گڏ هڪ مخصوص شاخ، ٽيگ يا چيڪ ڪرڻ لاءِ واعدو ڪيو.

جوابي ٽاور ۾ جوابي مواد جي مجموعن مان انوینٽري پلگ ان استعمال ڪندي

ServiceNow لاءِ سندون ٺاهڻ

جيئن ذڪر ڪيو ويو آهي، اسان جي مخزن جي ترتيب ۾ ServiceNow سان ڳنڍڻ لاءِ سندون شامل نه آهن ۽ ServiceNow مثال بيان نه ڪندو آهي جنهن سان اسان گفتگو ڪنداسين. تنهن ڪري، هن ڊيٽا کي سيٽ ڪرڻ لاء، اسان جوابي ٽاور ۾ سندون ٺاهي سگهنداسين. جي مطابق ServiceNow انوینٽري پلگ ان دستاويز، اتي ڪيترائي ماحولياتي متغير آھن جن سان اسان ڪنيڪشن جا پيرا ميٽر مقرر ڪنداسين، مثال طور، ھن وانگر:

= username
    	The ServiceNow user account, it should have rights to read cmdb_ci_server (default), or table specified by SN_TABLE

    	set_via:
      	env:
      	- name: SN_USERNAME

انهي صورت ۾، جيڪڏهن SN_USERNAME ماحوليات متغير مقرر ڪيو ويو آهي، انوینٽري پلگ ان ان کي استعمال ڪندي اڪائونٽ جي طور تي ServiceNow سان ڳنڍڻ لاء.

اسان کي SN_INSTANCE ۽ SN_PASSWORD متغيرن کي پڻ سيٽ ڪرڻ جي ضرورت آھي.

تنهن هوندي، جوابي ٽاور ۾ هن قسم جي ڪا به سند نه آهي جتي توهان هن ڊيٽا کي ServiceNow لاء بيان ڪري سگهو ٿا. پر جوابي ٽاور اسان کي وضاحت ڪرڻ جي اجازت ڏئي ٿو ڪسٽم سند جا قسم، توهان هن مضمون ۾ وڌيڪ پڙهي سگهو ٿا "جوابدار ٽاور فيچر اسپاٽ لائٽ: ڪسٽم سندون".

اسان جي صورت ۾، ServiceNow لاءِ ڪسٽم سندن لاءِ ان پٽ جي ٺاھ جوڙ ھن طرح نظر اچي ٿي:

fields:
  - id: SN_USERNAME
	type: string
	label: Username
  - id: SN_PASSWORD
	type: string
	label: Password
	secret: true
  - id: SN_INSTANCE
	type: string
	label: Snow Instance
required:
  - SN_USERNAME
  - SN_PASSWORD
  - SN_INSTANCE

اهي سندون ساڳي نالي سان ماحولياتي متغير طور ظاهر ڪيون وينديون. هن injector جي تشڪيل ۾ بيان ڪيو ويو آهي:

env:
  SN_INSTANCE: '{{ SN_INSTANCE }}'
  SN_PASSWORD: '{{ SN_PASSWORD }}'
  SN_USERNAME: '{{ SN_USERNAME }}'

تنهن ڪري، اسان وضاحت ڪئي آهي سندي قسم جو اسان کي ضرورت آهي، هاڻي اسان هڪ ServiceNow اڪائونٽ شامل ڪري سگهون ٿا ۽ مثال، يوزرنيم ۽ پاسورڊ سيٽ ڪريو، جهڙوڪ:

جوابي ٽاور ۾ جوابي مواد جي مجموعن مان انوینٽري پلگ ان استعمال ڪندي

اسان فهرست ٺاهيندا آهيون

تنهن ڪري، هاڻي اسان سڀ تيار آهيون جوابي ٽاور ۾ هڪ فهرست ٺاهي. اچو ته ان کي سڏين ServiceNow:

جوابي ٽاور ۾ جوابي مواد جي مجموعن مان انوینٽري پلگ ان استعمال ڪندي

انوینٽري ٺاهڻ کان پوء، اسان ان کي ڊيٽا جو ذريعو ڳنڍي سگھون ٿا. هتي اسان اهو بيان ڪريون ٿا جيڪو اسان اڳ ۾ ٺاهيو آهي ۽ اسان جي YAML انوینٽري فائل ڏانهن رستو داخل ڪيو سورس ڪنٽرول ريپوزٽري ۾، اسان جي صورت ۾ اهو آهي servicenow.yml پروجيڪٽ روٽ ۾. اضافي طور تي، توهان کي پنهنجي ServiceNow اڪائونٽ کي ڳنڍڻ جي ضرورت آهي.

جوابي ٽاور ۾ جوابي مواد جي مجموعن مان انوینٽري پلگ ان استعمال ڪندي

چيڪ ڪرڻ لاءِ ته هر شي ڪيئن ڪم ڪري ٿي، اچو ته ڪوشش ڪريون ڊيٽا ماخذ سان هم وقت سازي ڪرڻ جي "سڀني کي هم وقت سازي ڪريو" بٽڻ تي ڪلڪ ڪندي. جيڪڏهن هر شي صحيح ترتيب ڏني وئي آهي، پوء نوڊس کي اسان جي فهرست ۾ درآمد ڪيو وڃي:

جوابي ٽاور ۾ جوابي مواد جي مجموعن مان انوینٽري پلگ ان استعمال ڪندي

مهرباني ڪري نوٽ ڪريو ته اسان کي گهربل گروپ پڻ ٺاهيا ويا آهن.

ٿڪل

هن پوسٽ ۾، اسان ڏٺو ته ڪيئن استعمال ڪجي انوینٽري پلگ ان مجموعن مان جوابي ٽاور ۾ استعمال ڪندي سروس نو پلگ ان کي مثال طور. اسان اسان جي ServiceNow مثال سان ڳنڍڻ لاءِ محفوظ طور تي سندون پڻ رجسٽر ڪيون. پروجيڪٽ مان هڪ انوینٽري پلگ ان کي ڳنڍڻ نه رڳو ٽئين پارٽي يا ڪسٽم پلگ ان سان ڪم ڪري ٿو، پر ڪجهه معياري انونٽريز جي آپريشن کي تبديل ڪرڻ لاءِ پڻ استعمال ڪري سگهجي ٿو. هي جوابي آٽوميشن پليٽ فارم کي آسان بڻائي ٿو ۽ موجوده اوزارن سان ضم ٿيڻ لاءِ بيحد آسان آهي جڏهن پاڻمرادو وڌندڙ پيچيده آئي ٽي ماحول کي خودڪار ڪري ٿو.

توهان هن پوسٽ ۾ بحث ڪيل عنوانن تي وڌيڪ معلومات حاصل ڪري سگهو ٿا، انهي سان گڏ جوابي استعمال ڪرڻ جا ٻيا پهلو، هتي:

*ريڊ هيٽ ڪا به ضمانت نه ٿو ڏئي ته هتي ڏنل ڪوڊ صحيح آهي. سڀئي مواد غير تصديق جي بنياد تي مهيا ڪيا ويا آهن جيستائين ٻي صورت ۾ واضح طور تي بيان نه ڪيو وڃي.

جو ذريعو: www.habr.com

تبصرو شامل ڪريو