Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Developer Center と Code Capture 楽々 PowerCLI 生活

1,369 views

Published on

PowerCLI を利用した運用自動化 と vSphere API の構造を理解するための足掛かりとして、vCenter 6.7u2 で実装された Code Capture (Onyx) の機能を活用てみませんか?

Published in: Technology
  • If you want to download or read this book, copy link or url below in the New tab ......................................................................................................................... DOWNLOAD FULL PDF EBOOK here { https://urlzs.com/UABbn } .........................................................................................................................
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • If you want to download or read this book, copy link or url below in the New tab ......................................................................................................................... DOWNLOAD FULL PDF EBOOK here { https://urlzs.com/UABbn } .........................................................................................................................
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Download or read that Ebooks here ... ......................................................................................................................... DOWNLOAD FULL PDF EBOOK here { http://bit.ly/2m77EgH } ......................................................................................................................... Download EPUB Ebook here { http://bit.ly/2m77EgH } ......................................................................................................................... Download Doc Ebook here { http://bit.ly/2m77EgH } ......................................................................................................................... .........................................................................................................................
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Download or read that Ebooks here ... ......................................................................................................................... DOWNLOAD FULL PDF EBOOK here { http://bit.ly/2m77EgH } ......................................................................................................................... Download EPUB Ebook here { http://bit.ly/2m77EgH } ......................................................................................................................... Download Doc Ebook here { http://bit.ly/2m77EgH } ......................................................................................................................... .........................................................................................................................
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • If you want to download or read this book, copy link or url below in the New tab ......................................................................................................................... DOWNLOAD FULL PDF EBOOK here { https://urlzs.com/UABbn } .........................................................................................................................
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

Developer Center と Code Capture 楽々 PowerCLI 生活

  1. 1. ©2019 VMware, Inc. Developer Center と Code Capture で楽々 PowerCLI 生活 PowerCLI が今とても使い勝手良く進 化しています 川満 雄樹 Vmware K.K. vSAN Sales Team 2019/7/5 VMware DevOps Meetup #2
  2. 2. 2©2019 VMware, Inc. Onyx って使っていましたか?
  3. 3. ©2019 VMware, Inc. 3 vSphere Client (C#) or Flash Web Client (~6.0u2) をキャプチャして PowerCLI コード化 Onyx は PowerCLI のコード作成を支援する Flings ツールでした https://labs.vmware.com/flings/onyx https://labs.vmware.com/flings/onyx-for-the-web-client 第 1 世代 Onyx : vSphere Client (C#) 第 2 世代 Onyx : Flash Web Client
  4. 4. ©2019 VMware, Inc. 4 Onyx は Code capture と名を変えて最新の vSphere 6.7 でも利用が可能でしたが… その後、実は Fling 版の HTML5 Web Client の中に機能が復活 https://labs.vmware.com/flings/vsphere-html5-web-client 第 3 世代 Onyx : Onyx for HTML5 vSphere Client
  5. 5. ©2019 VMware, Inc. 5  従来の Onyx ( Code Capture ) は Flings ツールであって、正規サポートされたツールではな かった  それゆえ、本番環境へのインストールが必要な 第2世代 Onyx あたりで利用ユーザーが大幅に減っ てしまった…  また、環境毎に対応するバージョンも異なり、更新する際には 新規に OVF をデプロイした り、 vCenter Plugin を入れなおす必要があった  これまたリソースを Onyx のためだけに準備するのも面倒になってしまった。 第1世代 Onyx のようなシンプルさが求められた... 従来の Onyx ( Code Capture ) の課題
  6. 6. 6©2019 VMware, Inc. vCenter 6.7u2 使ってますか? Developer Center 機能で API Explorer と Code Capture (Onyx) が 結構イケてる感じに進化しました
  7. 7. ©2019 VMware, Inc. 7 vCenter 6.7u2 で API Explorer と Code Capture(Onyx) が標準実装 https://blogs.vmware.com/vsphere/2019/04/vcenter-server-6-7-update-2-whats-new.html https://blogs.vmware.com/code/2019/04/18/vsphere-developer-center-update/ 第 3 世代 Onyx : vCenter 6.7u2 HTML5 vSphere Client でついに標準実装化 Code Capture (Onyx) も正式サポート
  8. 8. ©2019 VMware, Inc. 8 API Explorer は 従来の専用View と vCenter View の二通りで実装 REST API 扱う人には便利な機能 https://<vCenter_IP>/apiexplorer/index.html vCenter 6.5 から実装された API Explorer も健在 ※ むしろこっちの方が curl のサンプル出してくれた りと親切... https://<vCenter_IP>/ui/#?extensionId=com.vmwa re.vsphere.client.h5.devcenter.apiexplorer vCenter 6.7u2 から実装された Developer Center 組み込みの API Explorer
  9. 9. ©2019 VMware, Inc. 9 Developer Center に組み込まれた vSphere API を直抜きして PowerCLI 化する機能 Code Capture(Onyx) の実装 操作の記録が PowerCLI のコードとして出力
  10. 10. 10©2019 VMware, Inc. Code Capture デモ どんなコードが生成されるのか?
  11. 11. ©2019 VMware, Inc. 11 操作の記録開始はCode Capture を有効にした後、 「記録を開始」 または、 メニューバーの ● 記録ボタンを押すだけ
  12. 12. ©2019 VMware, Inc. 12 記録中は ● ボタンがゆっくり点灯
  13. 13. ©2019 VMware, Inc. 13 試しに 1台のホストの 詳細設定を変更
  14. 14. ©2019 VMware, Inc. 14 とりあえず 1 ホストだけ 詳細設定'VSAN.ClomRepairDelay'を 60 -> 120 に変更 試しに 1台のホストの 詳細設定を変更
  15. 15. ©2019 VMware, Inc. 15 操作終了後は記録をストップ
  16. 16. ©2019 VMware, Inc. 16 エクセルやテキストエディタの マクロ記録の様に、記録実行中の操 作が API への操作という形で PowerCLI 化されて出力されます。
  17. 17. ©2019 VMware, Inc. 17 #---------------SupportedOption--------------- $_this = Get-View -Id 'OptionManager-EsxHostAdvSettings-19' $_this.SupportedOption #---------------UpdateOptions--------------- $changedValue = New-Object VMware.Vim.OptionValue[] (1) $changedValue[0] = New-Object VMware.Vim.OptionValue $changedValue[0].Value = 120 $changedValue[0].Key = 'VSAN.ClomRepairDelay' $_this = Get-View -Id 'OptionManager-EsxHostAdvSettings-19' $_this.UpdateOptions($changedValue) 出力されるコードは PowerCLI で操作する vSphere API のオブ ジェクトの形で吐き出されるので、PowerCLI コマンドレットの操 作だけになれてしまっていると少し戸惑うかもしれません。Get- View がいたるところに存在します。
  18. 18. ©2019 VMware, Inc. 18 $_this.Setting |where {$_.key -eq 'VSAN.ClomRepairDelay'} Key Value --- ----- VSAN.ClomRepairDelay 60 VSAN.ClomRepairDelay 60 VSAN.ClomRepairDelay 120 VSAN.ClomRepairDelay 60 試しに コードを PowerCLI に貼り付けて動作を確認。 4台のホストの設定値の状態を確認してみます。 ※ Get-AdvancedSetting -name 'VSAN.ClomRepairDelay' でも確認できますが、あえて $_this から情報を引いてみます
  19. 19. ©2019 VMware, Inc. 19 #---------------SupportedOption--------------- $_this = Get-View -Id 'OptionManager-EsxHostAdvSettings-19' $_this.SupportedOption #---------------UpdateOptions--------------- $changedValue = New-Object VMware.Vim.OptionValue[] (1) $changedValue[0] = New-Object VMware.Vim.OptionValue $changedValue[0].Value = 120 $changedValue[0].Key = 'VSAN.ClomRepairDelay' $_this = Get-View -Id 'OptionManager-EsxHostAdvSettings-19' $_this.UpdateOptions($changedValue) $vmhost = Get-VMHost $_this = Get-View -Id ($vmhost | get-view).ConfigManager.AdvancedOption $_this | foreach-Object{$_.UpdateOptions($changedValue)} 全ホストに同じ設定を入れたいので、特定ホストのIDが指定されて いた 'OptionManager-EsxHostAdvSettings-19' の代わりに、 Get-VMHost で全台分取り込むよう書き加え、PowerCLI コンソー ルにコピペして実行。 対象ホストを 全ホストに変更
  20. 20. ©2019 VMware, Inc. 20 $_this.Setting |where {$_.key -eq 'VSAN.ClomRepairDelay'} Key Value --- ----- VSAN.ClomRepairDelay 60 VSAN.ClomRepairDelay 60 VSAN.ClomRepairDelay 60 VSAN.ClomRepairDelay 60 全台設定変更されたか確認します。
  21. 21. ©2019 VMware, Inc. 21 (Get-VMHost) | Get-AdvancedSetting -name 'VSAN.ClomRepairDelay' | select Entity,Name,Value Entity Name Value ------ ---- ----- vxesx01.vx.local VSAN.ClomRepairDelay 60 vxesx04.vx.local VSAN.ClomRepairDelay 60 vxesx03.vx.local VSAN.ClomRepairDelay 60 vxesx02.vx.local VSAN.ClomRepairDelay 60 (Get-VMHost) | Get-AdvancedSetting -name 'VSAN.ClomRepairDelay' | Set-AdvancedSetting -Value 60 -Confirm:$false Name Value Type Description ---- ----- ---- ----------- VSAN.ClomRepairDelay 60 VMHost VSAN.ClomRepairDelay 60 VMHost VSAN.ClomRepairDelay 60 VMHost VSAN.ClomRepairDelay 60 VMHost 実は PowerCLI のコマンドレットにはこの辺りの機能はすでに実装されてい て、こっちを知っていればサクッと設定もできてしまいます...
  22. 22. ©2019 VMware, Inc. 22 #---------------ReconfigureComputeResource_Task--------------- $spec = New-Object VMware.Vim.ClusterConfigSpecEx $spec.GroupSpec = New-Object VMware.Vim.ClusterGroupSpec[] (1) $spec.GroupSpec[0] = New-Object VMware.Vim.ClusterGroupSpec $spec.GroupSpec[0].Operation = 'add' $spec.GroupSpec[0].Info = New-Object VMware.Vim.ClusterVmGroup $spec.GroupSpec[0].Info.Vm = New-Object VMware.Vim.ManagedObjectReference[] (5) $spec.GroupSpec[0].Info.Vm[0] = New-Object VMware.Vim.ManagedObjectReference $spec.GroupSpec[0].Info.Vm[0].Type = 'VirtualMachine' $spec.GroupSpec[0].Info.Vm[0].Value = 'vm-18' $spec.GroupSpec[0].Info.Vm[1] = New-Object VMware.Vim.ManagedObjectReference $spec.GroupSpec[0].Info.Vm[1].Type = 'VirtualMachine' $spec.GroupSpec[0].Info.Vm[1].Value = 'vm-17' $spec.GroupSpec[0].Info.Vm[2] = New-Object VMware.Vim.ManagedObjectReference $spec.GroupSpec[0].Info.Vm[2].Type = 'VirtualMachine' $spec.GroupSpec[0].Info.Vm[2].Value = 'vm-16' ' $spec.GroupSpec[0].Info.Name = 'ManageVMs' $spec.DrsConfig = New-Object VMware.Vim.ClusterDrsConfigInfo $spec.DpmConfig = New-Object VMware.Vim.ClusterDpmConfigInfo $modify = $true $_this = Get-View -Id 'ClusterComputeResource-domain-c8' $_this.ReconfigureComputeResource_Task($spec, $modify) しかし、vSphere API の構成を知るにはとても便利ですし、コマンドレット 知らなくてもコピペで流用できるのはとても便利 DRSグループを作る例
  23. 23. ©2019 VMware, Inc. 23 ちなみに現在の PowerCLI は PowerShell Gallery からモジュールを入れるだけ Windows だけでなく、Linux 用の PowerShell Core にも対応(一部機能は非対応) 公式情報は Vmware {code} に集約 https://code.vmware.com/web/tool/11.3.0/vmware-powercli
  24. 24. ©2019 VMware, Inc. 24 ちなみに現在の PowerCLI は PowerShell Gallery からモジュールを入れるだけ Windows だけでなく、Linux 用の PowerShell Core にも対応(一部機能は非対応) PS C:> Install-Module -Name VMware.PowerCLI インターネットにつながっていれば PowerCLI の導入はモジュールをPowerShell Galleryから落とすだけ Linuxでも使えるので、昔のようなvMA的な作 業VMを Linux + PowerCLI で作る事も可能 https://kwmtlog.blogspot.com/search/label/PowerCLI その他、個人的にブログにもまとめていますので、ご参考まで、、、
  25. 25. ©2019 VMware, Inc. Thank You

×