IT áááºáááºážáá»ááºáá»á¬ážááẠááá¯áááŸá¯ááºááœá±ážáá¬áááºá á€á¡ááŒá±á¡áá±áá»á¬ážááœááºá á¡áá¯ááºáá®á¡ááá¯á¡áá»á±á¬ááºá
áá
áºá
áá
áºááœáẠááœááºáááºááœááºááŸááá±áá±á¬ node áá»á¬ážá¡ááŒá±á¬ááºáž áá±á¬ááºáá¯á¶ážáá±á«áºááááºážá¡áá»ááºá¡áááºáá»á¬ážáááŸááááºááŸáá·áº á
á®áá¶áá±á¬ááºááœááºáá±ážáááá·áºá¡áá¬áá»á¬ážááŸááá±ááẠá¡áá±ážááŒá®ážáá«áááºá Red Hat Ansible Automation Platform ááœááºá á€ááŒá¿áá¬ááᯠá
á¬áááºážá¡ááºážáá¯áá±á«áºáá±á¬á¡á¬ážááŒáá·áº ááŒá±ááŸááºážááẠ(
áááºážáá¡ááá¯ážááŸááºážáá¯á¶ážáá¯á¶á
á¶ááœááºá á
á¬áááºážááá¬ážááẠáááºááŒáááºáá±á¬ááá¯ááºáá
áºáá¯ááŒá
áºáááºá Ansible ááŸáá·áº á
áááºáá¯ááºááá¯ááºáá±á¬á¡áá« áááºážááẠá
á¶ááŒáá±á¬ááºážááŒá
áºáá±á¬áºáááºáž á¡ááá¯á¡áá»á±á¬ááºá
áá
Ạááá¯ážáá¬áááºááŸáá·áºá¡áá»áŸ áááºážááẠááá¯á¶áá±á¬ááºáá±á¬á·áá«á
á€ááœááºá¡áááºááŒá±á¬ááºá·ááœááºá·:
- á¡áá¬áá»á¬ážá¡áááºáááŒááºááŒá±á¬ááºážáá²áá±áá»áááºá á¡áá¯ááºáá»áááºáá»á¬ážâááŸáá·áº áá±á¬ááºáááºááœá²ááœáẠáááºážááá¯á·áááºáááºáá±áá±á¬ nodeáá»á¬ážâáá¬áááœá¬ážááá·áºá¡áá«ááœáẠá á±á¬áá·áºááŒáá·áºá á áºáá±ážáá¬ážáá±á¬ node áá»á¬ážáá á¬áááºážá¡ááŒáá·áºá¡á á¯á¶ááᯠáááºáááºááá¯á·ááœááºážáá¶ááááºážááááºážáá¬ážáááºáááºážá
- áá®ážááŒá¬ážá¡ááá¯á¡áá»á±á¬ááºá áá áºá¡áá¯á¶ážááŒá¯áááºá¡ááœáẠáá®ážááá·áº node áá»á¬ážááá¯ááœá±ážáá»ááºáááºá¡ááœáẠIT á¡ááŒá±áá¶á¡áá±á¬ááºá¡á¡á¯á¶á á¡á áááºá¡ááá¯ááºážáá»á¬ážááᯠáááºááá¯á·ááœá²ááŒá¬ážáááºááŸááºááááºáááºážá
Dynamic Inventory ááẠá€áá±ážááœááºážááŸá
áºáá¯á
áá¯á¶ážá¡ááœáẠá¡ááŒá±áá»á¬ážáá±ážááẠ(
Ansible Tower á¡áá»á¬ážá¡ááŒá¬ážááŸáá·áº áá¬áá«áááºá
Ansible Tower áá«áááºááá·áº á
á¶ááááºá¡ááºáá»á¬ážá¡ááŒáẠAnsible á¡ááá¯ááºážá¡ááá¯ááºážá០áá¶á·ááá¯ážáá±ážááá·áº á¡ááŒá¬ážá
á¬áááºážááááºá¡ááºáá»á¬áž ááŸááá±ážáááºá á¡ááœááºáá°ážááŒá±á¬ááºážáá±ážááŸáá·áºá¡áá°
á€ááá¯á·á
áºááœááºá áá¯á¶ážá
áœá²áá°áá»á¬ážááẠCMDB ááœáẠáááŒá¬ááááá¯áááᯠáááºážááá¯á·á á
ááºáá
á¹á
ááºážáá»á¬ážá¡á¬ážáá¯á¶ážááŸáá·áºáááºáááºááá·áº á¡áá»ááºá¡áááºáá»á¬ážááᯠááááºážáááºážáá±á·ááŸáááá·áº áá°ááŒáá¯ááºáá»á¬ážáá±á¬ IT áááºáá±á¬ááºááŸá¯á
á®áá¶ááá·áºááœá²ááŸá¯ááááºáá±á¬ááºážááŒá
áºáá±á¬ ServiceNow á¡ááœáẠá
á¬áááºážááááºá¡ááºááŸáá·áº áá¯ááºáá±á¬ááºááŒááºážá ááá°áá¬ááᯠáá°áá«áááºá ááá¯á·á¡ááŒááºá CMDB ááœáẠáá¬áá¬ááá¯ááºááŸááºáá»á¬ážá¡ááŒá±á¬ááºáž á¡áá»ááºá¡áááºáá»á¬ážá áááºáá±á¬ááºááŸá¯á¡ááá·áºáá»á¬áž (áá¯ááºáá¯ááºááŸá¯/áá¯ááºáá¯ááºááŸá¯ááá¯ááºáá±á¬)á ááá·áºááœááºážáá¬ážáá±á¬ ááœááºážáá¶ááŸá¯áá»á¬ážááŸáá·áº ááŒá¯ááŒááºááááºážááááºážááŸá¯ windows áá»á¬ážáá²á·ááá¯á·áá±á¬ á¡ááá¯á¡áá»á±á¬ááºáá¯ááºáá±á¬ááºááŸá¯á¡ááœáẠá¡áá¯á¶ážáááºááá·áº á¡ááŒá±á¬ááºážá¡áá¬áá»á¬ážáá«ááŸááááºá Ansible inventory plugin ááẠServiceNow CMDB ááŸáá·áº á¡áá¯ááºáá¯ááºááá¯ááºááŒá®áž á
á¯á
ááºážááŸá¯á áá
áºá
áááºáá
áºááá¯ááºážááŒá
áºáááºá
Git repository
Ansible Tower ááŸá á á¯á ááºážááŸá¯áá áºáá¯á០á á¬áááºážááááºá¡ááºááᯠá¡áá¯á¶ážááŒá¯áááºá áááºážááᯠááá±á¬áá»ááºá¡áááºážá¡ááŒá áºá¡ááŒá ẠáááºááŸááºááá«áááºá Ansible Tower ááœááºá ááá±á¬áá»ááºáá áºáá¯ááẠgit repository áá²á·ááá¯á· áá¬ážááŸááºážááááºážáá»á¯ááºááŸá¯á áá áºáá»áá¯ážááŸáá·áº áá±á«ááºážá ááºážáá¬ážááá·áºá¡áá¬ááŒá áºááŒá®áž á¡ááá¯á¡áá»á±á¬ááºá áá áºááá¯ááºáᬠááá±ážá á¬á¡á¯ááºáá»á¬ážáá¬áá ááááºážááŸááºáá»á¬ážááŸáá·áº á á¬áááºážáá»á¬ážááá¯áá« áááºáá°ááŒá¯ááá¯ááºáááºá
áá»áœááºá¯ááºááá¯á·á repository ááẠá¡ááŸááºááááºááœáẠá¡ááœááºááá¯ážááŸááºážáá«áááºá
âââ collections
â âââ requirements.yml
âââ servicenow.yml
servicenow.yml ááá¯ááºááœáẠááááºá¡ááºá á¬áááºážá¡ááœáẠá¡áá±ážá áááºáá»á¬áž áá«ááŸááááºá áá»áœááºá¯ááºááá¯á·áááá á¹á ááœááºá áá»áœááºá¯ááºááá¯á·á¡áá¯á¶ážááŒá¯ááá¯áá±á¬ ServiceNow CMDB ááœááºááá¬ážááᯠááá¯ážááá¯ážááŸááºážááŸááºážáááºááŸááºáá«á áá±á«ááºážááá·áºááá·áº ááœááºáááºáá»á¬ážááᯠnode variables áá»á¬ážá¡ááŒáẠáá»áœááºá¯ááºááá¯á·áááºáá®ážááá¯áá±á¬ á¡á¯ááºá á¯áá»á¬ážááŸá á¡áá»áá¯á·áá±á¬ á¡áá»ááºá¡áááºáá»á¬ážááá¯áááºáž áááºááŸááºáá±ážáá«áááºá
$ 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 á¥ááá¬ááᯠááááºááŸááºáá¬ážáá² áá»áááºáááºááŸá¯á¡ááœáẠáááºááá·áºá¡áá±á¬ááºá¡áá¬ážáá»á¬ážááá¯áá»áŸ ááááºááŸááºáá¬ážááŒá±á¬ááºáž áá»á±ážáá°ážááŒá¯á áááááŒá¯áá«á á€á¡áá¬á¡á¬ážáá¯á¶ážááᯠáá±á¬ááºááá¯ááºážááœáẠAnsible Tower ááœáẠááŒááºáááºáááºááŸááºáá«áááºá
$ cat collections/requirements.yml
---
collections:
- name: servicenow.servicenow
áá»áœááºá¯ááºááá¯á·ááẠá€ááœá²á·á ááºážáá¯á¶ááᯠáá¬ážááŸááºážááááºážáá»á¯ááºááŸá¯ááá¯á· ááœááºážáá»ááŒá®ážáááºááŸáá·áº áááºááá¯ááºáᬠááá¯ááŸá±á¬ááºááŸá¯ááᯠááá¯ážáá¬ážááá·áº Ansible Tower ááœáẠááá±á¬áá»ááºáá áºáá¯ááᯠáááºáá®ážááá¯ááºáááºá á¡á±á¬ááºáá«á¥ááá¬ááẠAnsible Tower ááᯠáá»áœááºá¯ááºááá¯á·á github repository ááá¯á· áá»áááºáááºáá¬ážáááºá SCM URL ááᯠááá¯ááŒá¯áá«- áááºážááẠááá·áºá¡á¬áž áá®ážááá·áºááá¯ááŸá±á¬ááºáá¬ááá¯á· áá»áááºáááºááẠá¡áá±á¬áá·áºáá áºáá¯á¡á¬áž á á¬áááºážááœááºážááá¯ááºááá·áºá¡ááŒáẠáá®ážááŒá¬ážáá¬áááœá²áá áºáá¯á¡á¬áž áááºááŸááºááŒááºážá áááºáẠááá¯á·ááá¯áẠáá¯ááºáá°ááẠáááááŒá¯ááŒááºážá
ServiceNow á¡ááœáẠá¡áá±á¬ááºá¡áá¬ážáá»á¬áž áááºáá®ážááŒááºážá
áá±á¬áºááŒáá¬ážááá·áºá¡ááá¯ááºážá áá»áœááºá¯ááºááá¯á·á repository á¡ááœááºážááŸá configuration ááœáẠServiceNow ááá¯á·áá»áááºáááºááẠá¡áá±á¬ááºá¡áá¬ážáá»á¬ážááá«áááºááá·áºá¡ááŒáẠáá»áœááºá¯ááºááá¯á·áááºááœááºááá·áº ServiceNow á¥ááá¬ááᯠáááºááŸááºááá¬ážáá«á ááá¯á·ááŒá±á¬áá·áº á€áá±áá¬ááᯠáááºááŸááºáááºá¡ááœáẠAnsible Tower ááœáẠá¡áá±á¬ááºá¡áá¬ážáá»á¬áž áááºáá®ážáá«áááºá á¡á
= 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 variable áá»á¬ážááá¯áááºáž áááºááŸááºááẠááá¯á¡ááºáá«áááºá
ááá¯á·áá±á¬áºá ServiceNow á¡ááœáẠá€áá±áá¬ááᯠáááºáááºááŸááºááá¯ááºááá·áº Ansible Tower ááœáẠá€á¡áá»áá¯ážá¡á
á¬ážáá¡áá±á¬ááºá¡áá¬ážáá»á¬áž áááŸááá«á ááá¯á·áá±á¬áº Ansible Tower ááẠáá»áœááºá¯ááºááá¯á·á¡á¬áž áááºááŸááºááẠááœáá·áºááŒá¯áá¬ážáááºá
áá»áœááºá¯ááºááá¯á·áááá á¹á ááœááºá 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 configuration ááœááºáá±á¬áºááŒáá¬ážáááº-
env:
SN_INSTANCE: '{{ SN_INSTANCE }}'
SN_PASSWORD: '{{ SN_PASSWORD }}'
SN_USERNAME: '{{ SN_USERNAME }}'
ááá¯á·ááŒá±á¬áá·áºá áá»áœááºá¯ááºááá¯á· ááá¯á¡ááºáá±á¬ á¡áá±á¬ááºá¡áá¬áž á¡áá»áá¯ážá¡á á¬ážááᯠáááºááŸááºááá¯ááºáááºá ááᯠáá»áœááºá¯ááºááá¯á·ááẠServiceNow á¡áá±á¬áá·áºááᯠáá±á«ááºážááá·áºááá¯ááºááŒá®áž á¥ááá¬á á¡áá¯á¶ážááŒá¯áá°á¡áááºááŸáá·áº á áá¬ážááŸááºááᯠá€áá²á·ááá¯á· áááºááŸááºááá¯ááºáááº-
áá»áœááºá¯ááºááá¯á·ááẠá á¬áááºážááᯠáááºáá®ážáá«áááºá
ááá¯á·ááŒá±á¬áá·áº ááᯠáá»áœááºá¯ááºááá¯á·á¡á¬ážáá¯á¶áž Ansible Tower ááœáẠá á¬áááºážáá áºáá¯áááºáá®ážááẠá¡áááºááá·áºááŒá áºáá±áá«ááŒá®á á¡á²áá«ááᯠServiceNow ááá¯á· áá±á«áºáá¡á±á¬ááºá
á á¬áááºážááᯠáááºáá®ážááŒá®ážáá±á¬ááºá áá»áœááºá¯ááºááá¯á·ááẠáááºážááœáẠáá±áá¬áááºážááŒá áºáá áºáá¯ááᯠáá°ážááœá²ááá¯ááºáááºá á€ááœááºáá»áœááºá¯ááºááá¯á·áááºá¡á á±á¬ááá¯ááºážááááºáá®ážáá¬ážáá±á¬ááá±á¬áá»ááºááá¯áááºááŸááºááŒá®ážá¡áááºážá¡ááŒá áºááááºážáá»á¯ááºááŸá¯ááá¯ááŸá±á¬ááºáá¬ááŸááá»áœááºá¯ááºááá¯á·á YAML á á¬áááºážááá¯ááºááá¯á·áááºážááŒá±á¬ááºážááá¯ááá·áºáá«á áá»áœááºá¯ááºááá¯á·ááá á¹á ááœááºáááºážáááºááá±á¬áá»ááºá¡ááŒá áºááŸá servicenow.yml ááŒá áºáááºá ááá¯á·á¡ááŒááºá áááºááẠáááºá ServiceNow á¡áá±á¬áá·áºááᯠáá»áááºáááºááẠááá¯á¡ááºáááºá
á¡á¬ážáá¯á¶ážáááºááá¯á·á¡áá¯ááºáá¯ááºáááºááá¯á á áºáá±ážááẠ"á¡á¬ážáá¯á¶ážá áá·áºááºáá¯ááºááŒááºáž" ááá¯ááºááá¯ááŸáááºááŒááºážááŒáá·áº áá±áá¬áááºážááŒá áºááŸáá·áº áááºáá°áá»á¡á±á¬ááºááŒáá¯ážá á¬ážááŒáá«á áá¯á·á á¡áá¬á¡á¬ážáá¯á¶ážááᯠááŸááºáááºá áœá¬ á á®á ááºáááºááŸááºáá¬ážáá«áá ááá¯á·áá±á¬áẠNode áá»á¬ážááᯠáá»áœááºá¯ááºááá¯á·á á á¬áááºážáá²ááá¯á· ááá·áºááœááºážááá·áºáááº-
áá»áœááºá¯ááºááá¯á·ááá¯á¡ááºáá±á¬ á¡ááœá²á·áá»á¬ážááá¯áááºáž áááºáá®ážáá¬ážááŒá±á¬ááºáž áááááŒá¯áá«á
áá±á¬ááºáá»ááº
á€ááá¯á·á áºááœááºá ServiceNow ááááºá¡ááºááᯠááá°áá¬á¡ááŒá Ạá¡áá¯á¶ážááŒá¯á Ansible Tower ááŸá á á¯áá±á¬ááºážááŸá¯áá»á¬ážá០á á¬áááºážááááºá¡ááºáá»á¬ážááᯠáááºááá¯á·á¡áá¯á¶ážááŒá¯ááááºááᯠáá»áœááºá¯ááºááá¯á· ááŒáá·áºááŸá¯áá²á·áááºá áá»áœááºá¯ááºááá¯á·á ServiceNow á¥ááá¬á¡á¬áž áá»áááºáááºááẠá¡áá±á¬ááºá¡áá¬ážáá»á¬ážááᯠáá»áœááºá¯ááºááá¯á·áááºáž áá¯á¶ááŒá¯á¶á áœá¬ ááŸááºáá¯á¶áááºáá¬ážáá«áááºá ááá±á¬áá»ááºáá áºáá¯á០á á¬áááºážááááºá¡ááºáá áºáá¯á¡á¬áž áá»áááºáááºááŒááºážááẠááŒááºááá¯áá¹ááá® ááá¯á·ááá¯áẠá áááºááŒáá¯ááºááááºá¡ááºáá»á¬ážááŸáá·áºáᬠá¡áá¯ááºáá¯ááºáááºáá¬áá á¡áá»áá¯á·áá±á¬ áá¯á¶ááŸááºá á¬áááºážá¡ááºážáá»á¬ážááá¯ááºáᬠáá¯ááºáá±á¬ááºáá»ááºááᯠááŒá¯ááŒááºáááºáááºáž á¡áá¯á¶ážááŒá¯ááá¯ááºáááºá áááºážá Ansible Automation Platform ááẠááá¯ááá¯ááŸá¯ááºááœá±ážáá±á¬ IT áááºáááºážáá»ááºáá»á¬ážááᯠá¡ááá¯á¡áá»á±á¬ááºáá¯ááºáá±á¬ááºááá·áºá¡áá« ááŸáááŒá®ážáá¬ážáááááá¬áá»á¬ážááŸáá·áº áá±á«ááºážá ááºááẠááœááºáá°áá»á±á¬ááœá±á·á á±áááºá
á€ááá¯á·á áºááœáẠááœá±ážááœá±ážáá¬ážáá±á¬ á¡ááŒá±á¬ááºážá¡áá¬áá»á¬ážá¡ááŒáẠAnsible á¡áá¯á¶ážááŒá¯ááŒááºážá á¡ááŒá¬ážááŸá¯áá±á¬áá·áºáá»á¬ážá¡ááŒá±á¬ááºáž áá±á¬ááºáááºá¡áá»ááºá¡áááºáá»á¬ážááᯠá€áá±áá¬ááœáẠááŸá¬ááœá±ááá¯ááºáá«áááºá
- ááá±á¬á·ááº
ááᯠAnsible ááᯠá¡áá¯á¶ážááŒá¯á á¡ááá¯á¡áá»á±á¬áẠáá±á¬ááºááœááºáá±ážááŒááºážá . áááºáááá¯ááºááá¯ááºá á¯áá±á¬ááºážááŸá¯áá»á¬ážáááºáá®ážáááºáž .- Automation Hub áááºááá¯ááºááŸá Red Hat áá¶á·ááá¯ážáá±ážáá¬ážáá±á¬ á
á¯áá±á¬ááºážááŸá¯áá»á¬ážá
á¬áááºáž (
cloud.redhat.com ). Ansible Automation Platform eBooks .
*Red Hat ááẠá€áá±áá¬ááœááºáá«ááŸááá±á¬áá¯ááºááŸááºáááºááŒá±á¬ááºáž á¡á¬ááá¶áá»ááºáááŸááá«á á¡ááŒá¬ážáááºážááŒáá·áº á¡ááá¡áááºážáá±á¬áºááŒáá¬ážááŒááºážáááŸááá«á áá
á¹á
ááºážáá»á¬ážá¡á¬ážáá¯á¶ážááᯠáá±á¬ááºáá¶áá»ááºáááŸááá² áá¶á·ááá¯ážáá±ážáá«áááºá
source: www.habr.com