앤시블 네트워크 자동화 – 2
Ansible 네트워크 자동화
네트워크 자동화는 기본 앤시블 개념의 잇점이지만, 네트워크 모듈의 작동에는 중요한 차이점이 있다.
Control 노드에서 실행
대부분의 앤시블 모듈과는 달리 네트워크 모듈은 managed 노드에서 실행되지 않는다. 사용자 관점에서 네트워크 모듈은 다른 모듈처럼 작동한다. 그것은 ad-hoc 명령, playbook과 role을 가지고 작동한다.
그 이면에서 네트워크 모듈은 다른 (리눅스/유닉스 윈도우) 모듈과 다른 방법을 사용한다. 앤시블은 파이썬으로 작성되고 실행되기 때문에, 네트워크 장비에서 파이썬 실행을 할수 없으므로, 앤시블 네트워크 모듈은 control 노드에서 ansible 이나 ansible-playbook을 실행하는것으로 실행된다.
다양한 통신 프로토콜(multiple communication protocol)
managed 노드 대신 control 노드에서 네트워크 모듈이 실행되기 때문에, 다양한 통신 프로토콜을 지원해야한다.
네트워크 모듈에 선택된 통신 프로토콜(XML over SSH, CLI over SSH, API over HTTPS)은 모듈의 의도와 플랫폼에 따라 다르다.
어떤 네트워크 모듈은 하나의 프로토콜만 지원하며, 어떤 모듈은 프로토콜을 선택할 수 있다.
가장 일반적인 통신 프로토콜은 CLI over SSH 이다.
통신 프로토콜은 ansible_connection 변수로 설정한다.