2017年5月1日月曜日

Job Arranger 一般設定 Zabbix 通知

Job ArrangerはZabbixへ通知する機能があります。
Job Arrangerから実行したジョブが異常になるとZabbixへ通知します。その通知された単語からZabbixがアクションを起こすことができます。
それではその通知機能を設定して見ます。


1.Job Arranger Managerの設定


















Job Arranger Managerの一般設定タブをクリックします。
・Zabbix通知はありにします。
・Zabbix IPアドレスにはZabbix Serverが動くサーバーのIPを設定します。
・Zabbixポート番号はZabbix サーバーのPort番号を書きます。
・Zabbix SenderコマンドにはZabbix Senderのパスを書きます。
  yumでインストールした場合はzabbix_senderだけ書いても特に問題あります。
  zabbix_senderがあるかはJob Arranger Serverがあるサーバーから
   which zabbix_sender発行してみてください。
  なかった場合はyum zabbix_senderをインストールしてください。
  ●zabbix_senderパス確認
[root@localhost jobarranger]# which zabbix_sender
/usr/bin/zabbix_sender
[root@localhost jobarranger]#
・メッセージ通知先ZabbixホストにはJob Arrangerから通知した内容を受けるサーバー
  Zabbixに登録するか既にあるホストを書きます。

僕の場合はjobarg_serverをZabbixに登録しました。(※2.Zabbixへホスト登録参照)
・アイテムキーはJob Arrangerから受取るアイテムの名前です。一般的にはjasenderを使っています。(※3.アイテム設定参照)
・Zabbix通知再送はもし、Zabbixサーバーが受け取らなかった場合再送することです。
・再送回数は再送ができなかった場合の回数です。
・再送インターバルは再送する期間の秒です。

設定が全部完了すると右下にある変更ボタンをクリックしてJob Arrangerサーバーを再起動します。


2.Zabbixへホスト登録





















Job Arrangerからメッセージを受取るjobarg_serverのホストをZabbixへ登録します。



3.アイテム設定


jobarg_serverホストにて、アイテムを登録します。
・名前には判りやすい名を書きます。
・タイプはZabbixトラッパーです。
・キーはjasenderです。
・データ型はログを選択します。

4.確認

これで登録が全部揃えるとJob Arrangerからジョブの実行が失敗すると
下記のようにエラーが文字がZabbixに通知されることが確認できます。


ログからERROR文字を引っ張りしてトリガーを設定すると
アクションを使うこともできますので
ご利用ください。

以上です。

2017年4月29日土曜日

Job Arranger외부I/F jobarg_exec

Job Arranager의 jobnet을 외부에서 실행하는 방법이 없을까? 어떻게 하면 될지를 모르는 분을이 있습니다. 저번에 쓴 Job Arranger에서 ESXi의 사상호스트 자동 실행 https://naiggy.blogspot.jp/2017/04/job-arranger-esxi.html
을 어떻게 하면 Zabbix에서 실행을 시킬수 있는지 알아보도록 하겠습니다.

Job Arrnager의 Jobnet은 외부에서 실행시키는 것이 가능합니다.
명령어로는 jobarg_exec을 사용합니다.
Shell script에서 실행하는 경우에는
jobarg_exec -z 192.168.137.138 -U Admin -P zabbix -j JOBNET_9
써 넣습니다.
명령어의 자세한 내용은 일보어입니다만
https://www.jobarranger.info/jaz/operation-manual_3.2/10external-exec.html

를 참조해 주시길 바라겠습니다.

저의 경우를 설명드리면
-z은 Job Arranger의 호스트 IP입니다.
-U은 JOBNET를 작성한 유져입니다.
-P은 유져의 패스워드입니다.
-j은 실행할 JOBNET ID입니다.

이것을 실행하면
[root@localhost ~]# jobarg_exec -z 192.168.137.138 -U Admin -P zabbix -j JOBNET_9
jobarg_exec [2413]: Registry number :  [1600000000000000001]
[root@localhost ~]#

가상호스트가 실행되는 것이 확인이 가능하실 것입니다.

이상입니다.

Job Arranger에서 ESXi의 가상호스트 자동 실행

