vSAN 暗号化機能を使うには?

CJです。

 

vSAN6.6で新たに暗号化機能が追加されたこと、知っていますか。

vSANでは、2つタイプの暗号化機能が追加されています。

そのひとつ目は、仮想マシンストレージポリシーを使って VMごとに適用することができる ” VM 暗号化”、二つ目は、トランジットが発生していない時に vsanDatastore 全体を暗号化する “vsanDatastore 暗号化” です。

今日はそのうち vsanDatastore 暗号化機能をどうやって有効化するかについて共有したいと思います。

テスト環境情報

・vSAN 6.6.1 (ESXi 6.5 U1)

・Key Management Server (以下、KMS): HyTrust KeyControl

 

1. まずは、VCGの確認から

暗号化機能を使うためには、KMSサーバーが必須となります。

もちろん、vSAN環境なので既存のパーツと同じく、KMSサーバー自体も VCGにて管理されています。 このリスト上に掲載されているものからお使いください。

自分は、VMworldなどでも紹介されたりした HyTrustさんの KMSサーバーを使うことにしました。

2. KMSサーバーのデプロィ

vCenter と同一のネットワーク上に、KMSサーバーをデプロィします。

HyTrustさんからは、OVA 形式で仮想アプライアンスが提供されており、自分はこちらを使っています。#ISO形式でも提供されています。

また、KMSサーバーのシステム要件としては Standard基準として以下が求められています。

・2cpu / 8GB RAM / 20GB HDD

このように、必要なパラメーターを入力して、KMS仮想アプライアンスをデプロィします。

3. KMSサーバーの構成

vCenter (Windows版)より、HyTrust KMSサーバーへIEより接続します。

初回はデフォルトの “secroot / secroot” にてアクセス可能です。

ログイン直後に、パスワード変更が求められますので、パスワードの更新を行ってください。

KMIP構成画面より、Stateの有効化および VCGに掲載されていた Versionに合わせて設定を行います。

KMIP構成後は、Users > Create User にてユーザーを作成してください。

※本手順ではユーザーのパスワード入力なしにしてあります。

ユーザー作成後は、Actions > Download Certificate にて証明書を保存してください。後ほど vCenter にKMSサーバーを登録する際に使います。

保存した zipファイルを展開すると、上記のように2つのファイルがあります。

このうち、後ほどvCenter側で使うのは左側のファイル (KMIPUser.pem)となります。

4. vCenter に KMSサーバーを登録

KMSサーバーの準備ができたため、次は vCenterサーバーに KMSサーバーの登録を行います。 vCenter > 設定 > 詳細 > キー管理サーバー > KMSの追加

この後、引き続き信頼の確立を行い、”証明書およびプライベートキーのアップロード”を選択してください。

証明書とプライベートキーをアップロードするところが表示されたら、事前に保存しておいたユーザー証明書・キーファイル (KMIPUser.pem) をアップロードしてください。

証明書登録後も、接続状態が “正常” にならない場合があります。

※その際は、”すべてのアクション”メニューより、証明書の信頼アクションを実施すると改善されます。

5. vSAN 暗号化の有効化

これですべての準備が完了しました。

最後は、vSANクラスタの暗号化機能を有効にするだけです。

クラスタ > 設定 > vSAN > 全般 > vSAN設定の編集 > 暗号化 : チェックイン

そうすると、ディスクフォーマットが動作し、ディスクグループの再作成が行われます。

終わった後は、以下の通りに暗号化機能が有効になっていることがわかります。

ちなみに、vsanDatastore の暗号化によるパフォーマンス影響はほとんどないようです。

#CPUの負荷としては、5~15%程度。

まとめ

いかがでしょうか。

上記の4ステップだけで、vSAN 暗号化機能が簡単に使えるようになります。

既存のハードウェア製暗号化ソリューションに比べて、vSAN上で簡単な設定を行うだけで、セキュリティを高めることができるのはとても嬉しいです。

ぜひ、一度 vSANの暗号化機能をお試しください。

※KMSサーバーおよび vSAN暗号化を有効にするためには、それぞれに該当する適切なライセンスを購入・適用してください。詳しくは各KMSベンダーへお問い合わせください。

 

[参考情報]

vSAN クラスタでの暗号化の使用

https://docs.vmware.com/jp/VMware-vSphere/6.5/com.vmware.vsphere.virtualsan.doc/GUID-F3B2714F-3406-48E7-AC2D-3677355C94D3.html

