Kushandisa inventory plugins kubva kuAnsible Content Collections muAnsible Tower

IT nharaunda dziri kuramba dzichiwedzera kuoma. Mumamiriro ezvinhu aya, zvakakosha kuti IT otomatiki system ive neruzivo rwechizvino-zvino nezve node dziripo munetiweki uye zvichienderana nekugadziriswa. MuRed Hat Ansible Automation Platform, nyaya iyi inogadziriswa kuburikidza neinonzi inventory (Inventory) - rondedzero yemanodhi anotariswa.

Kushandisa inventory plugins kubva kuAnsible Content Collections muAnsible Tower

Muchimiro chayo chakareruka, inventory is static file. Izvi zvakanaka paunotanga kushanda neAnsible, asi sezvo otomatiki inowedzera, inova isina kukwana.

Uye heino chikonzero nei:

  1. Iwe unovandudza sei uye unochengetedza runyoro rwakakwana rweanotariswa node kana zvinhu zvichiramba zvichichinja, kana mitoro yebasa-uyezve nodes yavanomhanyisa pairi-inouya ichienda?
  2. Nzira yekuisa sei zvikamu zveiyo IT zvivakwa kuitira kuti unyatso sarudza node dzekushandisa imwe otomatiki?

Dynamic inventory inopa mhinduro kumibvunzo iyi miviri (dynamic inventory) - script kana plugin inotsvaga nodes kuti iite otomatiki, ichireva kunobva chokwadi. Uye zvakare, iyo ine simba hesitori inoisa otomatiki node mumapoka kuitira kuti iwe ugone kunyatso sarudza inonangwa masisitimu ekuita chaiwo Ansible otomatiki.

Inventory plugins ipa Ansible mushandisi kugona kuwana ekunze mapuratifomu kuti atsvage zvine simba nzvimbo dzakanangwa uye shandisa mapuratifomu aya sesosi yechokwadi paunenge uchigadzira inventory. Iyo yakajairwa runyorwa rwezvinyorwa muAnsible inosanganisira makore mapuratifomu AWS EC2, Google GCP uye Microsoft Azure, uye kune zvakare akawanda akawanda eventory plugins yeAnsible.

Ansible Tower inouya nehuwandu hwe inventory plugins, iyo inoshanda kunze kwebhokisi uye, kuwedzera kumapuratifomu egore akanyorwa pamusoro, inopa kubatanidzwa neVMware vCenter, Red Hat OpenStack Platform uye Red Hat Satellite. Kune aya ma plugins, iwe unongoda kupa humbowo kuti ubatanidze kune yakanangwa chikuva, mushure meiyo inogona kushandiswa sesosi yedata rekutsvaga muAnsible Tower.

Pamusoro peiyo yakajairwa plugins inosanganisirwa neAnsible Shongwe, kune mamwe ezvekutanga plugins anotsigirwa neAnsible nharaunda. Nekuchinja ku Red Hat Ansible Content Collections plugins idzi dzakatanga kuverengerwa mumiunganidzwa inoenderana.

Mune ino positi, isu tichatora muenzaniso wekushanda neiyo inventory plugin yeServiceNow, inozivikanwa IT sevhisi manejimendi chikuva umo vatengi vanowanzochengeta ruzivo nezve ese maturusi avo muCMDB. Pamusoro pezvo, iyo CMDB inogona kuve nemamiriro ezvinhu anobatsira otomatiki, senge ruzivo nezvevaridzi veseva, masevhisi masevhisi (kugadzira / kusagadzira), akaisirwa zvigadziriso, uye kugadzirisa windows. Iyo Ansible inventory plugin inogona kushanda neServiceNow CMDB uye chikamu chekuunganidza servicenow pane portal galaxy.ansible.com.

Git repository

Kuti ushandise inventory plugin kubva muunganidzwa muAnsible Tower, inofanirwa kusetwa senzvimbo yeprojekiti. MuAnsible Shongwe, purojekiti inosanganisa neimwe mhando yeshanduro yekudzora sisitimu, senge git repository, iyo inogona kushandiswa kuwiriranisa kwete chete otomatiki mabhuku ekutamba, asiwo akasiyana uye rondedzero yezvinyorwa.

Yedu repository iri nyore chaizvo:

β”œβ”€β”€ collections
β”‚   └── requirements.yml
└── servicenow.yml

Iyo servicenow.yml faira ine ruzivo rweiyo plugin inventory. Kwatiri, isu tinongotsanangura tafura muServiceNow CMDB yatinoda kushandisa. Isu tinoisawo minda inozowedzerwa semanodhi akasiyana, pamwe nerumwe ruzivo pamapoka atinoda kugadzira.

$ 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: ''

Ndokumbira utarise kuti izvi hazvitsanangure iyo ServiceNow muenzaniso kwatinozobatanidza neimwe nzira, uye haitsanangure chero humbowo hwekubatanidza. Isu tichagadzirisa zvese izvi gare gare muAnsible Tower.

