2018 年 7 月の CAMP RUBRIK JAPAN で Session Speaker した際に,幸運にも Rubrik 社の Cheif Technologist である Chris と知り合いになることができ,その際に「次回は是非 VMUG に来て欲しい」と誘ったのですが,なんとその 8 ヶ月後に VMUG スピンオフ企画を実現することができました.
Chris の Session 前に,VMUG Member で Backup・データ活用をテーマに発表・ディスカッションを行ったので,私の Session についてここで補足しておきます.
Rubrik は vSphere 環境の Backup を効率的かつトラブルフリーで実施してくれています.2018 年 6 月から本番運用していますが,Backup 由来の障害が全く発生せず,Sysadmin としては本当に Happy な日々を過ごせています.
設定も簡単で,最初に Rubrik 側であらかじめ SLA を定義しておきます.
新しい VM を追加する際には,vCSA 側で SLA と紐づいた Folder に配置するだけで Backup 設定が完了してしまいます.
こんなに簡単で便利なのですが,さらに嬉しいことに豊富な API が用意されているのです!
REST API のドキュメントは https://FQDN or IP Addr/docs/v1/ で参照できます.また,vSphere の API Explorer のように Swagger UI が用意されていて, https://FQDN or IP Addr/docs/v1/playground/ からアクセスできます.実際のリクエストを Swagger UI からテストできるのでかなり便利です.
さらに,Chris は OpenSource Project として Rubrik Build を立ち上げていて,コミュニティとしての知見の共有にも力を入れてくれています.REST API で取得した json を Parse して処理するのはそれなりに煩雑だと思う方には,Rubrik の PowerShell Module がお薦めです.
(2019 年 3 月の時点では PowerCLI 6.0 以上が必要です.)
Module の追加は以下の通り,Execution Policy を確認して Install します.
PS /Users/kaz> Get-ExecutionPolicy Unrestricted PS /Users/kaz> Install-Module -Name Rubrik -Scope CurrentUser Untrusted repository You are installing the modules from an untrusted repository. If you trust this repository, change its InstallationPolicy value by running the Set-PSRepository cmdlet. Are you sure you want to install the modules from 'PSGallery'? [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "N"): Y
正しく Install されていることを確認して,早速使ってみましょう.
PS /Users/kaz> Get-Module -ListAvailable -Name Rubrik Directory: /Users/kaz/.local/share/powershell/Modules ModuleType Version Name ExportedCommands ---------- ------- ---- ---------------- Script 4.0.0.220 Rubrik {Connect-Rubrik, Disconnect-Rubrik, Export-RubrikDatabase, Export-RubrikReport...}
まず最初に,接続の準備をします.今回は $Credential 変数に認証情報を格納します.
PS /Users/kaz> $Credential = Get-Credential PowerShell credential request Enter your credentials. User: admin Password for user admin: ************
この Credential を使って rubrik に接続します.
PS /Users/kaz> Connect-Rubrik -Server FQDN_or_IPAddr -Credential $Credential Name Value ---- ----- header {Authorization} id 1222cd00-xxxx-4f27-baef-e478cccc2762 api 1 version 4.2.1-p2-1467 time 2019/03/12 21:25:23 userId 81e88496-da5e-xxxx-bfb8-bfd54aece87b server FQDN_or_IPAddr
Get-RubrikVersion を実行すると,Version 情報に加え,Geo Location 等も確認できます.
PS /Users/kaz> Get-RubrikVersion id : 20xxxf0a-7f65-xxxx-a1ca-1bb96ccb2d02 version : 4.2.1-p2-1467 apiVersion : 1 name : hogehoge timezone : @{timezone=Asia/Tokyo} geolocation : @{address=Seijō, ●●●区 東京都 日本} acceptedEulaVersion : 1.0 latestEulaVersion : 1.0
Introduction to the Rubrik SDK for PowerShell の Cmdlet サンプルを参考に,SLA 毎の VM 数をサマリー表示させてみます.
PS /Users/kaz> Get-RubrikVM | Where-Object {$_.EffectiveSlaDomainName -ne 'Unprotected'} | Group-Object -Property EffectiveSlaDomainName | Sort-Object -Property Count -Descending Count Name Group ----- ---- ----- 46 XXX-silver {@{hostName=xxxesxXX.xxx.ac.jp; effectiveSlaDomainId=0cbfddde-xxxx-490c-9a7d-a29ccccca2e3; primaryCluster... 2 XXX-bronze {@{hostName=xxxesxXY.xxx.ac.jp; effectiveSlaDomainId=7e7cab39-3175-xxxx-bbfb-531b8bbbbb50; primaryCluster...
Chris によると,Rubrik 社は GUI, CLI, API の全てにおいて共通のコマンドセットを実装する予定だそうです.
私もこの年度末の繁忙期を乗り越えたら PoshBot 使って色々試してみようと思います.
Thanks Chris and Roxie !!