Ngagunakeun plugins inventaris ti Koléksi Kandungan Ansible di Menara Ansible

Lingkungan IT janten langkung kompleks. Dina kaayaan ieu, penting pisan pikeun sistem otomatisasi IT gaduh inpormasi anu énggal ngeunaan titik-titik anu aya dina jaringan sareng tunduk kana pamrosésan. Dina Red Hat Ansible Automation Platform, masalah ieu direngsekeun ngaliwatan anu disebut inventaris (inventory) - daptar titik anu diurus.

Ngagunakeun plugins inventaris ti Koléksi Kandungan Ansible di Menara Ansible

Dina bentuk pangbasajanna, inventaris mangrupikeun file statik. Ieu idéal nalika anjeun ngamimitian damel sareng Ansible, tapi nalika otomatisasi ningkat, éta henteu cekap.

Di dieu téh naha:

  1. Kumaha anjeun ngamutahirkeun sareng ngajaga daptar lengkep titik-titik anu diawaskeun nalika hal-hal terus robih, nalika beban kerja-sareng salajengna titik-titik anu dijalankeun-datang sareng angkat?
  2. Kumaha mengklasifikasikan komponén infrastruktur IT pikeun milih titik khusus pikeun nerapkeun otomatisasi khusus?

Inventarisasi dinamis nyayogikeun jawaban kana dua patarosan ieu (inventory dinamis) - skrip atanapi plugin anu milarian titik pikeun otomatis, ngarujuk kana sumber bebeneran. Salaku tambahan, inventaris dinamis sacara otomatis ngagolongkeun titik kana grup ku kituna anjeun tiasa milih sistem target anu langkung akurat pikeun ngalakukeun otomatisasi Ansible khusus.

Inventory plugins masihan pamaké Ansible kamampuhan pikeun ngaksés platform éksternal pikeun dinamis neangan titik sasaran sarta ngagunakeun platform ieu salaku sumber bebeneran nalika nyieun hiji inventory. Daptar standar sumber di Ansible kalebet platform awan AWS EC2, Google GCP sareng Microsoft Azure, sareng aya ogé seueur plugins inventaris anu sanés pikeun Ansible.

Ansible Tower hadir kalawan sababaraha inventory plugins, anu dianggo langsung tina kotak sareng, salian ti platform awan anu didaptarkeun di luhur, nyayogikeun integrasi sareng VMware vCenter, Red Hat OpenStack Platform sareng Red Hat Satellite. Pikeun plugins ieu, anjeun ngan perlu nyadiakeun Kapercayaan pikeun nyambung ka platform target, nu satutasna maranéhna bisa dipaké salaku sumber data inventory di Ansible Tower.

Salian plugins standar anu kalebet sareng Menara Ansible, aya plugins inventaris sanés anu dirojong ku komunitas Ansible. Kalayan transisi ka Red Hat Ansible Koléksi Eusi plugins ieu mimiti kaasup kana kumpulan saluyu.

Dina tulisan ieu, urang bakal nyandak conto damel sareng plugin inventaris pikeun ServiceNow, platform manajemén jasa IT anu populér dimana para nasabah sering nyimpen inpormasi ngeunaan sadaya alatna dina CMDB. Salaku tambahan, CMDB tiasa ngandung kontéks anu mangpaat pikeun otomatisasi, sapertos inpormasi ngeunaan pamilik server, tingkat jasa (produksi / non-produksi), apdet dipasang, sareng windows pangropéa. Plugin inventaris Ansible tiasa dianggo sareng ServiceNow CMDB sareng mangrupikeun bagian tina koleksi jasa ayeuna dina portal galaxy.ansible.com.

Repository Git

Pikeun ngagunakeun plugin inventory tina koleksi di Ansible Tower, éta kedah disetél salaku sumber proyék. Dina Ansible Tower, proyék mangrupikeun integrasi sareng sababaraha jinis sistem kontrol versi, sapertos gudang git, anu tiasa dianggo pikeun nyingkronkeun henteu ngan ukur buku play automation, tapi ogé variabel sareng daptar inventaris.

Repositori kami saleresna saderhana pisan:

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

File servicenow.yml ngandung detil pikeun inventaris plugin. Dina kasus urang, urang ngan saukur nangtukeun tabel dina ServiceNow CMDB nu urang hoyong pake. Urang ogé nyetel widang nu bakal ditambahkeun salaku variabel titik, ditambah informasi tangtu dina grup nu urang rék nyieun.

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

Punten dicatet yén ieu henteu netepkeun conto ServiceNow anu bakal kami sambungkeun ku cara naon waé, sareng henteu netepkeun kapercayaan pikeun sambungan. Urang bakal ngonpigurasikeun sadayana ieu engké di Ansible Tower.

Kumpulan file/requirements.yml diperlukeun ku kituna Menara Ansible tiasa ngaunduh koleksi anu diperyogikeun sareng ku kituna kéngingkeun plugin inventaris anu diperyogikeun. Upami teu kitu, urang kedah masang sareng ngajaga koleksi ieu sacara manual dina sadaya titik Menara Ansible kami.

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