Zabbix에서 작동하고 있는지 감시하는 가상호스트가 만약에 정지해있다면, 가상호스트를 기동하지 않으면 안될 것입니다.  기동하는 방법으로는 vSphere에 로그인해서 파워온을 하거나? ESXi에 ssh접속해서 기동하지 않으면 안됩니다.
어떻게 하면 run boot같이 자동으로 호스트를 기동할수 있을까 생각해 보았습니다.
그래서, 알아낸것이 Job Arranger를 이용한 자동 실행이었습니다.
그방법을 여러분들께 소개해 보도록 하겠습니다.
Job Arrnager는 C로 만들어져서 Linux환경에 적합하다고 생각됩니다.

1.ESXi에 Job Arranger Agent를 인스톨

ESXi에는 rpm 명령어가 없어서 rpm으로 인스톨할수 없습니다. 그래서 RPM을 압축해제 하기위해 해제가 가능한 서버에서 jobarranger-agentd-3.2.0-1.el6.x86_64.rpm을 Download받어서 rpm2cpio jobarranger-agentd-3.2.0-1.el6.x86_64.rpm | cpio -idv
명령어로 압축을 해제를 합니다.
압축 해제하면 etc, usr, var라고 하는 폴더가 보일 것입니다. 그것을 하나의 zip파일로 만듭니다. ESXi호스트에  접속을 해서 /vmfs/volumes/datastore1 밑에 job 폴더를 작성합니다. 작성한 job폴더에 zip파일을 넣고 해동합니다.

참고1: ESXi 서버는 reboot를 하면 모든것이 새로 작성됩니다만, /vmfs/volumes/datastore*밑은 새로 넣지 않기때문에 임의적인 install은 여기에 넣는 것이 좋습니다.
참고2: job폴더는 여러분들의 환경에 맞게 변경하셔도 됩니다.

2.jobarg_agentd.conf파일 수정

해동한 zip파일안에서 jobarg_agentd.conf를 수정합니다.
저의 경우는
/vmfs/volumes/datastore1/job/etc/jobarranger에 있으므로 이것을 수정하겠습니다.
vi jobarg_agentd.conf

Hostname=esxi6
JaExtjobPath=/vmfs/volumes/datastore1/job/etc/jobarranger/extendedjob
TmpDir=/vmfs/volumes/datastore1/job/var/lib/jobarranger/tmp
JaLogFile=/vmfs/volumes/datastore1/job/var/log/jobarranger/jobarg_agentd.log
JaPidFile=/vmfs/volumes/datastore1/job/var/run/jobarranger/jobarg_agentd.pid
JaDatabaseFile=/vmfs/volumes/datastore1/job/var/lib/jobarranger/jobarg_agentd.db
JaExtjobPath=/vmfs/volumes/datastore1/job/etc/jobarranger/extendedjob

의 부분을 환경에 맞게 수정합니다.
저의 같은 PATH라면 이것을 붙이셔도 됩니다.
Hostname은 Zabbix에 등록한 호스트 이름을 써 넣습니다.

3.jobarg_start.sh작성

cd /vmfs/volumes/datastore1/job
에서 작업을 하겠습니다.
vi jobarg_start.sh
##JOB ARRANGER START SHELL
JOB_EXE=/vmfs/volumes/datastore1/job/usr/sbin/jobarg_agentd
JOB_CNF=/vmfs/volumes/datastore1/job/etc/jobarranger/jobarg_agentd.conf

cd `dirname $0`
./jobarg_stop.sh

${JOB_EXE} -c ${JOB_CNF}
exit $?

저의 경우는 간단하게 적어 놓았습니다.
중복체크 대신 stop처리를 넣었습니다.

4.jobarg_stop.sh작성

vi jobarg_stop.sh
cd `dirname $0`

JOB_PROCESSES=`ps -Tcjstv | grep jobarg_agentd.conf | grep -v grep | awk '{ print $1 }'`

for i in  $JOB_PROCESSES
do
  echo $i
  kill -9 $i
done
exit $?

저의 경우는 간단하게 적어 놓았습니다.
여러분들도 환경에 맞게 쓰시길 바라겠습니다.

