> 대규모의 환경에서 자빅스 에이전트를 설치한 후 UI에 설치된 추가 호스트를 등록한다는 것은 너무나 귀찮고, 누락이 될 가능성이 커진다. 따라서 자빅스 에이전트를 Ansible로 설치하고, 그 이후의 호스트 등록은 자동으로 진행하는 것을 알아보자.
# 시스템 구성 요소
- Zabbix Server
- Zabbix Proxy
- Ansible 기반의 Zabbix Agent 설치
# Zabbix Action 등록
> 설정 -> 액션 -> Autoregistration actions 이동
![zabbix](./images/zabbix-auto-regi.png)
먼저 `첫 번째 탭`인 "Actions"는 이름과 조건을 설정하는 메뉴다.
![action1](./images/zabbix_auto-regi2.png)
위의 경우 이름은 "HONGSNET" 이며, 조건은 호스트 메타데이터의 값이 HONGSNET일 경우 해당되는 것을 뜻한다. 참고적으로 아래의 호스트 제 거 섹션에서 Ansible을 이용한 방법 중 호스트 변수에 위의 **호스트메타변수(HOSTMETA="HONGSNET")**를 설정한 것을 확인할 수 있다.
`두 번째 탭`인 "오퍼레이션" 은 조건에 해당할 경우 어떤 작업을 할 것인지에 대한 정책을 설정하는 것이다.
![action2](./images/zabbix_auto-regi3.png)
위의 경우 다음과 같다.
- HONGSNET 호스트 그룹을 추가한다.
- 추가 시 Template OS Linux by Zabbix agent 템플릿을 추가한다.
- 그리고 추가로 Linux Memory Extension, Template Linux Logs Monitoring, Template Linux Networking Monitoring 템플릿도 추가한다.
그럼 최종적으로 등록된 설정은 다음과 같다.
![action3](./images/zabbix_auto-regi4.png)
# 호스트 제거 API
Zabbix에서 호스트 제거도 자동으로 해주면 좋겠지만, 일반적인 방법으로 지원하지 않는다. 다만, 다음과 같이 API를 사용해서 이를 사용할 수 있기 때문에 응용을 하면 분명히 가능할 것으로 보인다.