VMware/ESXi

Top/VMware/ESXi

インストール

VMware の ESXi 5.0 で遊ぶ。最近 update 1 が出た。

VMware Workstation 8 に入れる

  • ハイパバイザの要件的に 2 コア以上は必須。あとはてきとうでも入った

Virtual Box 4.1 に入れる

  • OS に ESXi が無いのでてきとうに 64 bit の RHEL ってことにしてみたら入った。コア数は 2 以上必須

こまごま

SATA の HDD を RDM でくっつける

vSphere Client からはいじれないのでコマンドでどうにかする。ESXi シェルサービスと SSH サービスを開始しておく。

  1. SSH で対象の ESXi ホストにログインする
  2. RDM でくっつける対象 SATA ディスクを特定する
    # ls -l /vmfs/devices/disks/
    -rw-------    1 root     root         1980760064 May 25 15:58 mpx.vmhba32:C0:T0:L0
    -rw-------    1 root     root            4161536 May 25 15:58 mpx.vmhba32:C0:T0:L0:1
    -rw-------    1 root     root          262127616 May 25 15:58 mpx.vmhba32:C0:T0:L0:5
    -rw-------    1 root     root          262127616 May 25 15:58 mpx.vmhba32:C0:T0:L0:6
    -rw-------    1 root     root          115326976 May 25 15:58 mpx.vmhba32:C0:T0:L0:7
    -rw-------    1 root     root          299876352 May 25 15:58 mpx.vmhba32:C0:T0:L0:8
    -rw-------    1 root     root      2000398934016 May 25 15:58 t10.ATA_____ST2000DM0012D9YN164__________________________________Z1E0LRSA
    -rw-------    1 root     root      2000397795328 May 25 15:58 t10.ATA_____ST2000DM0012D9YN164__________________________________Z1E0LRSA:1
    -rw-------    1 root     root       250059350016 May 25 15:58 t10.ATA_____ST3250318AS_________________________________________9VYD131H
    -rw-------    1 root     root          524288000 May 25 15:58 t10.ATA_____ST3250318AS_________________________________________9VYD131H:1
    -rw-------    1 root     root       249533825024 May 25 15:58 t10.ATA_____ST3250318AS_________________________________________9VYD131H:2
    lrwxrwxrwx    1 root     root                 20 May 25 15:58 vml.0000000000766d68626133323a303a30 -> mpx.vmhba32:C0:T0:L0
    lrwxrwxrwx    1 root     root                 22 May 25 15:58 vml.0000000000766d68626133323a303a30:1 -> mpx.vmhba32:C0:T0:L0:1
    lrwxrwxrwx    1 root     root                 22 May 25 15:58 vml.0000000000766d68626133323a303a30:5 -> mpx.vmhba32:C0:T0:L0:5
    lrwxrwxrwx    1 root     root                 22 May 25 15:58 vml.0000000000766d68626133323a303a30:6 -> mpx.vmhba32:C0:T0:L0:6
    lrwxrwxrwx    1 root     root                 22 May 25 15:58 vml.0000000000766d68626133323a303a30:7 -> mpx.vmhba32:C0:T0:L0:7
    lrwxrwxrwx    1 root     root                 22 May 25 15:58 vml.0000000000766d68626133323a303a30:8 -> mpx.vmhba32:C0:T0:L0:8
    lrwxrwxrwx    1 root     root                 72 May 25 15:58 vml.01000000002020202020202020202020203956594431333148535433323530 -> t10.ATA_____ST3250318AS_________________________________________9VYD131H
    lrwxrwxrwx    1 root     root                 74 May 25 15:58 vml.01000000002020202020202020202020203956594431333148535433323530:1 -> t10.ATA_____ST3250318AS_________________________________________9VYD131H:1
    lrwxrwxrwx    1 root     root                 74 May 25 15:58 vml.01000000002020202020202020202020203956594431333148535433323530:2 -> t10.ATA_____ST3250318AS_________________________________________9VYD131H:2
    lrwxrwxrwx    1 root     root                 73 May 25 15:58 vml.01000000002020202020202020202020205a3145304c525341535432303030 -> t10.ATA_____ST2000DM0012D9YN164__________________________________Z1E0LRSA
    lrwxrwxrwx    1 root     root                 75 May 25 15:58 vml.01000000002020202020202020202020205a3145304c525341535432303030:1 -> t10.ATA_____ST2000DM0012D9YN164__________________________________Z1E0LRSA:1
    
    
    • [t10.ATA] から始まるのが SATA ディスク。これはシンボリックリンクで、実体は [vml.*] のほうだけどどう見てもわかりにくいので t10.* でサイズやモデル名をみて特定する
    • パーティションが認識されている場合は末尾に [:1] や [:2] など数字が付いてくる。数字がないのがディスクそのもの。Linux でいう [/dev/sda] と [/dev/sda1] の関係みたいな感じ?
    • 今回は 250 GB のディスクだったので、[t10.ATA_____ST3250318AS_________________________________________9VYD131H] が正解
  3. RDM のマッピングファイルを作る
    ! vmkfstools -z <対象ディスク> <作成マッピングファイル> -a <アダプタ>
    # vmkfstools -z /vmfs/devices/disks/t10.ATA_____ST3250318AS_________________________________________9VYD131H /vmfs/volumes/datastore/hoge/hoge.vmdk -a lsilogic
    
    ! 以下ヘルプから抜粋
    ! vmkfstools -z --createrdmpassthru /vmfs/devices/disks/...
    !            -a --adaptertype [buslogic|lsilogic|ide]
    ! 末尾を [ide] にすると IDE でくっつく
    
  4. プロンプトが返ってきたらできあがり。vSphere Client で、できあがった .vmdk ファイルを [既存のハードディスクファイル] として追加するだけ