HyTrust KeyControl with VMware vSphere VM and VSAN Encryption

https://docs.hytrust.com/DataControl/Admin_Guide-4.0/Default.htm#Books/VMware-vSphere-VSAN-Encryption/aaTitle-KeyCtrl-for-vmware-encrypt.htm%3FTocPath%3DHyTrust%2520KeyControl%2520with%2520VMware%2520vSphere%2520VM%2520and%2520VSAN%2520Encryption%7C_____0

 

 

vSAN のバージョンを確認するには?

CJです。

vSAN環境を運用していると、使える機能や制限事項などの確認のためにバージョン情報を確認したくなる場合があります。その際に有効な確認方法を共有したいと思います。

バージョンの考え方

vSANはHypervisor (ESXi) に予め組み込まれているもののため、基本的な考え方としては ESXi バージョンによって vSANのバージョンも変更される形になります。 イメージとしては以下のとおりです。

 

とてもシンプルでわかりやすい考え方だと思います。

# vSANバージョンごとの機能の違いはこちらの記事を参考にしてください。

vSphere 環境上での確認方法

では、実際 vSphere Web Client または PowerCLI などで明確にバージョンを確認する方法はないか気になる方もいると思います。 確認方法はあります。

まず、GUI (vSphere Web Client) 上では、クラスタ画面上でも、ホスト画面上でも特にvSANのバージョン情報は見当たらなかったです。個人的にはクラスタ or ホストのサマリページに表示されたら嬉しいと思いますが、とにかくないようです。

#もし、GUI上での確認方法がわかる方はお知らせください。

念のため、esxcli コマンドにても確認してみましたが、やはり明確な vSANバージョンは確認できないようです。

esxcli system version get

色々調べてみると、VMware社の社員である “William Lam”さんが、PowerCLIで確認できるスクリプトをすでに作成し、配布していましたのでそちらを使います。

#Thanks @lamw

早速、該当スクリプトファイルをダウンロードし、ローカルに配置してください。

自分の環境は Windows Server のローカルドライブ(D:)に配置しておきました。

次は、PowerShellを起動して、配置しておいたスクリプトをインポートします。

Import-Module -Name “D:\CJ\VCESXivSANBuildVersion.ps1”

そうると、モジュールがインポートされ、”Get-VSAN タブキー入力” で Get-VSANversion というコマンドレットが表示されることがわかります。これでバージョン確認の準備が完了しました。

実際、”Get-VSANversion” コマンドレットを使うために、vCenterサーバーへアクセスします。 #こちらのテスト環境では、localhost 指定にしています。ご自身の環境に合わせて適切に変更してください。

Connect-VIServer -Server localhost

では、早速スクリプトを実行してみましょう。

Get-VSANversion -ClusterName vSAN-CJ

きちんと、想定していた vSANの明確なバージョン情報が確認できました。

ちなみに、スクリプトの中身にも書いてありますが、こちらのバージョン情報は VMwareKBで公開されているバージョン情報をソースとしてあります。

また、本スクリプトは vSANだけではなく、ESXiやvCenterのバージョン情報も確認できますので、必要に応じて活用してみてください。

 

[参考情報]

PowerCLI script to help correlate vCenter, ESXi & vSAN build/versions w/o manual VMware KB lookup

PowerCLI script to help correlate vCenter, ESXi & vSAN build/versions w/o manual VMware KB lookup

Github:lamw/vghetto-scripts/powershell/VCESXivSANBuildVersion.ps1
https://github.com/lamw/vghetto-scripts/blob/master/powershell/VCESXivSANBuildVersion.ps1

Build numbers and versions of VMware ESXi/ESX (2143832)
https://kb.vmware.com/selfservice/search.do?cmd=displayKC&docType=kc&docTypeID=DT_KB_1_1&externalId=2143832

Build numbers and versions of VMware vCenter Server (2143838)
https://kb.vmware.com/selfservice/search.do?cmd=displayKC&docType=kc&docTypeID=DT_KB_1_1&externalId=2143838

Build numbers and versions of VMware vSAN (2150753)
https://kb.vmware.com/selfservice/microsites/search.do?cmd=displayKC&docType=kc&externalId=2150753&sliceId=1&docTypeID=DT_KB_1_1&dialogID=460798501&stateId=1 0 460808158