5.실행권한

chmod 700 jobarg_start.sh jobarg_stop.sh

6. job arranger 실행

./jobarg_start.sh
로 실행합니다.

7.Process확인

https://naiggy.blogspot.jp/2017/04/esxi_13.html
에서 소개한것과 같이 확인을 해보시길 바라겠습니다.

[root@localhost:~] ps -Tcjstv | grep job
35227  35227  jobarg_agentd                  35227  User,Native    WAIT    UWAIT   0,1       0.26419   /vmfs/volumes/datastore1/job/usr/sbin/jobarg_agentd -c /vmfs/volumes/datastore1/job/etc/jobarranger/jobarg_agentd.conf
35282  35282  jobarg_agentd                  35282  User,Native    WAIT    USLP    0,1       2.359539  /vmfs/volumes/datastore1/job/usr/sbin/jobarg_agentd -c /vmfs/volumes/datastore1/job/etc/jobarranger/jobarg_agentd.conf
35283  35283  jobarg_agentd                  35283  User,Native    WAIT    KTCP    0,1       0.691     /vmfs/volumes/datastore1/job/usr/sbin/jobarg_agentd -c /vmfs/volumes/datastore1/job/etc/jobarranger/jobarg_agentd.conf
35818  35818  grep                           35818  User,Native    WAIT    UPIPER  0,1       0.0       grep job
[root@localhost:~]

기동을 확인했습니다.

8.esxi firewall을 열어놓습니다.ファイアウォールを開けます

https://naiggy.blogspot.jp/2017/04/esxi-firewall.html
참조해 주십시요.

9.Zabbixへホスト登録

Zabbix GUI에서 ESXi의 호스트를 등록합니다.
저의 경우는 호스트 명을 esxi6으로 하였습니다.
Zabbix의 action에 기동 script를 넣습니다.
https://naiggy.blogspot.jp/2017/04/job-arrangerifjobargexec_29.html
참조 바랍니다.

10.JobNet를 등록합니다.

JOB의 등록에 있는 실행란에
test1의 호스트를 실행하는 명령어 입니다.
RUN_HOST=`vim-cmd vmsvc/getallvms | grep test1 | awk '{ print $1 }'`
vim-cmd vmsvc/power.on ${RUN_HOST}






















이 JOB이 실행하면 자동으로 test1의 호스트에 파워온이 됩니다.

결론

Zabbix의 Template Virt VMware Guest: Power state아이템과 함께 쓰면 자동으로 호스트를 기동하는 것이 가능합니다.
반대로 이야기하면 정지하는 것도 가능하므로 이것을 참고로 사용하시길 바라겠습니다.

ESXi를 reboot하게되면 Job Arranger가 자동으로 실행되질 않습니다.
그래서,
vi /etc/rc.local.d/local.sh
/vmfs/volumes/datastore1/job/jobarg_start.sh
을 추가해 주십시요.
그러면, ESXi을 reboot해도 자동으로 job arranger가 기동될 것입니다.

이상입니다.

2017年4月28日金曜日

zeroedthick vs eagerzeroedthick

ESXiにてDiskを追加すると思うとzeroedthick(シック・プロビジョニング ) とeagerzeroedthick(シック・プロビジョニング )があります。
どう違うことでしょうか?
これはIBMのページい説明があります。
https://www.ibm.com/developerworks/jp/cloud/library/cl-provisionvm-vmware/
●シック・プロビジョニング (lazy zeroed) ― 簡単に説明するとStorageのサイズだけを確保して使いながら部分部分をフォーマットする仕組みです。

●シック・プロビジョニング (eager zeroed) ― 最初から使う準備まですることです。作成するのに時間がかかるものです。

