ESXi 監視のための ESXi SNMP 設定ガイド
インフラストラクチャの監視は、問題を早期に検知し、障害を未然に防ぐことができるため、組織にとって重要です。万が一障害が発生した場合でも、早期に通知を受け取ることで、関連する問題の解決にできるだけ早く着手することができます。 VMware vSphere環境では、ESXiの監視を設定することを推奨します。ESXiホストを監視する最も費用対効果の高い方法の一つは、組み込み機能と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マシン1台があります。
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リクエストの受信に使用されます。
コミュニティ名("公開(""はデフォルトで設定されているコミュニティ名です)。この例のコミュニティ名は"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ターゲットである場合、そのマシンから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 認証ハッシュ値です
プリヴァシュ プライバシーハッシュ値は
です。これに ユーザー1 そして、前のコマンドの出力で生成されたハッシュを使用します。
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
どこ ユーザー1 は、設定に追加された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
どこ ユーザー1 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の仮想マシン(VM)のバックアップを忘れずに行ってください。
NAKIVO Backup & Replication これは、データセンター内のVMware vSphere仮想マシンやその他のデータをバックアップおよび復旧するための幅広い機能を提供する、汎用的なデータ保護ソリューションです。さらに、このソリューションの最新バージョンでは、VMware vSphereの監視機能の一環として、ESXiの監視もサポートされています。










