zabbix와 pyvmomi로 네트워크 연결 해제 자동화
여기서는 모니터링 대상 호스트에서 얻은 값으로 경고가 발생하면 Zabbix 서버 측에서 스크립트를 실행하여 모니터링 대상 호스트 (VM)의 vNIC를 자동으로 연결해 봅니다.
검증 정책
환경
품목
내용
OS
CentOS 7.3
Zabbix
3.2.7-1
파이썬
python34
pyvmomi
6.5.0.2017.5.post1
vCenter
버전 6.5.0 빌드 4602587
호스트
Zabbix 서버 : ZBX_SRV, 모니터링 대상 호스트 : ZBX_AGE
vNIC 절단 도구
소스 코드
htps : // 기 st. 기주 b. 코 m / 스카이 쇼케 r / 0c9에 689d982c9871d7967661c596에 cbd
사용법
(1) 사용법은 다음과 같습니다.
[root@localhost ~]# ./vm_disconnect_nw.py vCenterのIP ログインユーザー名 パスワード 対象VM名 対象vNIC名
[root@localhost ~]# ./vm_disconnect_nw.py xxx.xxx.xxx.xxx [email protected] password ZBX_AGE 'Netwok adapter 1'
검증
호스트 등록
(1) 호스트 정보는 다음과 같습니다.
(2) 다음 매크로를 등록합니다.
품목
내용
{$VCENTER_IP}
vCenter IP
{$USERNAME}
vCenter에 로그인할 사용자 이름
{$PASSWORD}
vCenter에 로그인하는 사용자의 비밀번호
(3) 아이템은 다음과 같이 등록되어 있습니다.
(4) 트리거는 다음과 같이 등록되어 있습니다.
액션 설정
(1) 액션은 다음과 같이 등록되어 있습니다.
(2) 실행 내용은 다음과 같이 등록되어 있습니다.
/usr/lib/zabbix/externalscripts/vm_disconnect_nw.py {$VCENTER_IP} {$USERNAME} {$PASSWORD} {HOST.HOST} 'Network adapter 1'
vNIC 연결 해제 도구 설치
(1) 도구를 다운로드합니다.
[root@ZBX_SRV ~]# git clone https://gist.github.com/0c9e689d982c9871d7967661c596ecbd.git
Cloning into '0c9e689d982c9871d7967661c596ecbd'...
remote: Counting objects: 3, done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), done.
(2) zabbix의 스크립트 디렉토리에 복사합니다.
[root@ZBX_SRV ~]# cp 0c9e689d982c9871d7967661c596ecbd/vm_disconnect_nw.py /usr/lib/zabbix/externalscripts/
[root@ZBX_SRV ~]# chmod +x /usr/lib/zabbix/externalscripts/vm_disconnect_nw.py
[root@ZBX_SRV ~]# chown zabbix.zabbix /usr/lib/zabbix/externalscripts/vm_disconnect_nw.py
[root@ZBX_SRV ~]# chmod 750 /usr/lib/zabbix/externalscripts/vm_disconnect_nw.py
검증 실행
(1) ZBX_AGE의 vNIC 상태가 연결 중인지 확인합니다.
(2) ZBX_AGE에서 「1」을 송신합니다.
[root@ZBX_AGE ~]# zabbix_sender -z zabbixサーバIP -s 'ZBX_AGE' -k test.item -o 1
(3) 작업이 실행되고 ZBX_AGE의 vNIC가 연결 해제되었는지 확인합니다.
vNIC가 끊어졌습니다 :-)
이러한 느낌으로 pyvmomi + Zabbix를 조합하여 VMware의 자동화를 할 수 있습니다.
자동화가 제대로 빠지면 매우 편리하네요!
소스 코드
htps : // 기 st. 기주 b. 코 m / 스카이 쇼케 r / 0c9에 689d982c9871d7967661c596에 cbd
사용법
(1) 사용법은 다음과 같습니다.
[root@localhost ~]# ./vm_disconnect_nw.py vCenterのIP ログインユーザー名 パスワード 対象VM名 対象vNIC名
[root@localhost ~]# ./vm_disconnect_nw.py xxx.xxx.xxx.xxx [email protected] password ZBX_AGE 'Netwok adapter 1'
검증
호스트 등록
(1) 호스트 정보는 다음과 같습니다.
(2) 다음 매크로를 등록합니다.
품목
내용
{$VCENTER_IP}
vCenter IP
{$USERNAME}
vCenter에 로그인할 사용자 이름
{$PASSWORD}
vCenter에 로그인하는 사용자의 비밀번호
(3) 아이템은 다음과 같이 등록되어 있습니다.
(4) 트리거는 다음과 같이 등록되어 있습니다.
액션 설정
(1) 액션은 다음과 같이 등록되어 있습니다.
(2) 실행 내용은 다음과 같이 등록되어 있습니다.
/usr/lib/zabbix/externalscripts/vm_disconnect_nw.py {$VCENTER_IP} {$USERNAME} {$PASSWORD} {HOST.HOST} 'Network adapter 1'
vNIC 연결 해제 도구 설치
(1) 도구를 다운로드합니다.
[root@ZBX_SRV ~]# git clone https://gist.github.com/0c9e689d982c9871d7967661c596ecbd.git
Cloning into '0c9e689d982c9871d7967661c596ecbd'...
remote: Counting objects: 3, done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), done.
(2) zabbix의 스크립트 디렉토리에 복사합니다.
[root@ZBX_SRV ~]# cp 0c9e689d982c9871d7967661c596ecbd/vm_disconnect_nw.py /usr/lib/zabbix/externalscripts/
[root@ZBX_SRV ~]# chmod +x /usr/lib/zabbix/externalscripts/vm_disconnect_nw.py
[root@ZBX_SRV ~]# chown zabbix.zabbix /usr/lib/zabbix/externalscripts/vm_disconnect_nw.py
[root@ZBX_SRV ~]# chmod 750 /usr/lib/zabbix/externalscripts/vm_disconnect_nw.py
검증 실행
(1) ZBX_AGE의 vNIC 상태가 연결 중인지 확인합니다.
(2) ZBX_AGE에서 「1」을 송신합니다.
[root@ZBX_AGE ~]# zabbix_sender -z zabbixサーバIP -s 'ZBX_AGE' -k test.item -o 1
(3) 작업이 실행되고 ZBX_AGE의 vNIC가 연결 해제되었는지 확인합니다.
vNIC가 끊어졌습니다 :-)
이러한 느낌으로 pyvmomi + Zabbix를 조합하여 VMware의 자동화를 할 수 있습니다.
자동화가 제대로 빠지면 매우 편리하네요!
/usr/lib/zabbix/externalscripts/vm_disconnect_nw.py {$VCENTER_IP} {$USERNAME} {$PASSWORD} {HOST.HOST} 'Network adapter 1'
[root@ZBX_SRV ~]# git clone https://gist.github.com/0c9e689d982c9871d7967661c596ecbd.git
Cloning into '0c9e689d982c9871d7967661c596ecbd'...
remote: Counting objects: 3, done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), done.
[root@ZBX_SRV ~]# cp 0c9e689d982c9871d7967661c596ecbd/vm_disconnect_nw.py /usr/lib/zabbix/externalscripts/
[root@ZBX_SRV ~]# chmod +x /usr/lib/zabbix/externalscripts/vm_disconnect_nw.py
[root@ZBX_SRV ~]# chown zabbix.zabbix /usr/lib/zabbix/externalscripts/vm_disconnect_nw.py
[root@ZBX_SRV ~]# chmod 750 /usr/lib/zabbix/externalscripts/vm_disconnect_nw.py
[root@ZBX_AGE ~]# zabbix_sender -z zabbixサーバIP -s 'ZBX_AGE' -k test.item -o 1
Reference
이 문제에 관하여(zabbix와 pyvmomi로 네트워크 연결 해제 자동화), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/sky_jokerxx/items/dab8ab0ad467b365aa4a텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)