それでは作り方を紹介します。
①zeroedthick作成
zeroedthickはデフォルト オプションです。
[root@localhost:/vmfs/volumes/58c6a2fd-43824507-ea95-000c2968d936/disk] vmkfstools -c 1G -d zeroedthick  data01.vmdk
Create: 100% done.
[root@localhost:/vmfs/volumes/58c6a2fd-43824507-ea95-000c2968d936/disk] ls -la
total 1049608
drwxr-xr-x    1 root     root           560 Apr 28 02:22 .
drwxr-xr-t    1 root     root          1960 Apr 28 01:46 ..
-rw-------    1 root     root     1073741824 Apr 28 02:22 data01-flat.vmdk
-rw-------    1 root     root           466 Apr 28 02:22 data01.vmdk
[root@localhost:/vmfs/volumes/58c6a2fd-43824507-ea95-000c2968d936/disk]
新しく作る場合は-cを入れてSizeを設定、zeroedthickを使う場合は-d次にしてファイル名を書いてください。

②eagerzeroedthick作成
eagerzeroedthickはCluster作業をするときに使うものです。他のシステムと共有するなら必ずeagerzeroedthickを入れて作成ください。サイズにより時間がかかります。
[root@localhost:/vmfs/volumes/58c6a2fd-43824507-ea95-000c2968d936/disk] vmkfstools -c 1G -d eagerzeroedthick  data01.vmdk
Creating disk 'data01.vmdk' and zeroing it out...
Create: 100% done.
[root@localhost:/vmfs/volumes/58c6a2fd-43824507-ea95-000c2968d936/disk] ls -lah
total 1049608
drwxr-xr-x    1 root     root         560 Apr 28 02:21 .
drwxr-xr-t    1 root     root        1.9K Apr 28 01:46 ..
-rw-------    1 root     root        1.0G Apr 28 02:21 data01-flat.vmdk
-rw-------    1 root     root         466 Apr 28 02:21 data01.vmdk
[root@localhost:/vmfs/volumes/58c6a2fd-43824507-ea95-000c2968d936/disk]

③変更
もし、既にzeroedthickで作成してeagerzeroedthickに変更したい場合は
[root@localhost:/vmfs/volumes/58c6a2fd-43824507-ea95-000c2968d936/disk] vmkfstools -k data01.vmdk
Eagerly zeroing: 100% done.
[root@localhost:/vmfs/volumes/58c6a2fd-43824507-ea95-000c2968d936/disk] 
にしてください。

④削除
[root@localhost:/vmfs/volumes/58c6a2fd-43824507-ea95-000c2968d936/disk] vmkfstools -U data01.vmdk
削除ください。

用度に合わせてDiskをフォーマットを決めてください。

以上です。








2017年4月24日月曜日

Job Arranger外部I/F jobarg_exec


Job Arranagerのjobnetを外部から実行することがないか?どうすればよりか考える人もいるかもしれないです。前回 Job ArrangerからESXiの仮想ホスト自動起動
https://naiggy.blogspot.jp/2017/04/job-arrangeresxi.html
どうすればZabbixから起動するか?説明します。

Job Arrangerのジョブネットは外部から実行することができます。
コマンドjobarg_execを利用します。
Shell scriptから実行する場合は
jobarg_exec -z 192.168.137.138 -U Admin -P zabbix -j JOBNET_9
にします。
コマンドの詳細内容は
http://xn--yck0c5b3804be7h.fitechforce.com/operation-manual_3.2/10external-exec.html
をご参照ください。

僕の場合を簡単に説明します。
-zはJob ArrangerのホストIPです。
-Uはジョブネットを作成したユーザーです。
-Pはユーザーのパスワードです。
-jは起動するジョブネットIDです。

これで実行ができました。
[root@localhost ~]# jobarg_exec -z 192.168.137.138 -U Admin -P zabbix -j JOBNET_9
jobarg_exec [2413]: Registry number :  [1600000000000000001]
[root@localhost ~]#

仮想ホストが起動ができることが確認できます。

以上です。

2017年4月23日日曜日

Job ArrangerからESXiの仮想ホスト自動起動

Zabbixから死活監視をして仮想ホストが死んでいる場合、仮想ホストを起動しなければならないです。起動方法はvSphereにログインしてホストを起動するか?ESXiにssh接続して起動するか?など人の手を借りて解決します。
どうすればrun boot見たいに自動でホストを起動するかを考えたところ登場したものがJobArrangerでありましたので、その起動方法を紹介して見ます。
JobArrangerはCで作られているのでLinux環境ではよいと思います。

