Red Hat Ansible Engine 2.9 ã®ä»åŸã®ãªãªãŒã¹ã§ã¯ãé
åçãªæ¹åãããããããŠããããã®äžéšã«ã€ããŠã¯ãã®èšäºã§èª¬æããŸãã ãã€ãã®ããã«ãç§ãã¡ã¯ã³ãã¥ããã£ã®ãµããŒããåããªãããAnsible ãããã¯ãŒã¯ã®æ¹åããªãŒãã³ã«éçºããŠããŸããã åå ããŠã¿ãŸããã - èŠãŠã¿ãŸããã
æè¿ãç¥ããããããã«ã
- ã¢ãªã¹ã¿EOS
- Cisco IOS
- Cisco IOS XR
- Cisco NX-OS
- ãžã¥ãã㌠ãžã¥ãã¹
- VyOS
Ansible Automation ãµãã¹ã¯ãªãã·ã§ã³ãéã㊠Red Hat ã«ãã£ãŠå®å
šã«ãµããŒããããŠãããã©ââãããã©ãŒã ã®å®å
šãªãªã¹ãã«ã€ããŠã¯ã
ç§ãã¡ã¯äœãåŠãã ã®ã
éå» XNUMX 幎éã«ããããç§ãã¡ã¯ãããã¯ãŒã¯èªååãã©ãããã©ãŒã ã®éçºã«ã€ããŠå€ãã®ããšãåŠã³ãŸããã ç§ãã¡ããããåŠã³ãŸãã æ¹æ³ ãã©ãããã©ãŒã ã¢ãŒãã£ãã¡ã¯ãã¯ããšã³ã ãŠãŒã¶ãŒã«ãã£ãŠ Ansible ãã¬ã€ããã¯ãšããŒã«ã§äœ¿çšãããŸãã ãããŠãç§ãã¡ãç¥ã£ãããšã¯æ¬¡ã®ãšããã§ãã
- çµç¹ã¯ãXNUMX ã€ã®ãã³ããŒã ãã§ãªããå€ãã®ãã³ããŒã®ããã€ã¹ãèªååããŠããŸãã
- èªååã¯æè¡çãªçŸè±¡ã§ããã ãã§ãªããæåçãªçŸè±¡ã§ããããŸãã
- èªååèšèšã®åºæ¬çãªã¢ãŒããã¯ãã£ååã®ããããããã¯ãŒã¯ã倧èŠæš¡ã«èªååããããšã¯ãæã£ãŠãããããå°é£ã§ãã
XNUMX幎以äžåã«ç§ãã¡ãé·æçãªæé·èšç»ã«ã€ããŠè©±ãåã£ããšããç§ãã¡ã®æ³äººé¡§å®¢ã¯æ¬¡ã®ããšãæ±ããŸããã
- ãã¡ã¯ãåéãããæšæºåãããã¹ãŠã®ããã€ã¹ã«ãããèªååã¯ãŒã¯ãããŒãšé£æºãããå¿ èŠããããŸãã
- Ansible ã¢ãžã¥ãŒã«ããã¡ã¯ãåéåŸã®ãµã€ã¯ã«ã®åŸåãåŠçã§ããããã«ãããã€ã¹äžã®æ§æã®æŽæ°ãæšæºåãããäžè²«æ§ãããå¿ èŠããããŸãã
- ããã€ã¹æ§æãæ§é åããŒã¿ã«å€æããã«ã¯ãå³å¯ã§ãµããŒããããæ¹æ³ãå¿ èŠã§ãã ããã«åºã¥ããŠãä¿¡é Œã§ããæ å ±æºããããã¯ãŒã¯ ããã€ã¹ãã移åã§ããŸãã
äºå®ã®æ¹å
Ansible ã䜿çšããŠãããã¯ãŒã¯ ããã€ã¹ãããã¡ã¯ããåéããããšã¯ãå€ãã®å Žåã©ã³ãã ã«è¡ãããŸãã Web ããŒã¹ã®ãã©ãããã©ãŒã ã«ã¯ããŸããŸãªçšåºŠã®äºå®åéæ©èœããããŸãããããŒãšå€ã®ãã¢ã§ã®ããŒã¿è¡šçŸã解æããŠæšæºåããæ©èœã¯ã»ãšãã©ããŸãã¯ãŸã£ãããããŸããã èªã
ç§ãã¡ã Ansible Network Engine ã®åœ¹å²ã«åãçµãã§ããããšã«æ°ã¥ãããããããŸããã åœç¶ã®ããšãªããã24 åã®ããŠã³ããŒãåŸããããã¯ãŒã¯ ãšã³ãžã³ ããŒã«ã¯ããããã¯ãŒã¯èªååã·ããªãªçšã® Ansible Galaxy ã§æã人æ°ã®ãã Ansible ããŒã«ã® 2.8 ã€ã«ãªããŸããã Ansible 2.9 ã§å¿ èŠã«ãªããã®ã«åããããã«ããã®å€§éšåã Ansible XNUMX ã«ç§»è¡ããåã«ããã® Ansible ããŒã«ã¯ãã³ãã³ãã®è§£æãã³ãã³ãã®ç®¡çãããã³ãããã¯ãŒã¯ ããã€ã¹ã®ããŒã¿åéãæ¯æŽããæåã®ããŒã« ã»ãããæäŸããŸããã
Network Engine ã®äœ¿çšæ¹æ³ãç¥ã£ãŠããå Žåããã㯠Ansible ã§äœ¿çšãããã¡ã¯ã ããŒã¿ãåéã解æãæšæºåããããã®éåžžã«å¹ççãªæ¹æ³ã§ãã ãã®ããŒã«ã®æ¬ ç¹ã¯ããã©ãããã©ãŒã ããšããã³ãã¹ãŠã®ãããã¯ãŒã¯ ã¢ã¯ãã£ããã£ã«å¯ŸããŠå€§éã®ããŒãµãŒãäœæããå¿
èŠãããããšã§ãã ããŒãµãŒã®äœæãé
åžãä¿å®ãããã«é£ããããç解ããã«ã¯ã以äžãåç
§ããŠãã ããã
äžèšã§èšãã°ãããã€ã¹ãããã¡ã¯ããååŸããããããããŒãšå€ã®ãã¢ã«æ£èŠåããããšã¯ã倧èŠæš¡ãªèªååã«äžå¯æ¬ ã§ãããå€ãã®ãã³ããŒããããã¯ãŒã¯ ãã©ãããã©ãŒã ãããå Žåããããéæããã®ã¯å°é£ã§ãã
Ansible 2.9 ã®åãããã¯ãŒã¯ ãã¡ã¯ã ã¢ãžã¥ãŒã«ã¯ãè¿œå ã®ã©ã€ãã©ãªãAnsible ããŒã«ãã«ã¹ã¿ã ããŒãµãŒãªãã§ããããã¯ãŒã¯ ããã€ã¹ã®æ§æãåæããæ§é åããŒã¿ãè¿ãããšãã§ããããã«ãªããŸããã
Ansible 2.9 以éãæŽæ°ããããããã¯ãŒã¯ ã¢ãžã¥ãŒã«ããªãªãŒã¹ããããã³ã«ãæ§æã®ãã®ã»ã¯ã·ã§ã³ã«é¢ããããŒã¿ãæäŸããããã«ãã¡ã¯ã ã¢ãžã¥ãŒã«ãæ¹åãããŠããŸãã ã€ãŸãããã¡ã¯ããšã¢ãžã¥ãŒã«ã®éçºã¯åãããŒã¹ã§è¡ããããããã¯åžžã«å ±éã®ããŒã¿æ§é ãæã€ããšã«ãªããŸãã
ãããã¯ãŒã¯ ããã€ã¹äžã®ãªãœãŒã¹ã®æ§æã¯ãXNUMX ã€ã®æ¹æ³ã§ååŸããŠæ§é åããŒã¿ã«å€æã§ããŸãã ã©ã¡ãã®æ¹æ³ã§ããæ°ããããŒã¯ãŒãã䜿çšããŠãªãœãŒã¹ã®ç¹å®ã®ãªã¹ããåéããã³å€æã§ããŸãã gather_network_resources
ã ãªãœãŒã¹åã¯ã¢ãžã¥ãŒã«åãšäžèŽãããããéåžžã«äŸ¿å©ã§ãã
äºå®ãåéããªãã:
ããŒã¯ãŒãã䜿çšãã gather_facts
ãã¬ã€ããã¯ã®å
é ã§çŸåšã®ããã€ã¹æ§æãååŸããããããã¬ã€ããã¯å
šäœã§äœ¿çšã§ããŸãã ããã€ã¹ããååŸããåã
ã®ãªãœãŒã¹ãæå®ããŸãã
- hosts: arista
module_defaults:
eos_facts:
gather_subset: min
gather_network_resources:
- interfaces
gather_facts: True
ãããã®äŸã§äœãæ°ããããšã«æ°ã¥ãããããããŸããã gather_facts: true
ãããã¯ãŒã¯ ããã€ã¹ã®ãã€ãã£ã ãã¡ã¯ãåéã«äœ¿çšã§ããããã«ãªããŸããã
ãããã¯ãŒã¯ ãã¡ã¯ã ã¢ãžã¥ãŒã«ãçŽæ¥äœ¿çšããå Žå:
- name: collect interface configuration facts
eos_facts:
gather_subset: min
gather_network_resources:
- interfaces
ãã¬ã€ããã¯ã¯ãã€ã³ã¿ãŒãã§ã€ã¹ã«é¢ãã次ã®äºå®ãè¿ããŸãã
ansible_facts:
ansible_network_resources:
interfaces:
- enabled: true
name: Ethernet1
mtu: '1476'
- enabled: true
name: Loopback0
- enabled: true
name: Loopback1
- enabled: true
mtu: '1476'
name: Tunnel0
- enabled: true
name: Ethernet1
- enabled: true
name: Tunnel1
- enabled: true
name: Ethernet1
Ansible ã Arista ããã€ã¹ãããã€ãã£ãæ§æãååŸãããããæ§é åããŒã¿ã«å€æããŠãããŠã³ã¹ããªãŒã ã®ã¿ã¹ã¯ãšæäœã®æšæºã®ããŒãšå€ã®ãã¢ãšããŠäœ¿çšããæ¹æ³ã«æ³šç®ããŠãã ããã
ã€ã³ã¿ãŒãã§ã€ã¹ ãã¡ã¯ãã Ansible ã®ä¿åå€æ°ã«è¿œå ããããã«ãŸãã¯åŸã§ãªãœãŒã¹ ã¢ãžã¥ãŒã«ãžã®å
¥åãšããŠäœ¿çšã§ããŸãã eos_interfaces
è¿œå ã®åŠçãå€æãªãã§ã
ãªãœãŒã¹ã¢ãžã¥ãŒã«
ããã§ãäºå®ãæœåºããããŒã¿ãæ£èŠåããæšæºåãããå éšããŒã¿æ§é å³ã«åœãŠã¯ããŠãæ¢è£œã®ä¿¡é Œã§ããæ å ±æºãåãåããŸããã äžæ³ïŒ ãã¡ããããã¯çŽ æŽãããããšã§ãããããŒãšå€ã®ãã¢ãäœããã®æ¹æ³ã§ç¹å®ã®ããã€ã¹ ãã©ãããã©ãŒã ãæåŸ ããç¹å®ã®æ§æã«å€æããå¿ èŠããããŸãã ãããã®æ°ããäºå®åéãšæ£èŠåã®èŠä»¶ãæºããããã«ããã©ãããã©ãŒã åºæã®ã¢ãžã¥ãŒã«ãå¿ èŠã«ãªããŸããã
ãªãœãŒã¹ã¢ãžã¥ãŒã«ãšã¯äœã§ãã? ããã€ã¹ã®æ§æã»ã¯ã·ã§ã³ã¯ããã®ããã€ã¹ã«ãã£ãŠæäŸããããªãœãŒã¹ãšèããããšãã§ããŸãã ãããã¯ãŒã¯ ãªãœãŒã¹ ã¢ãžã¥ãŒã«ã¯æå³çã« XNUMX ã€ã®ãªãœãŒã¹ã«å¶éãããŠããããã«ãã£ã³ã° ãããã¯ã®ããã«ç©ã¿éããŠè€éãªãããã¯ãŒã¯ ãµãŒãã¹ãæ§æã§ããŸãã ãã®çµæããªãœãŒã¹ ã¢ãžã¥ãŒã«ã¯æ¬¡ã®å 容ãèªã¿åãããšãã§ããããããªãœãŒã¹ ã¢ãžã¥ãŒã«ã®èŠä»¶ãšä»æ§ã¯èªç¶ã«ç°¡çŽ åãããŸãã О ãããã¯ãŒã¯ ããã€ã¹äžã§ç¹å®ã®ãããã¯ãŒã¯ ãµãŒãã¹ãæ§æããŸãã
ãªãœãŒã¹ ã¢ãžã¥ãŒã«ã®æ©èœã説æããããã«ãæ°ãããããã¯ãŒã¯ ãªãœãŒã¹ ãã¡ã¯ããšã¢ãžã¥ãŒã«ã䜿çšããåªçæäœã瀺ããã¬ã€ããã¯ã®äŸãèŠãŠã¿ãŸãããã eos_l3_interface
.
- name: example of facts being pushed right back to device.
hosts: arista
gather_facts: false
tasks:
- name: grab arista eos facts
eos_facts:
gather_subset: min
gather_network_resources: l3_interfaces
- name: ensure that the IP address information is accurate
eos_l3_interfaces:
config: "{{ ansible_network_resources['l3_interfaces'] }}"
register: result
- name: ensure config did not change
assert:
that: not result.changed
ã芧ã®ãšãããããã€ã¹ããåéãããããŒã¿ã¯ãå€æããã«å¯Ÿå¿ãããªãœãŒã¹ ã¢ãžã¥ãŒã«ã«çŽæ¥è»¢éãããŸãã ãã¬ã€ããã¯ãèµ·åããããšãããã€ã¹ããå€ãååŸããããããäºæãããå€ãšæ¯èŒããŸãã ãã®äŸã§ã¯ãè¿ãããå€ã¯æåŸ ã©ããã§ãã (ã€ãŸããæ§æã®éžè±ããã§ãã¯ãã)ãæ§æãå€æŽããããã©ãããå ±åãããŸãã
æ§æã®ããªãããæ€åºããçæ³çãªæ¹æ³ã¯ãAnsible ã®ä¿åå€æ°ã«ãã¡ã¯ããä¿åããããããæ€æ»ã¢ãŒãã®ãªãœãŒã¹ ã¢ãžã¥ãŒã«ã§å®æçã«äœ¿çšããããšã§ãã ããã¯ã誰ããå€ãæåã§å€æŽãããã©ããã確èªããç°¡åãªæ¹æ³ã§ãã å€ãã®æäœã¯ Ansible Automation ãéããŠå®è¡ãããŸãããã»ãšãã©ã®å Žåãçµç¹ã§ã¯å€æŽãšæ§æãæåã§è¡ãããšãã§ããŸãã
æ°ãããªãœãŒã¹ ã¢ãžã¥ãŒã«ã¯ä»¥åã®ãã®ãšã©ã®ããã«ç°ãªããŸãã?
ãããã¯ãŒã¯èªååãšã³ãžãã¢ã«ãšã£ãŠãAnsible 3 ãšä»¥åã®ããŒãžã§ã³ã®ãªãœãŒã¹ ã¢ãžã¥ãŒã«ã«ã¯äž»ã« 2.9 ã€ã®éãããããŸãã
1) ç¹å®ã®ãããã¯ãŒã¯ ãªãœãŒã¹ (æ§æã»ã¯ã·ã§ã³ãšãèããããšãã§ããŸã) ã«ã€ããŠãã¢ãžã¥ãŒã«ãšãã¡ã¯ãã¯ããµããŒããããŠãããã¹ãŠã®ãããã¯ãŒã¯ ãªãã¬ãŒãã£ã³ã° ã·ã¹ãã ã«ããã£ãŠåæã«é²åããŸãã Ansible ã XNUMX ã€ã®ãããã¯ãŒã¯ ãã©ãããã©ãŒã ã§ãªãœãŒã¹æ§æããµããŒãããã®ã§ããã°ããããã©ãã§ããµããŒãããå¿ èŠããããšç§ãã¡ã¯èããŠããŸãã ããã«ããããããã¯ãŒã¯ ãªãŒãã¡ãŒã·ã§ã³ ãšã³ãžãã¢ã¯ãã€ãã£ã ã¢ãžã¥ãŒã«ãšãµããŒããããŠããã¢ãžã¥ãŒã«ã䜿çšããŠãã¹ãŠã®ãããã¯ãŒã¯ ãªãã¬ãŒãã£ã³ã° ã·ã¹ãã äžã§ãªãœãŒã¹ (LLDP ãªã©) ãæ§æã§ããããããªãœãŒã¹ ã¢ãžã¥ãŒã«ã®äœ¿çšãç°¡çŽ åãããŸãã
2) ãªãœãŒã¹ã¢ãžã¥ãŒã«ã«ç¶æ å€ãå«ãŸããããã«ãªããŸããã
merged
: èšå®ã¯æäŸãããèšå®ãšããŒãžãããŸã (ããã©ã«ã)ãreplaced
: ãªãœãŒã¹æ§æã¯ãæäŸãããæ§æã«çœ®ãæããããŸããoverridden
: ãªãœãŒã¹æ§æã¯ãæäŸãããæ§æã«çœ®ãæããããŸãã äžèŠãªãªãœãŒã¹ ã€ã³ã¹ã¿ã³ã¹ã¯åé€ãããŸããdeleted
: ãªãœãŒã¹æ§æã¯åé€ãããããããã©ã«ãã«åŸ©å ãããŸãã
3) ãªãœãŒã¹ã¢ãžã¥ãŒã«ã«ã¯å®å®ããæ»ãå€ãå«ãŸããããã«ãªããŸããã ãããã¯ãŒã¯ ãªãœãŒã¹ ã¢ãžã¥ãŒã«ããããã¯ãŒã¯ ããã€ã¹ã«å¿ èŠãªå€æŽãè¡ã (ãŸãã¯ææ¡ãã) ãšãåãããŒãšå€ã®ãã¢ããã¬ã€ããã¯ã«è¿ãããŸãã
before
: ã¿ã¹ã¯åã®æ§é åããŒã¿ã®åœ¢åŒã§ã®ããã€ã¹äžã®æ§æãafter
: ããã€ã¹ãå€æŽãããå Žå (ãŸãã¯ãã¹ã ã¢ãŒãã䜿çšãããŠããå Žåã¯å€æŽãããå¯èœæ§ããããŸã)ãçµæã®æ§æã¯æ§é åããŒã¿ãšããŠè¿ãããŸããcommands
: ããã€ã¹ãç®çã®ç¶æ ã«ããããã«ãä»»æã®æ§æã³ãã³ããããã€ã¹äžã§å®è¡ãããŸãã
ããã¯äœãæå³ããã®ã§ãããã? ã©ãããŠãããéèŠã§ããïŒ
ãã®æçš¿ã§ã¯å€ãã®è€éãªæŠå¿µãåãäžããŠããŸãããæçµçã«ã¯ãäŒæ¥ã¯ã©ã€ã¢ã³ããå®éã«èªååãã©ãããã©ãŒã ã®åéãããŒã¿æ£èŠåãã«ãŒãæ§æãæ±ããŠããããšã«ã€ããŠããæ·±ãç解ã§ããããšãé¡ã£ãŠããŸãã ãããããªããã®ãããªæ¹åãå¿ èŠãªã®ã§ãããã? çŸåšãå€ãã®çµç¹ã IT ç°å¢ã®ä¿ææ§ãšç«¶äºåãé«ããããã«ããžã¿ã«å€é©ãè¿œæ±ããŠããŸãã è¯ããæªãããå€ãã®ãããã¯ãŒã¯ ãšã³ãžãã¢ã¯ç§å©ç§æ¬²ã®ããããŸãã¯çµå¶é£ã®åœä»€ã§ãããã¯ãŒã¯éçºè ã«ãªããŸãã
çµç¹ã¯ãåã ã®ãããã¯ãŒã¯ ãã³ãã¬ãŒããèªååããŠããµã€ãã®åé¡ã¯è§£æ±ºãããå¹çã¯ããçšåºŠåäžããã ãã§ããããšã«æ°ã¥ãå§ããŠããŸãã Red Hat Ansible Automation Platform ã¯ããããã¯ãŒã¯ ããã€ã¹äžã®åºç€ãšãªãããŒã¿ãããã°ã©ã ã§ç®¡çããããã®ãå³å¯ã§èŠç¯çãªãªãœãŒã¹ ããŒã¿ ã¢ãã«ãæäŸããŸãã ã€ãŸãããŠãŒã¶ãŒã¯åå¥ã®æ§ææ¹æ³ãåŸã ã«æŸæ£ããç¹å®ã®ãã³ããŒã®å®è£ ã§ã¯ãªããã¯ãããžãŒ (IP ã¢ãã¬ã¹ãVLANãLLDP ãªã©) ã«éç¹ã眮ããããææ°ã®æ¹æ³ãæ¯æããŠããŸãã
ããã¯ãä¿¡é Œæ§ãšå®çžŸã®ããã³ãã³ã ã¢ãžã¥ãŒã«ãšæ§æã®æ代ãçµããã«è¿ã¥ããŠããããšãæå³ããã®ã§ãããã? ã©ããªå Žåã«ãã äºæ³ããããããã¯ãŒã¯ ãªãœãŒã¹ ã¢ãžã¥ãŒã«ã¯ããã¹ãŠã®å Žåããã¹ãŠã®ãã³ããŒã«é©çšã§ããããã§ã¯ãªããããç¹å®ã®å®è£ ã§ã¯ãããã¯ãŒã¯ ãšã³ãžãã¢ãã³ãã³ã ã¢ãžã¥ãŒã«ãšæ§æã¢ãžã¥ãŒã«ãåŒãç¶ãå¿ èŠãšããŸãã ãªãœãŒã¹ ã¢ãžã¥ãŒã«ã®ç®çã¯ã倧èŠæš¡ãª Jinja ãã³ãã¬ãŒããç°¡çŽ åããéæ§é åããã€ã¹æ§æãæ§é åããã JSON 圢åŒã«æ£èŠåããããšã§ãã ãªãœãŒã¹ ã¢ãžã¥ãŒã«ã䜿çšãããšãæ¢åã®ãããã¯ãŒã¯ã®æ§æããèªã¿ãããä¿¡é Œã§ããæ å ±æºãè¡šãæ§é åãããããŒãšå€ã®ãã¢ã«å€æããããšã容æã«ãªããŸãã æ§é åãããããŒãšå€ã®ãã¢ã䜿çšãããšãåããã€ã¹ã§ã®å®è¡æ§æããç¬ç«ããæ§é åããŒã¿ã®æäœã«ç§»è¡ãããããã¯ãŒã¯ãã³ãŒããšããŠã®ã€ã³ãã©ã¹ãã©ã¯ã㣠ã¢ãããŒãã®æåç·ã«åŒãäžããããšãã§ããŸãã
Ansible Engine 2.9 ã«ã¯ã©ã®ãããªãªãœãŒã¹ ã¢ãžã¥ãŒã«ãè¿œå ãããŸãã?
Ansible 2.9 ã§äœãèµ·ãããã詳ãã説æããåã«ãäœæ¥ç¯å²å šäœãã©ã®ããã«åå²ããããæãåºããŠãã ããã
7 ã€ã®ã«ããŽãªãç¹å®ããããããã«ç¹å®ã®ãããã¯ãŒã¯ ãªãœãŒã¹ãå²ãåœãŠãŸããã
泚: 倪åã®ãªãœãŒã¹ã¯ Ansible 2.9 ã§èšç»ããã³å®è£
ãããŸããã
äŒæ¥é¡§å®¢ãã³ãã¥ããã£ããã®ãã£ãŒãããã¯ã«åºã¥ããŠããããã¯ãŒã¯ ããããž ãããã³ã«ãä»®æ³åãã€ã³ã¿ãŒãã§ã€ã¹ã«é¢é£ããã¢ãžã¥ãŒã«ã«æåã«åãçµãã®ã¯è«ççã§ããã
次ã®ãªãœãŒã¹ ã¢ãžã¥ãŒã«ã¯ Ansible Network ããŒã ã«ãã£ãŠéçºãããRed Hat ã«ãã£ãŠãµããŒãããããã©ãããã©ãŒã ã«å¯Ÿå¿ããŸãã
次ã®ã¢ãžã¥ãŒã«ã¯ Ansible ã³ãã¥ããã£ã«ãã£ãŠéçºãããŠããŸãã
exos_lldp_global
- ãšã¯ã¹ããªãŒã ãããã¯ãŒã¯ã¹ãããnxos_bfd_interfaces
- ã·ã¹ã³ããnxos_telemetry
- ã·ã¹ã³ãã
ã芧ã®ãšããããªãœãŒã¹ ã¢ãžã¥ãŒã«ã®æŠå¿µã¯ããã©ãããã©ãŒã äžå¿ã®æŠç¥ã«é©åããŸãã ã€ãŸãããããã¯ãŒã¯ ã¢ãžã¥ãŒã«ã®éçºã«ãããæšæºåããµããŒãããAnsible ã®ããŒã«ãšãã¬ã€ããã¯ã®ã¬ãã«ã§ãŠãŒã¶ãŒã®äœæ¥ãç°¡çŽ åããããã«ãå¿ èŠãªæ©èœãšé¢æ°ã Ansible èªäœã«çµã¿èŸŒã¿ãŸãã ãªãœãŒã¹ ã¢ãžã¥ãŒã«ã®éçºãæ¡åŒµããããã«ãAnsible ããŒã 㯠Module Builder ããŒã«ããªãªãŒã¹ããŸããã
Ansible 2.10 以éã®èšç»
Ansible 2.9 ããªãªãŒã¹ãããããAnsible 2.10 ã®æ¬¡ã®ãªãœãŒã¹ ã¢ãžã¥ãŒã« ã»ããã«åãçµãäºå®ã§ããããã¯ããããã¯ãŒã¯ ããããžãšããªã·ãŒãããã«æ§æããããã«äœ¿çšã§ããŸãã
ãªãœãŒã¹ãšéå§æ¹æ³
åºæïŒ habr.com