Contents
VMのアプライアンスとかはメソッドが無効かされている場合があります。
例えば、以下の例ではNSXのEdge設定が出来ないです。
これは設定変更をするメソッド(ReconfigVM_Task
)が無効化されているためです。
検証とかで変えたいときがあるので、有効化するツールをgoで作ってみました。
pyvmomiではVMメソッドを有効化できるメソッドがありませんでした。govmomiだと実装されていたのでgoを使っています。
環境
項目 | バージョン |
---|---|
go | 1.13.4 |
vCenter | 6.5.0 |
vmware-method-operation
作ったツールは以下のものです。
ツールの使い方
インストール
必要なパッケージをインストールします。
1 2 |
root@a038a2870922:~# go get github.com/pkg/errors github.com/vmware/govmomi github.com/urfave/cli |
リポジトリをクローンします。
1 2 |
root@a038a2870922:~# git clone https://github.com/sky-joker/vmware-method-operation.git |
ビルドします。
1 2 3 |
root@a038a2870922:~# cd vmware-method-operation/ root@a038a2870922:~/vmware-method-operation# go build |
コマンドがビルドされてたか確認します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
root@a038a2870922:~/vmware-method-operation# ./vmware-method-operation NAME: vmware-method-operation - A new cli application USAGE: vmware-method-operation [global options] command [command options] [arguments...] VERSION: 0.0.0 COMMANDS: method, m Command to enable/disable method. help, h Shows a list of commands or help for one command GLOBAL OPTIONS: --help, -h show help (default: false) --version, -v print the version (default: false) |
無効化されているメソッドの確認
ReconfigVM_Task
が無効化されているか確認します。
1 2 3 |
root@a038a2870922:~/vmware-method-operation# ./vmware-method-operation method list -u https://192.168.0.170 --password 'password' --vm edge01-0 --insecure | grep ReconfigVM_Task ReconfigVM_Task |
メソッドを有効化
メソッドが無効化されていることが確認できたので有効化します。
1 2 |
root@a038a2870922:~/vmware-method-operation# ./vmware-method-operation method enable -u https://192.168.0.170 --password 'password' --vm edge01-0 -l ReconfigVM_Task --insecure |
有効化できれば以下のコマンドを実行してもメソッドは表示されません。
1 2 |
root@a038a2870922:~/vmware-method-operation# ./vmware-method-operation method list -u https://192.168.0.170 --password 'password' --vm edge01-0 --insecure | grep ReconfigVM_Task |
再度無効化する場合
再度無効化する場合は、以下のコマンドを実行します。
1 2 |
root@a038a2870922:~/vmware-method-operation# ./vmware-method-operation method disable -u https://192.168.0.170 --password 'password' --vm edge01-0 -l ReconfigVM_Task --insecure |
動作確認
設定が変更できるようになったかWebUIから確認してみます。
設定が変更できるようになりました 🙂
これやっちゃうと恐らくサポート範囲外になっちゃいます。
ちなみに、ブラウザ(mob)からでも設定できます。
以下のサイトにやり方が書いてあります。