1.ESXiにJob Arranger Agentをインストール

ESXiにはrpmコマンドがないのでrpmインストールができませんので他のLinuxサーバーからjobarranger-agentd-3.2.0-1.el6.x86_64.rpmをDownloadして
rpm2cpio jobarranger-agentd-3.2.0-1.el6.x86_64.rpm | cpio -idv
コマンドで解凍します。
解凍したらフォルダetc, usr, varを一つに纏めてzipファイルを作ります。
ESXiサーバの/vmfs/volumes/datastore1/ 下にjobフォルダを作成します。
作成したjobフォルダにzipファイルを入れ解凍します。

参考1:ESXiサーバは再起動しても/vmfs/volumes/datastore*の下は変わりませんので自由に使います。
参考2:jobフォルダはご自由に変更してもかまいません。

2.jobarg_agentd.confファイルの修正

解凍したzipファイルからjobarg_agentd.confを修正します。
僕の場合は
/vmfs/volumes/datastore1/job/etc/jobarrangerにありますのでこれを修正します。
vi jobarg_agentd.conf

Hostname=esxi6
JaExtjobPath=/vmfs/volumes/datastore1/job/etc/jobarranger/extendedjob
TmpDir=/vmfs/volumes/datastore1/job/var/lib/jobarranger/tmp
JaLogFile=/vmfs/volumes/datastore1/job/var/log/jobarranger/jobarg_agentd.log
JaPidFile=/vmfs/volumes/datastore1/job/var/run/jobarranger/jobarg_agentd.pid
JaDatabaseFile=/vmfs/volumes/datastore1/job/var/lib/jobarranger/jobarg_agentd.db
JaExtjobPath=/vmfs/volumes/datastore1/job/etc/jobarranger/extendedjob

の部分を環境に合わせて修正します。
僕と同じパスならばそのまま使ってください。
HostnameはZabbixへ登録する名を入れてください。

3.jobarg_start.sh作成

cd /vmfs/volumes/datastore1/job
ここから作業します。
vi jobarg_start.sh
##JOB ARRANGER START SHELL
JOB_EXE=/vmfs/volumes/datastore1/job/usr/sbin/jobarg_agentd
JOB_CNF=/vmfs/volumes/datastore1/job/etc/jobarranger/jobarg_agentd.conf

cd `dirname $0`
./jobarg_stop.sh

${JOB_EXE} -c ${JOB_CNF}
exit $?

僕の場合は簡単に書きました。
重複チェックよりは必ずreboot感じで作成しました。


4.jobarg_stop.sh作成

vi jobarg_stop.sh
cd `dirname $0`

JOB_PROCESSES=`ps -Tcjstv | grep jobarg_agentd.conf | grep -v grep | awk '{ print $1 }'`

for i in  $JOB_PROCESSES
do
  echo $i
  kill -9 $i
done
exit $?

僕の場合は簡単に書きました。
皆さんは環境に合わせて書いてください。

5.実行権限

chmod 700 jobarg_start.sh jobarg_stop.sh

6. job arranger 実行

./jobarg_start.sh
で実行します。

7.Process確認

https://naiggy.blogspot.jp/2017/04/esxi.html
で紹介したように確認お願いいたします。

[root@localhost:~] ps -Tcjstv | grep job
35227  35227  jobarg_agentd                  35227  User,Native    WAIT    UWAIT   0,1       0.26419   /vmfs/volumes/datastore1/job/usr/sbin/jobarg_agentd -c /vmfs/volumes/datastore1/job/etc/jobarranger/jobarg_agentd.conf
35282  35282  jobarg_agentd                  35282  User,Native    WAIT    USLP    0,1       2.359539  /vmfs/volumes/datastore1/job/usr/sbin/jobarg_agentd -c /vmfs/volumes/datastore1/job/etc/jobarranger/jobarg_agentd.conf
35283  35283  jobarg_agentd                  35283  User,Native    WAIT    KTCP    0,1       0.691     /vmfs/volumes/datastore1/job/usr/sbin/jobarg_agentd -c /vmfs/volumes/datastore1/job/etc/jobarranger/jobarg_agentd.conf
35818  35818  grep                           35818  User,Native    WAIT    UPIPER  0,1       0.0       grep job
[root@localhost:~]

