ESXiの監視に向けたESXi SNMP設定ガイド
インフラストラクチャの監視は、問題を早期に検出して障害を未然に防ぐことができるため、組織にとって重要です。万が一障害が発生した場合でも、早期に通知を受け取ることで、関連する問題の解決にできるだけ早く取り掛かることができます。 VMware vSphere 環境では、ESXi の監視を設定することをお勧めします。ESXi ホストを監視する最も費用対効果の高い方法の 1 つは、組み込み機能と SNMP(Simple Network Management Protocol)を利用することです。この場合、監視ソフトウェアがインストールされた専用サーバーを設定する必要があります。このブログ記事では、ESXi の SNMP 設定について解説し、ESXi ホストで SNMP を有効にする方法について説明します。
環境の準備
ESXiでSNMPを有効にする方法は以下の通りです:
- Secure Shell(SSH)を有効にする
- SNMPの設定
- ESXi ファイアウォールの設定
ここでは、1つの例を用いて、ESXiのSNMP設定について説明します。 ESXi 7.0 ESXiホストと、監視ソフトウェアがインストールされた1台のUbuntu Linuxマシン。
ESXiホストのIPアドレスは192.168.101.208です。
Ubuntu LinuxマシンのIPアドレスは192.168.101.209です。
ご自身の環境に合わせて、インフラストラクチャ内でSNMPを介したESXi監視を設定する際は、適切なパラメータにこれらのIPアドレスやその他の値を使用してください。
ESXi での SSH アクセスの有効化
ESXiホスト上でESXCLIコマンドをリモートで実行するには、そのホストへのSSHアクセスが必要です。ESXiホストへのSSHアクセスを有効にするには、VMware Host Clientを使用できます。Webブラウザを開き、アドレスバーにESXiホストのIPアドレスを入力し、認証情報を入力してログインします。
その Navigator ペインで、[ ] に移動します。 Host > Manage そして、 Services タブ”
“を右クリック TSM-SSH そして、コンテキストメニューで、[ ] をクリックします。 Start.
以下のスクリーンショットには、ESXiホスト上で起動中のSSHサーバーサービスが表示されています。
これで、SSHクライアントがインストールされたマシンからESXiホストに接続できるようになりました。Windowsを使用している場合は、無料で使いやすいSSHクライアントであるPuTTYを利用できます。Linuxでは、コマンドラインから次のコマンドを実行してSSHクライアントを起動します:
ssh your_username@host_ip_address
SSHクライアントのセッション設定で、ESXiホストのIPアドレスとTCP 22番ポート(デフォルトのポート番号)を入力し、SSH経由でESXiホストに接続します。
ESXi の SNMP 設定
ESXi ホストへの SSH アクセスが確立されたら、VMware ESXi の SNMP オプションを設定できます。ESXi ホストでは、SNMP は コマンドラインインターフェース. グラフィカルユーザーインターフェイス(GUI)では、SNMP サービスの起動、停止、再起動のみを行うことができます。
コンソール(ターミナル)でこのコマンドを実行し、ESXi ホスト上の SNMP のステータスを確認します:
esxcli system snmp get
SNMPはデフォルトで無効になっています。ESXiでSNMPが無効になっている場合の出力をスクリーンショットに示します。ほとんどのパラメータは空であるか、設定されていません。
SNMPエージェントのパラメータ設定
ESXi ホスト上の SNMP エージェントの SNMP パラメータを設定します。SNMP エージェントは、監視サーバーへの通知(SNMP トラップおよびインフォーム)の送信、および GET、GETNEXT、GETBULK リクエストの受信に使用されます。
コミュニティ名(“public(“”はデフォルトで設定されるコミュニティ名です)。この例のコミュニティ名は”nakivo”.
esxcli system snmp set --communities nakivo
SNMPターゲットを設定します。SNMPターゲットとは、SNMPトラップを処理し、監視情報を収集するために監視ソフトウェアがインストールされているサーバーのことです。この例では、SNMPターゲットはUbuntu Linuxが動作しているマシンです(192.168.101.209). UDP 161 は SNMP で使用されるデフォルトのポートであり、このポートは私の ESXi の SNMP 設定で次のように定義されています:
esxcli system snmp set --targets=192.168.101.209@161/nakivo
サーバーが設置されている場所(地理的な位置、住所、データセンター、または部屋など)を指定してください:
esxcli system snmp set --syslocation "Server room"
連絡先情報を指定してください。このパラメータには、システム管理者のメールアドレスを指定できます:
esxcli system snmp set --syscontact michaelbose@nakivo.com
ESXiでSNMPを有効にする:
esxcli system snmp set --enable true
ESXiホストのSNMPステータスを再度確認してください:
esxcli system snmp get
これで、パラメータの設定が完了したことが確認できます。
エンジンIDは、SNMPエージェントの一意の識別子です(SNMP v3で使用されます)。エンジンIDは、次のコマンドで設定できます(オプション):
esxcli system snmp set -engineid 544a33209458
SNMPの状態は ランニング 今すぐ。また、VMware Host Client を起動し、[ Host > Manage > Services, そして、のステータスを確認し、 snmpd サービス。
現在のSNMP設定をテストします。
esxcli system snmp test
その後、SNMPの設定を変更した場合は、次のコマンドでSNMPエージェントを再起動してください:
/etc/init.d/snmpd restart
別の方法として、VMware Host ClientのGUIでESXi SNMPを再起動することもできます。 Services タブ。サービスを右クリックし、[ Restart コンテキストメニュー内で。
ESXiのSNMP設定をリセットする必要がある場合は、次のコマンドを使用してください:
esxcli system snmp set -r
ESXi ホストで SNMP を無効にするコマンドは次のとおりです:
esxcli system snmp set --enable false
そのLinuxマシンがSNMPターゲットである場合、そのLinuxマシンからSNMPの可用性を確認できます。ここでは、Ubuntu Linuxを使用します。
必要なSNMPクライアントがまだインストールされていない場合は、Ubuntu Linuxにインストールしてください:
sudo apt-get install snmp
SNMP 経由で ESXi ホストに接続し、監視可能なパラメータを確認します:
snmpwalk -v2c -c nakivo 192.168.101.208
コンソールの出力には、SNMP による ESXi 監視用のオブジェクトの長いリストが表示されるはずです。これらのオブジェクトは、管理情報ベース(MIB)およびオブジェクト識別子(OID)であり、監視パラメータの階層構造を構成する要素です。
SNMP MIB とは、オブジェクト(パラメータや設定)に関する情報を階層的に整理したものです。 MIBにはスカラー型とテーブル型があります。MIBには標準規格のものもあれば、ベンダー固有のものもあります。
SNMP OIDとは、階層的なMIB構造内で一意に識別される管理対象オブジェクトのことです。ツリーの各レベルは、異なる組織によって割り当てられています。ベンダーは、自社製品のパラメータを監視するために特別な分岐を定義することができます。
オブジェクト名とは、適切なOIDに対応する、MIB全体で一意の値のことです。たとえば、OIDのオブジェクト名は 1.3.6.1.2.1.1.5 は sysName.
ESXi ファイアウォールの設定
ファイアウォールを設定し、監視サーバーから ESXi ホストへの SNMP アクセスを有効にする必要があります。ネットワーク内でアクセスを許可するデバイスのサブネットまたは個別の IP アドレスを設定できます。
以下の 3 つのコマンドを実行して、 192.168.101.0/24 SNMP 経由で ESXi を監視するためのネットワーク:
esxcli network firewall ruleset set --ruleset-id snmp --allowed-all false
esxcli network firewall ruleset allowedip add --ruleset-id snmp --ip-address 192.168.101.0/24
esxcli network firewall ruleset set --ruleset-id snmp --enabled true
ネットワーク構成に応じて、IPアドレスまたはネットワークアドレスを入力してください。
セキュリティ上のリスクが高くなる設定として、任意のネットワークデバイスからのアクセスを許可する方法があります:
esxcli network firewall ruleset set --ruleset-id snmp --allowed-all true
esxcli network firewall ruleset set --ruleset-id snmp --enabled true
ESXiのSNMP設定は完了しました。これで、監視サーバー上で監視ソフトウェアの設定を行うことができます。
SNMP v3 の設定
SNMP v3 は、鍵による認証と暗号化機能を備えた、よりセキュリティの高いプロトコルです。SNMP v3 の設定はより複雑であり、vSphere 5.1 以降でサポートされています。以下に、ESXi ホストで SNMP v3 を有効にする方法の概要を示します。
認証プロトコルとプライバシーオプションを設定します。
esxcli system snmp set -a SHA1 -x AES128
場所:
SHA1 これは、暗号化のためのアルゴリズムであり、暗号ハッシュ関数(Secure Hash Algorithm 1)である。
AES128 これは、対称ブロック暗号を用いた暗号化方式(128ビットの暗号鍵を持つAdvanced Encryption Standard)です。
次のようなコマンドを使用してハッシュを生成します:
esxcli system snmp hash –auth-hash authpass –priv-hash privhash –raw-secret
私の場合、コマンドは次のとおりです:
esxcli system snmp hash --auth-hash PasswordTest1 --priv-hash PasswordTest2 --raw-secret
本番環境では、この例で示されているパスワードの使用は避けてください。一意のパスワードを使用してください(パスワードは7文字以上である必要があります)。生成されたハッシュ文字列を保存してください。私の場合、ハッシュは以下の通りです。
Authhash: 831a798d1cda90ca1a3ab80d38f81a44c0851ada
プリヴァシュ: 38cf6f13d09a4651362338eac2c3d62b42514bc9
生成されたハッシュを使用して、ユーザーを追加してください。最大5人までのユーザー追加に対応しています。
esxcli system snmp set -e yes -C user -u snmpuser/authhash/privhash/priv
場所:
(user はユーザーの連絡先メールアドレスです)
snmpuser ユーザー名です(最大32文字まで)。
authhash これは認証ハッシュ値です
privhash プライバシーハッシュ値は
です。これに user1 そして、前のコマンドの出力で生成されたハッシュを使用します。
esxcli system snmp set -e yes -C user1@nakivo.com -u user1/831a798d1cda90ca1a3ab80d38f81a44c0851ada/38cf6f13d09a4651362338eac2c3d62b42514bc9/priv
次のコマンドを使用すると、セキュリティ設定(認証およびプライバシー設定)のないユーザーを作成できます:
esxcli system snmp set --user user2/-/-/none
SNMPの宛先アドレスを指定します:
esxcli system snmp set --v3targets 192.168.101.209@161/user1/priv/trap
ESXi で SNMP を有効にする:
esxcli system snmp set --enable true
SNMP設定のテスト:
esxcli system snmp test
ESXi 上の VMware SNMP 設定をテストするには、拡張コマンドを使用できます:
esxcli system snmp test -u=user1 -A=PasswordTest1 -X=P2sswordTest2 -r
どこで user1 これは、設定に追加されたSNMPユーザーの名前です。
テストが正常に完了すると、次のようなメッセージが表示されます:
指定されたエンジンIDおよびセキュリティレベルに対して、ユーザーが正しく認証されました:プロトコル
監視用のLinuxサーバー(対象側)から、SNMP v3を介してESXiホストに接続してみてください。
認証パラメータが設定されていない場合は、このコマンドを使用します:
snmpwalk -v3 -u user1 192.168.101.208
セキュリティオプションを設定している場合は、コマンド内でそれらを指定してください:
snmpwalk -v3 -u user1 -l AuthPriv -a SHA -A PasswordTest1 -x AES -X PasswordTest2 192.168.101.208
どこで user1 ESXiのSNMP設定に、私のユーザー名が追加されています。
もし”不明なユーザー名ESXiのSNMP設定をテストする際に””というエラーが発生した場合は、ユーザーを追加済みかどうか、およびユーザー追加後の次のコマンドで正しいユーザー名が指定されているかどうかを確認してください。 ユーザー設定を行った後に、エージェントの Engine ID、プライバシープロトコル、または認証プロトコルを変更すると、それらのユーザーは無効になる点に注意してください。その場合は、ユーザー設定をやり直す必要があります。
また、セキュリティ設定にも注意を払ってください。SNMP の設定が不適切だと、脅威となり、悪意のあるホストが ESXi ホストに関する情報を入手できてしまう可能性があります。この情報は、脆弱な箇所を特定し、サイバー攻撃を仕掛けるために悪用される恐れがあります。
複数のESXiホストのSNMP設定
使用方法 VMware ホストプロファイル vSphere 環境に多数の ESXi ホストがある場合、このガイドを参考にすれば、SNMP を有効にし、複数の ESXi ホストをより合理的に設定することができます。
SNMP を有効にし、複数の ESXi ホストを設定するには、VMware vSphere Enterprise Plus が必要です。 ライセンス VMware vSphere Client で VMware ホストプロファイルを使用するには。ESXi ホストのプロファイルに関する VMware SNMP 設定は、 Management > Host Profiles > your Profile > SNMP Agent Configuration. また、次の方法も利用できます。 vSphere PowerCLI 多数のESXiホストの設定プロセスを自動化し、各ホストにESXiのSNMP設定を適用するため。
結論
ESXiのSNMP設定を行うには、ESXiホストへのSSHアクセス、SNMPエージェントの設定、およびESXiファイアウォールでのアクセス許可が必要です。ESXiの監視を行うことで、問題が検出された場合に迅速に対応し、サービス全体の可用性を向上させることができます。データ損失を防ぐため、また災害発生時にデータを復旧し、ワークロードを復元できるようにするため、VMware vSphereの仮想マシンのバックアップを忘れずに行ってください。
NAKIVO Backup & Replication これは、データセンター内のVMware vSphere仮想マシンやその他のデータをバックアップおよび復旧するための幅広い機能を提供する、汎用的なデータ保護ソリューションです。さらに、このソリューションの最新バージョンでは、VMware vSphereの監視機能の一環として、ESXiの監視もサポートされています。