Faira collections/requirements.yml inodiwa kuitira kuti Ansible Tower ikwanise kudhawunirodha inodiwa muunganidzwa uye nekudaro kuwana inodiwa inventory plugin. Zvikasadaro, taizofanira kuisa nekuchengetedza iyi muunganidzwa pane edu ese Ansible Tower node.

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

- name: servicenow.servicenow

Kana tangosundidzira iyi gadziriso kune vhezheni kutonga, tinogona kugadzira purojekiti muAnsible Tower inoreva iyo inoenderana repository. Muenzaniso uri pazasi unobatanidza Ansible Tower kune yedu github repository. Teerera kune iyo SCM URL: inokutendera iwe kunyoresa account kuti ubatanidze kune yakavanzika repository, pamwe nekutsanangura rakananga bazi, tag kana kuzvipira kuti utarise.

Kushandisa inventory plugins kubva kuAnsible Content Collections muAnsible Tower

Kugadzira zvitupa zveServiceNow

Sezvambotaurwa, kumisikidzwa mune yedu repository haina magwaro ekubatanidza kuServiceNow uye haitsanangure ServiceNow muenzaniso watichataurirana nawo. Naizvozvo, kuseta iyi data, isu tichagadzira zvitupa muAnsible Tower. Maererano ne ServiceNow inventory plugin zvinyorwa, kune akati wandei ezvakatipoteredza zvinosiyana zvatichaisa nazvo ma paramita ekubatanidza, semuenzaniso, seizvi:

= 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

Pakadai, kana SN_USERNAME nharaunda inosiyana ikasetwa, inventory plugin inoishandisa seakaundi kuti ubatanidze kuServiceNow.

Isu tinofanirwawo kuseta iyo SN_INSTANCE uye SN_PASSWORD akasiyana.

Nekudaro, hapana humbowo hwemhando iyi muAnsible Tower kwaunogona kutsanangura iyi data yeServiceNow. Asi Ansible Shongwe inotibvumira kutsanangura tsika zvitupa mhando, unogona kuverenga zvakawanda pamusoro peizvi munyaya yacho "Ansible Tower Feature Spotlight: Custom Credentials".

Mune yedu kesi, iyo yekuisa gadziriso yezvitupa zvetsika yeServiceNow inotaridzika seizvi:

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

Aya madhigirii anozoburitswa sekusiyana kwenzvimbo ine zita rimwechete. Izvi zvinotsanangurwa mune injector configuration:

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

Saka, isu takatsanangura mhando yemhando yatinoda, ikozvino tinogona kuwedzera ServiceNow account uye kuseta muenzaniso, zita rekushandisa uye password, seizvi:

Kushandisa inventory plugins kubva kuAnsible Content Collections muAnsible Tower

Isu tinogadzira zvinyorwa

Saka, isu tese takagadzirira kugadzira hesera muAnsible Tower. Ngatidaidze iyo ServiceNow:

Kushandisa inventory plugins kubva kuAnsible Content Collections muAnsible Tower

Mushure mekugadzira iyo hesera, tinogona kubatanidza sosi yedata kwairi. Pano tinotsanangudza purojekiti yatakagadzira kare uye topinda munzira inoenda kune yedu YAML inventory faira mune sosi yekudzora repository, kwatiri isu servicenow.yml mumudzi weprojekiti. Mukuwedzera, iwe unofanirwa kubatanidza yako ServiceNow account.

Kushandisa inventory plugins kubva kuAnsible Content Collections muAnsible Tower

Kuti titarise kuti zvese zvinoshanda sei, ngatiedzei kuwiriranisa nekwakabva data nekudzvanya bhatani rekuti β€œSync all”. Kana zvese zvakagadziriswa nemazvo, saka node dzinofanirwa kuendeswa kune yedu hesera:

Kushandisa inventory plugins kubva kuAnsible Content Collections muAnsible Tower

Ndapota cherechedza kuti mapoka atinoda akagadzirwawo.

mhedziso

Mune ino positi, takatarisa maitiro ekushandisa eventory plugins kubva kuunganidzwa muAnsible Tower uchishandisa ServiceNow plugin semuenzaniso. Isu takanyoreswa zvakachengeteka zvitupa zvekubatanidza kune yedu ServiceNow muenzaniso. Kubatanidza inventory plugin kubva kupurojekiti kunoshanda kwete chete neyechitatu-bato kana tsika plugins, asi inogona zvakare kushandiswa kugadzirisa mashandiro ezvimwe zvakajairwa zvinyorwa. Izvi zvinoita kuti Ansible Automation Platform ive nyore uye isina musono kubatanidza nezvishandiso zviripo kana otomatiki achiwedzera kuomarara IT nharaunda.

Iwe unogona kuwana rumwe ruzivo pamusoro pemisoro inokurukurwa mune ino positi, pamwe nemamwe maficha ekushandisa Ansible, pano:

*Red Hat haiite vimbiso yekuti kodhi irimo ndeyechokwadi. Zvese zvinhu zvinopihwa pane-isina-endorsement kunze kwekunge zvataurwa neimwe nzira.

Source: www.habr.com

Voeg