起動はできました。

8.esxi ファイアウォールを開けます

https://naiggy.blogspot.jp/2017/04/esxi_22.html
参照ください。

9.Zabbixへホスト登録

Zabbix GUIからESXiのホストを登録します。
僕の場合はホスト名はesxi6になります。
Zabbixへactionを登録します。
actionの起動scriptは
https://naiggy.blogspot.jp/2017/04/job-arrangerifjobargexec.html
をご参照ください。

10.JobNetへ登録します

ジョブの登録の実行欄に
test1のホストを実行するコマンドです。
RUN_HOST=`vim-cmd vmsvc/getallvms | grep test1 | awk '{ print $1 }'`
vim-cmd vmsvc/power.on ${RUN_HOST}





















このジョブが実行されると自動でtest1のホストがパワーオンになります。

結論

ZabbixのTemplate Virt VMware Guest: Power stateアイテムと組み合わせで自動でホストを起動することができます。
反対にホストを停止することもできますので
これを見てご自由に使用してください。

ESXiをrebootするとJob Arrangerが自動起動にならないので
vi /etc/rc.local.d/local.sh
/vmfs/volumes/datastore1/job/jobarg_start.sh
を追記するとESXiをrebootしても自動にjob arrangerが起動されます。


以上です。

esxi firewall설정 방법

ESXi에서 새로운 app의 port를 여는 것은vSphere에서는 불가능합니다.
ESXi의 서버에 ssh로 접속해서 작업을 해야만 합니다.
그럼 ESXi 6.5에서 작업을 해보겠습니다.
요번에는 Job Arranger의 접속 포트를 열어 보겠습니다.
먼저 firewall의 리스트를 확인 합니다.

[root@localhost:~] esxcli network firewall ruleset list
Name                      Enabled
------------------------  -------
sshServer                    true
sshClient                   false
nfsClient                   false
nfs41Client                 false
dhcp                         true
dns                          true
snmp                         true
ntpClient                   false
CIMHttpServer                true
CIMHttpsServer               true
CIMSLP                       true
iSCSI                       false
vpxHeartbeats                true
updateManager                true
faultTolerance               true
webAccess                    true
vMotion                      true
vSphereClient                true
activeDirectoryAll          false
NFC                          true
HBR                          true
ftpClient                   false
httpClient                  false
gdbserver                   false
DVFilter                    false
DHCPv6                      false
DVSSync                      true
syslog                      false
IKED                        false
WOL                          true
vSPC                        false
remoteSerialPort            false
vprobeServer                false
rdt                          true
cmmds                        true
vsanvp                       true
rabbitmqproxy                true
ipfam                       false
vvold                       false
iofiltervp                  false
esxupdate                   false
vit                         false
vsanhealth-multicasttest    false
[root@localhost:~]

Enabled의미는 등록되어 있습니다는의미에서 true의 경우는 port기열려있다는 것이고, false는 열려있지 않다는 것입니다.
jobarranger는 등록이 안되어 있으므로 등록해 보겠습니다.

1.대상파일을 백업
cp /etc/vmware/firewall/service.xml /etc/vmware/firewall/service.xml.bak

2.권한을 변경
chmod 644 /etc/vmware/firewall/service.xml
chmod +t /etc/vmware/firewall/service.xml

3.service.xml에 파일 등록
파일의 마지막 부분에 </ConfigRoot>위에

  <!-- Job Arranger -->
   <service id='0042'>
        <id>jobarranger</id>
        <rule id='0000'>
           <direction>inbound</direction>
           <protocol>tcp</protocol>
           <porttype>dst</porttype>
           <port>10055</port>
        </rule>
        <rule id='0001'>
           <direction>outbound</direction>
           <protocol>tcp</protocol>
           <porttype>dst</porttype>
           <port>10061</port>
        </rule>
        <enabled>true</enabled>
        <required>true</required>
     </service>