- name: servicenow.servicenow

Sakali kami geus kadorong konfigurasi ieu kontrol versi, urang bisa nyieun hiji proyék di Ansible Tower nu rujukan ka Repository pakait. Conto di handap ieu numbu Menara Ansible ka gudang github kami. Nengetan URL SCM: eta ngidinan Anjeun pikeun ngadaptar hiji akun pikeun nyambung ka Repository swasta, kitu ogé nangtukeun cabang husus, tag atawa komitmen pikeun pariksa kaluar.

Ngagunakeun plugins inventaris ti Koléksi Kandungan Ansible di Menara Ansible

Nyieun kredensial pikeun ServiceNow

Sakumaha anu disebatkeun, konfigurasi dina gudang kami henteu ngandung kredensial pikeun nyambung ka ServiceNow sareng henteu netepkeun conto ServiceNow anu kami bakal komunikasi. Ku alatan éta, pikeun nyetél data ieu, urang bakal nyieun Kapercayaan dina Ansible Tower. Numutkeun kana ServiceNow inventory dokuméntasi plugin, aya sababaraha variabel lingkungan anu bakal urang nyetél parameter sambungan, contona, sapertos kieu:

= 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

Dina hal ieu, upami variabel lingkungan SN_USERNAME disetel, plugin inventory bakal ngagunakeun éta salaku akun pikeun nyambung ka ServiceNow.

Urang ogé kedah nyetél variabel SN_INSTANCE sareng SN_PASSWORD.

Nanging, teu aya kapercayaan jinis ieu dina Menara Ansible dimana anjeun tiasa netepkeun data ieu kanggo ServiceNow. Tapi Menara Ansible ngamungkinkeun urang pikeun ngartikeun jenis Kapercayaan custom, Anjeun bisa maca leuwih lengkep tentang ieu dina artikel "Sorotan Fitur Menara Ansible: Kapercayaan Adat".

Dina kasus urang, konfigurasi input pikeun kredensial khusus pikeun ServiceNow sapertos kieu:

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

Kapercayaan ieu bakal kakeunaan salaku variabel lingkungan kalayan nami anu sami. Ieu dijelaskeun dina konfigurasi injector:

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

Janten, kami parantos netepkeun jinis kapercayaan anu urang peryogikeun, ayeuna urang tiasa nambihan akun ServiceNow sareng nyetél conto, nami pangguna sareng kecap konci, sapertos kieu:

Ngagunakeun plugins inventaris ti Koléksi Kandungan Ansible di Menara Ansible

Urang nyieun inventory

Janten, ayeuna urang sadayana siap ngadamel inventaris di Menara Ansible. Hayu urang nelepon ServiceNow:

Ngagunakeun plugins inventaris ti Koléksi Kandungan Ansible di Menara Ansible

Saatos ngadamel inventaris, urang tiasa ngagantelkeun sumber data ka dinya. Di dieu urang tangtukeun proyék kami dijieun saméméhna tur asupkeun jalur ka file inventory YAML kami dina Repository kontrol sumber, bisi urang éta servicenow.yml dina akar proyék. Salaku tambahan, anjeun kedah ngaitkeun akun ServiceNow anjeun.

Ngagunakeun plugins inventaris ti Koléksi Kandungan Ansible di Menara Ansible

Pikeun mariksa kumaha sadayana jalan, cobian nyingkronkeun sareng sumber data ku ngaklik tombol "Singkronkeun sadayana". Upami sadayana dikonpigurasi leres, maka titik-titik kedah diimpor kana inventaris kami:

Ngagunakeun plugins inventaris ti Koléksi Kandungan Ansible di Menara Ansible

Punten dicatet yén grup anu urang peryogikeun ogé parantos didamel.

kacindekan

Dina tulisan ieu, urang ningali kumaha ngagunakeun plugins inventaris tina koleksi di Ansible Tower nganggo plugin ServiceNow salaku conto. Kami ogé ngadaptarkeun kredensial anu aman pikeun nyambung ka conto ServiceNow kami. Ngahubungkeun hiji plugin inventaris ti hiji proyék jalan teu ukur ku pihak-katilu atawa plugins custom, tapi ogé bisa dipaké pikeun ngaropéa operasi sababaraha inventories baku. Hal ieu ngajadikeun Ansible Automation Platform gampang sareng mulus pikeun ngahijikeun sareng alat anu tos aya nalika ngajadikeun otomatis lingkungan IT anu beuki kompleks.

Anjeun tiasa mendakan langkung seueur inpormasi ngeunaan topik anu dibahas dina tulisan ieu, kitu ogé aspék séjén tina ngagunakeun Ansible, Ieuh:

* Red Hat henteu ngajamin yén kode anu aya di dieu leres. Sadaya bahan disayogikeun dina dasar non-endorsement kecuali dinyatakeun sacara jelas.

sumber: www.habr.com

Tambahkeun komentar