vCenter Server Appliance (vCSA)で,GUIからSNMPの設定をしてもデータを取得できない場合があります。
その場合,SSHでvCSAにログインしてSNMPの設定を行う必要があるのですが,例えば,snmp.getコマンドなどを叩いてみても,コマンドが見つからないというエラーが出てしまう場合があります。
この場合,何が間違っているのでしょうか。
vCSAには2種類のShellモードが存在する
現在,vCSAは2種類のShellをバンドルしており,どちらのShellを使っているのかを意識する必要があります。
・BASH Shell
・Appliance Shell
もしかすると,これまではAppliance Shellがデフォルトになっており,そこからBASH Shellに移動するために,Shellとタイプして操作していたかもしれません。
しかし,vCSAをアップグレードしたタイミングなどで,BASH Shellがデフォルトになってしまっている場合があります。
このような場合,ログインしてsnmp.getコマンドなどを走らせてみても,上述のsnmp.get: command not foundなどというエラーが出てしまいます。
では,Appliance Shellにスイッチするためにはどうしたらよいでしょうか。
vCSAでAppliance Shellにスイッチする方法
SSHでvCSAにroot権限でログインし,以下のコマンドを走らせます。
そして,exitでログアウトしましょう。次回接続時から設定が反映されますので,一度ログアウトするのがポイントです。
すると,見慣れたCommand>というプロンプトが現れますので,この状態でSNMP関連のコマンドなどを流してみましょう。そうすると,期待通りに応答するはずです。
BASH Shellをデフォルトにして操作したい場合には,同様に以下のコマンドで戻すことができます。
以上,vCSAでcommand not foundというエラーが出てしまう場合には,Appliance Shellにスイッチして操作する必要があるというお話でした。
コメント