을 붙여 넣슷ㅂ니다.
위의 내용은,
service id에는 유니크한 ID를 넣습니다. 마지막 번호에 1을 더해 써 넣습니다.
id에는 표시될 이름을 넣습니다.(예:jobarranger)
rule id에는 지금 부터 사용할 rule을 써 넣습니다.
    이 룰에는 inbound할지 outbound하지를 써 넣습니다.
    inbound와 outbound을 동시에 이용하려면 rule id가 2개 필요합니다.서로 다른 Port를 사용하려면 복수의 rule id가 필요하게 됩니다.하지만 중복은 허용 하지 않으므로 unique한 번호를 부여해 넣습니다.
direction에는 inbound 또는 outbound를 써 넣습니다.
protocol에는 tcp 또는 udp를 써 넣습니다.
porttype에는 dst를 써 넣습니다.
port은 사용할 port를 써 넣습니다.
enabled에는 추가한 내용이므로 true를 써 넣습니다.
required에는 추가한 내용이므로 true를 써 넣습니다.

4.원래의 권한으로 바꿈
chmod 444 /etc/vmware/firewall/service.xml

5.firewall 재시작
esxcli network firewall ruleset list

6.확인
[root@localhost:~] esxcli network firewall ruleset list
Name                      Enabled
------------------------  -------
sshServer                    true
sshClient                   false
nfsClient                   false
nfs41Client                 false
dhcp                         true
dns                          true
snmp                         true
ntpClient                   false
CIMHttpServer                true
CIMHttpsServer               true
CIMSLP                       true
iSCSI                       false
vpxHeartbeats                true
updateManager                true
faultTolerance               true
webAccess                    true
vMotion                      true
vSphereClient                true
activeDirectoryAll          false
NFC                          true
HBR                          true
ftpClient                   false
httpClient                  false
gdbserver                   false
DVFilter                    false
DHCPv6                      false
DVSSync                      true
syslog                      false
IKED                        false
WOL                          true
vSPC                        false
remoteSerialPort            false
vprobeServer                false
rdt                          true
cmmds                        true
vsanvp                       true
rabbitmqproxy                true
ipfam                       false
vvold                       false
iofiltervp                  false
esxupdate                   false
vit                         false
vsanhealth-multicasttest    false
jobarranger                  true
[root@localhost:~]
빨간 부분이 추가된 부분입니다.

7.ESXi의 reboot의 대응
firewall은 ESXi가 reboot되면 처음설정 값으로 돌아가는 현상이 있습니다.
그러므로, service.xml파일에 Port를 추가 해 놓아도 다시 인스톨 때의 service.xml파일로 돌아갑니다. 그것을 방지 하기 위해
/etc/rc.local.d/local.sh 파일에 추가를 합니다.
파일을 열어 마지막 부분의 exit 0의 위에 추가 합니다.
vi /etc/rc.local.d/local.sh
#Job Arranger START
cp /etc/vmware/firewall/service.xml /etc/vmware/firewall/service.xml.bak
chmod 644 /etc/vmware/firewall/service.xml
chmod +t /etc/vmware/firewall/service.xml
sed -i -e 's/<\/ConfigRoot>//g' /etc/vmware/firewall/service.xml
cat<<_EOT_>>/etc/vmware/firewall/service.xml
  <!-- Job Arranger -->
     <service id='0042'>
        <id>jobarranger</id>
        <rule id='0000'>
           <direction>inbound</direction>
           <protocol>tcp</protocol>
           <porttype>dst</porttype>
           <port>10055</port>
        </rule>
        <rule id='0001'>
           <direction>outbound</direction>
           <protocol>tcp</protocol>
           <porttype>dst</porttype>
           <port>10061</port>
        </rule>
        <enabled>true</enabled>
        <required>true</required>
     </service>
< /ConfigRoot>
_EOT_
chmod 444 /etc/vmware/firewall/service.xml
esxcli network firewall refresh
##Job Arranger END

이렇게 설정을 하고 reboot를 하면 문제 없이 port가 열려있는 갓을 알 수 있습니다.

Job Arranger을 ESXi에 인스톨 하는 방법을 알아보겠습니다.
http://naiggy.blogspot.com/2017/04/job-arrangeresxi.html
참조 바랍니다.

이상 입니다.