おまけ

マッピングファイルはテキストデータなので cat などで中をみられる。

  • 中身
    # cat /vmfs/volumes/datastore/hoge/hoge.vmdk
    
    # Disk DescriptorFile
    version=1
    encoding="UTF-8"
    CID=fffffffe
    parentCID=ffffffff
    isNativeSnapshot="no"
    createType="vmfsPassthroughRawDeviceMap"
    
    # Extent description
    RW 488397168 VMFSRDM "hoge-rdmp.vmdk"
    
    # The Disk Data Base
    #DDB
    
    ddb.virtualHWVersion = "8"
    ddb.longContentID = "25f4e6e0cc3b796abdbe791cfffffffe"
    ddb.uuid = "60 00 C2 92 bc a7 14 96-9a fe 3f 4b c2 bf 66 95"
    ddb.geometry.cylinders = "30401"
    ddb.geometry.heads = "255"
    ddb.geometry.sectors = "63"
    ddb.adapterType = "lsilogic"
    

シックプロビジョニングからシンプロビジョニングへ変換

vSphere Client からはできないのでやっぱりコマンドで操作。

  1. 変換したいディスクを握っている VM をシャットダウン
  2. SSH で対象 ESXi ホストにログイン
  3. 変換コマンドをたたく
    # cd /vmfs/volumes/datastore/hoge
    
    ! vmkfstools -i <ソース vmdk> -d thin <ターゲット vmdk>
    # vmkfstools -i hoge.vmdk -d thin fuga.vmdk
    Destination disk format: VMFS thin-provisioned
    Cloning disk 'v2v_src_1.vmdk'...
    Clone: 100% done.
    
    ! ヘルプは以下
    ! vmkfstools -i --clonevirtualdisk srcDisk
    !            -d --diskformat [zeroedthick|
    !                             thin|
    !                             eagerzeroedthick|
    !                             rdm:<device>|rdmp:<device>|
    !                             2gbsparse]
    

RHEL 6 を P2V して ESXi に乗せる

それまで動いていた物理 RHEL 6 を ESXi にまるっと乗せ換えた。Converter は非対応なんだけど RHEL 6 がおりこうなおかげで強引に問題なくできた。 個人の範囲だと気軽に使える P2V ツールが無くてつらい。商用だと Acronis 社の Universal Restore がよさそう。


Last-modified: 2012-05-26 (土) 16:21:49