Quantcast
Channel: VMware Communities : Blog List - All Communities
Viewing all articles
Browse latest Browse all 3135

PowerCLI で vSphere / vSAN 環境での Oracle RAC むけ VM の構成情報を取得してみる。

$
0
0

PowerCLI を利用して、Oracle RAC 用に構成した vSphere / vSAN 環境の VM の情報を確認してみます。

 

vSphere / vSAN 環境に Oracle RAC を構築する場合に、いくつか VM に RAC むけの設定をします。

RAC の構築目的によって具体的な設定値は変わりますが、たとえば下記のような設定です。

  • vNICの数や、接続するネットワークを揃える。
  • 仮想ハード ディスク の VMDK ファイルを複数の VM で共有する。
  • VMDK ファイルは EagerZeroed Thick にして「Multi Writer フラグ」を設定する。
    (参考: https://kb.vmware.com/kb/2121181
  • 共有ディスクむけに容量を 100%予約する「仮想マシン ストレージ ポリシー」を作成する。
  • Oracle RAC のクラスタに参加している VM 同士を DRS のアンチ アフィニティ ルールで分割配置する。

など・・・

 

VM の設定項目が多いため、私のラボでは何か忘れていないか気づきやすいように

PowerCLI を利用して設定確認しています。

 

下記のようなスクリプトを作成しています。

get_rac-vm_info.ps1 · GitHub

  • ファイルは UTF-8(with BOM)で保存すると無難かなとおもいます。
  • 実行するときは、PowerShell / PowerCLI のウィンドウ幅を 100 くらいにしておくとよいです。

 

今回は、Windows で PowerCLI 10.0 を利用しています。

PowerCLI> Get-Module VMware.* | select Version,Name | Sort-Object

 

Version        Name

-------        ----

10.0.0.7893910 VMware.VimAutomation.Sdk

10.0.0.7894167 VMware.VimAutomation.Storage

10.0.0.7893909 VMware.VimAutomation.Core

10.0.0.7893915 VMware.VimAutomation.Cis.Core

10.0.0.7893906 VMware.VimAutomation.Common

 

 

PowerCLI>

 

スクリプトの実行前に、vCenter に接続しておきます。

PowerCLI> Connect-VIServer vc-sv01.go-lab.jp -Force | Out-Null

 

私のラボの RAC (db01 / db02 で 2ノード構成)で情報取得してみると、下記のようになっています。

vmx-13 の仮想マシンなので、OSTyep は「Oracle Linux 7 (64-bit)」にしています。

ESXi 6.5 での Guest OS の細分化について。(Oracle Linux 7 など)

PowerCLI> .\get_rac-vm_info.ps1 db01,db02

==========================================================================================

vCPU / vRAM

 

VM   PowerState NumCpu MemoryGB HwVersion OSType

--   ---------- ------ -------- --------- ------

db01  PoweredOn      2        8 vmx-13    Oracle Linux 7 (64-bit)

db02  PoweredOn      2        8 vmx-13    Oracle Linux 7 (64-bit)

 

==========================================================================================

Cluster

 

Cluster     : vsan-cluster-01

VsanEnabled : True

HAEnabled   : True

DrsEnabled  : True

EVCMode     : intel-haswell

 

==========================================================================================

Host

 

VM   Cluster         ESXi

--   -------         ----

db01 vsan-cluster-01 hv-i22.go-lab.jp

db02 vsan-cluster-01 hv-i21.go-lab.jp

 

==========================================================================================

vNIC

 

VM   Name                 Type NetworkName          StartConnected Connected

--   ----                 ---- -----------          -------------- ---------

db01 Network adapter 1 Vmxnet3 dvpg-vds01-vlan-1011           True      True

db01 Network adapter 2 Vmxnet3 dvpg-vds01-vlan-4001           True      True

db02 Network adapter 1 Vmxnet3 dvpg-vds01-vlan-1011           True      True

db02 Network adapter 2 Vmxnet3 dvpg-vds01-vlan-4001           True      True

 

==========================================================================================

vSCSI Controller

 

VM   Name                     Type BusSharingMode UnitNumber ControllerKey

--   ----                     ---- -------------- ---------- -------------

db01 SCSI controller 0 ParaVirtual      NoSharing          3          1000

db01 SCSI controller 1 ParaVirtual      NoSharing          4          1001

db02 SCSI controller 0 ParaVirtual      NoSharing          3          1000

db02 SCSI controller 1 ParaVirtual      NoSharing          4          1001

 

==========================================================================================

vDisk

 

VM   Name        Controller GB    StorageFormat           Persistence Sharing

--   ----        ---------- --    -------------           ----------- -------

db01 Hard disk 1       1000 16             Thin            Persistent sharingNone

db01 Hard disk 2       1000 40             Thin            Persistent sharingNone

db01 Hard disk 3       1001 30 EagerZeroedThick IndependentPersistent sharingMultiWriter

db01 Hard disk 4       1001 30 EagerZeroedThick IndependentPersistent sharingMultiWriter

db01 Hard disk 5       1001 30 EagerZeroedThick IndependentPersistent sharingMultiWriter

db01 Hard disk 6       1001 30 EagerZeroedThick IndependentPersistent sharingMultiWriter

db01 Hard disk 7       1001 30 EagerZeroedThick IndependentPersistent sharingMultiWriter

db01 Hard disk 8       1001 30 EagerZeroedThick IndependentPersistent sharingMultiWriter

db02 Hard disk 1       1000 16             Thin            Persistent sharingNone

db02 Hard disk 2       1000 40             Thin            Persistent sharingNone

db02 Hard disk 3       1001 30 EagerZeroedThick IndependentPersistent sharingMultiWriter

db02 Hard disk 4       1001 30 EagerZeroedThick IndependentPersistent sharingMultiWriter

db02 Hard disk 5       1001 30 EagerZeroedThick IndependentPersistent sharingMultiWriter

db02 Hard disk 6       1001 30 EagerZeroedThick IndependentPersistent sharingMultiWriter

db02 Hard disk 7       1001 30 EagerZeroedThick IndependentPersistent sharingMultiWriter

db02 Hard disk 8       1001 30 EagerZeroedThick IndependentPersistent sharingMultiWriter

 

==========================================================================================

Share vDisk

 

vDisk : Hard disk 3

Name  : [vsanDatastore-01] 60c4ab5a-6c3e-ca85-29da-b8aeedea7a23/db01_2.vmdk

VMs   : 2

VM    : db01,db02

 

vDisk : Hard disk 4

Name  : [vsanDatastore-01] 60c4ab5a-6c3e-ca85-29da-b8aeedea7a23/db01_3.vmdk

VMs   : 2

VM    : db01,db02

 

vDisk : Hard disk 5

Name  : [vsanDatastore-01] 60c4ab5a-6c3e-ca85-29da-b8aeedea7a23/db01_4.vmdk

VMs   : 2

VM    : db01,db02

 

vDisk : Hard disk 6

Name  : [vsanDatastore-01] 60c4ab5a-6c3e-ca85-29da-b8aeedea7a23/db01_5.vmdk

VMs   : 2

VM    : db01,db02

 

vDisk : Hard disk 7

Name  : [vsanDatastore-01] 60c4ab5a-6c3e-ca85-29da-b8aeedea7a23/db01_6.vmdk

VMs   : 2

VM    : db01,db02

 

vDisk : Hard disk 8

Name  : [vsanDatastore-01] 60c4ab5a-6c3e-ca85-29da-b8aeedea7a23/db01_7.vmdk

VMs   : 2

VM    : db01,db02

 

==========================================================================================

VM Storage Policy

 

VM   vDisk       StoragePolicy      ComplianceStatus

--   -----       -------------      ----------------

db01 Hard disk 1 vsan-policy-raid5         compliant

db01 Hard disk 2 vsan-policy-raid5         compliant

db01 Hard disk 3 vsan-policy-rac-01        compliant

db01 Hard disk 4 vsan-policy-rac-01        compliant

db01 Hard disk 5 vsan-policy-rac-01        compliant

db01 Hard disk 6 vsan-policy-rac-01        compliant

db01 Hard disk 7 vsan-policy-rac-01        compliant

db01 Hard disk 8 vsan-policy-rac-01        compliant

db02 Hard disk 1 vsan-policy-raid5         compliant

db02 Hard disk 2 vsan-policy-raid5         compliant

db02 Hard disk 3 vsan-policy-rac-01        compliant

db02 Hard disk 4 vsan-policy-rac-01        compliant

db02 Hard disk 5 vsan-policy-rac-01        compliant

db02 Hard disk 6 vsan-policy-rac-01        compliant

db02 Hard disk 7 vsan-policy-rac-01        compliant

db02 Hard disk 8 vsan-policy-rac-01        compliant

 

==========================================================================================

Storage Policy Setting

 

StoragePolicy      Capability                                                 Value

-------------      ----------                                                 -----

vsan-policy-rac-01 VSAN.proportionalCapacity                                    100

vsan-policy-rac-01 VSAN.hostFailuresToTolerate                                    1

vsan-policy-rac-01 VSAN.stripeWidth                                               2

vsan-policy-raid5  VSAN.replicaPreference      RAID-5/6 (Erasure Coding) - Capacity

vsan-policy-raid5  VSAN.proportionalCapacity                                      0

 

==========================================================================================

DRS Affinity Rule

 

Cluster   : vsan-cluster-01

Name      : drs-anti-affinity-rac-01

Type      : VMAntiAffinity

Mandatory : False

Enabled   : True

VMs       : db01,db02

 

PowerCLI>

 

vSAN 環境に RAC を構築した場合でも VM の構成は VMFS データストアの場合とあまり変わりませんが、

VMDK は EagerZeroed Thick にして、さらに「仮想マシン ストレージ ポリシー」で

オブジェクトの容量予約を 100% にしておきます。

 

Oracle RAC では(ゲスト)OS の iSCSI Initiator から

直接接続した iSCSI デバイスを共有ディスクとして利用することもできます。

一方、vSAN に iSCSI Target を提供する機能がありますが、

現時点(2018年3月)では物理マシンでの RAC のみを対象としているようです。

そして vSAN では RDM には対応しないので

ゲスト OS で RAC を構築するときには VMDK 共有をすることになるはずです。

 

下記の KB に制限が記載されていました。

 

vSAN 6.5 iSCSI デバイスを使用するためのベスト プラクティス (2151966)

https://kb.vmware.com/kb/2151966

制限

  • 現在、Microsoft クラスタの実装ではサポートされていません。
  • 現在、他の vSphere ホストのターゲットとしての使用はサポートされていません。
  • 現在、サードパーティのハイパーバイザーでの使用はサポートされていません。
  • 現在、仮想マシンでの使用はサポートされていません。

 

また、VMware から vSAN + Oracle RAC についてのドキュメントも公開されているので、

本番環境(デモ/開発むけのラボ環境ではなく)での構築となる場合には確認しておくとよいと思います。

 

Oracle Real Application Clusters on VMware vSAN

https://storagehub.vmware.com/t/vmware-vsan/oracle-real-application-clusters-on-vmware-virtual-san/

 

以上、PowerCLI を利用した Oracle RAC VM の情報取得例でした。


Viewing all articles
Browse latest Browse all 3135

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>