ラベル VMware の投稿を表示しています。 すべての投稿を表示
ラベル VMware の投稿を表示しています。 すべての投稿を表示

2014年6月8日日曜日

VMwareのOVFファイルをAWSへインポートする手順

VMWareESXi上で動作している仮想マシン(VM)をAWS環境にインポートする手順をまとめます。
今回インポートするVMのOSはCentOS6.5を例としています。インポートできるOSには制限があります。

1) VMWareESXi上のVMをOVFテンプレートのエクスポートでローカルPC等に保存。
2) AWSにてAmazon LinuxのEC2を作成。(Amazon EC2 API Tools がインストール済みだから)
3) 1)のOVFファイル群の中のvmdkファイルを2)で作成したEC2にFTP等でアップロード。
4) 2)のEC2にてec2-import-instanceコマンドでvmdkファイルからEC2を生成。

※keyやIDの値は実際には存在しないものに変更しています。

作業OS: Amazon Linux AMI release 2014.03
インポート対象OS: CentOS 6.5 (64-bit)



■Amazon EC2 API Tools の確認
[ec2-user@amazon-lnx ~]$ ll /opt/aws/apitools/ec2/
total 88
drwxr-xr-x 2 root root 20480 Mar 25 14:59 bin
-rw-r--r-- 1 root root   134 Jan 28 05:48 environment.sh
drwxr-xr-x 2 root root  4096 Mar 25 14:59 lib
-rw-r--r-- 1 root root  4852 Jan 28 05:48 license.txt
-rw-r--r-- 1 root root   539 Jan 28 05:48 notice.txt
-rw-r--r-- 1 root root 46468 Jan 28 05:48 THIRDPARTYLICENSE.TXT
[ec2-user@amazon-lnx ~]$
## 動作確認
[ec2-user@amazon-lnx ~]$ ec2-describe-regions -O AKIAXXXXE2DB7AVDFRE4 -W yXXXXXSKGX0mKsn8oL805DzOlR+rt56Drewi85MEmg
REGION  eu-west-1       ec2.eu-west-1.amazonaws.com
REGION  sa-east-1       ec2.sa-east-1.amazonaws.com
REGION  us-east-1       ec2.us-east-1.amazonaws.com
REGION  ap-northeast-1  ec2.ap-northeast-1.amazonaws.com
REGION  us-west-2       ec2.us-west-2.amazonaws.com
REGION  us-west-1       ec2.us-west-1.amazonaws.com
REGION  ap-southeast-1  ec2.ap-southeast-1.amazonaws.com
REGION  ap-southeast-2  ec2.ap-southeast-2.amazonaws.com
[ec2-user@amazon-lnx ~]$


■VMDKファイルを準備
※.ovfおよび.mfファイルはAWSには取込めないので不要。
[ec2-user@amazon-lnx ~]$ ll /home/ec2-user/cent65-web-disk1.vmdk
-rw-r--r-- 1 ec2-user ec2-user 1644029440 May 23 15:19 /home/ec2-user/cent65-web-disk1.vmdk
[ec2-user@amazon-lnx ~]$


■インポート用シェルスクリプト作成
[ec2-user@amazon-lnx ~]$ cat vmdk_import.sh
#!/bin/bash

ec2-import-instance \
    --region ap-northeast-1 \
    --aws-access-key AKIAXXXXE2DB7AVDFRE4 \
    --aws-secret-key yXXXXXSKGX0mKsn8oL805DzOlR+rt56Drewi85MEmg \
    --instance-type c3.large \
    --group forpublic-sg03 \
    --format VMDK \
    --architecture x86_64 \
    --platform Linux \
    --bucket cloud-bucket05 \
    --owner-akid AKIAXXXXE2DB7AVDFRE4 \
    --owner-sak yXXXXXSKGX0mKsn8oL805DzOlR+rt56Drewi85MEmg \
    --availability-zone ap-northeast-1a \
    --subnet subnet-62ac600b \
    /home/ec2-user/cent65-web-disk1.vmdk

exit 0
[ec2-user@amazon-lnx ~]$
keyはあらかじめ環境変数に設定しておけば指定する必要はありません。
セキュリティーグループを指定しても、なぜかデフォルトグループが設定されます。
インポートできるインスタンスタイプに制限があります。こちらを参考にしてください。
availability-zoneを指定しないと下記のようなエラーに陥る場合があります。
[ec2-user@amazon-lnx ~]$ ./vmdk_import.sh
Requesting volume size: 100 GB
Client.InvalidParameter: Subnet 'subnet-62ac600b' is in the availability zone 'ap-northeast-1a'.
[ec2-user@amazon-lnx ~]$


■インポート実行
[ec2-user@amazon-lnx ~]$ ./vmdk_import.sh
Requesting volume size: 100 GB
TaskType        IMPORTINSTANCE  TaskId  import-i-fg5bb5f2       ExpirationTime  2014-05-30T07:51:01Z    Status  active  StatusMessage  Pending InstanceID      i-cdee1cd4
DISKIMAGE       DiskImageFormat VMDK    DiskImageSize   1644029440      VolumeSize      100       AvailabilityZone        ap-northeast-1c        ApproximateBytesConverted       0       Status  active  StatusMessage   Pending : Downloaded 0
Creating new manifest at cloud-bucket05/106dee24-5fff-4b4d-ac72-96b759e81450/cent65-web-disk1.vmdkmanifest.xml
Uploading the manifest file
Uploading 1644029440 bytes across 157 parts
0% |--------------------------------------------------| 100%
   |==================================================|
Done
Average speed was 7.145 MBps
The disk image for import-i-fg5bb5f2 has been uploaded to Amazon S3
where it is being converted into an EC2 instance.  You may monitor the
progress of this task by running ec2-describe-conversion-tasks.  When
the task is completed, you may use ec2-delete-disk-image to remove the
image from S3.
[ec2-user@amazon-lnxw ~]$
インポート作業中にS3を確認すると、指定したバケットに10MBのファイルがVMDKファイルサイズ分作成されていく。
インポートは成功。マネージメントコンソール上に新たなEC2が表示された。


■インポートしたVMの起動
マネージメントコンソールからstartしたが、下記エラー。
Are you sure you want to start this instance?
i-cdee1cd4 (cent65-web)
Error starting instances
Invalid value 'i-cdee1cd4' for instanceId. Instance does not have a volume attached at root (/dev/sda1)
原因はEBSを準備中に起動しようとしたため。しばらく待てば起動できた。
EC2正常起動完了後は、不要となったS3上のファイルは削除しました。


この情報が何かのお役にたてれば幸いです。m(_ _)m

2014年3月30日日曜日

ESXi 仮想ディスクをext4でフォーマット

VMware ESXi で仮想ディスクを作成し、LinuxOS上でext4でフォーマットして利用する手順です。
1) VIClientにて仮想ディスク追加
2) fdisk実行
3) ext4でフォーマット
4) ファイルシステムチェック
5) マウント

ESXi: 5.0.0
OS: CentOS 6.5 (64-bit)


■仮想ディスク追加
追加ボタンをクリック。
参照ボタンからデータストアを指定。

## Linux上で確認
OS起動中にVIClienにて仮想ディスクを追加することは可能ですが、再起動するまでは認識されません。
[root@centos65 ~]# df -hT
Filesystem                      Type   Size  Used Avail Use% Mounted on
/dev/mapper/vg_centos65-lv_root ext4    27G  4.4G   21G  18% /
tmpfs                           tmpfs  940M   80K  940M   1% /dev/shm
/dev/sda1                       ext4   485M   39M  421M   9% /boot
[root@centos65 ~]# ll /dev/sd*
brw-rw----. 1 root disk 8, 0  3月 30 08:15 2014 /dev/sda
brw-rw----. 1 root disk 8, 1  3月 29 23:15 2014 /dev/sda1
brw-rw----. 1 root disk 8, 2  3月 30 08:15 2014 /dev/sda2
[root@centos65 ~]#
[root@centos65 ~]# reboot
※再起動すると追加した仮想ディスクのデバイスファイルが作成される。
[root@centos65 ~]# ll /dev/sd*
brw-rw---- 1 root disk 8,  0  3月 30 11:12 2014 /dev/sda
brw-rw---- 1 root disk 8,  1  3月 30 02:12 2014 /dev/sda1
brw-rw---- 1 root disk 8,  2  3月 30 11:12 2014 /dev/sda2
brw-rw---- 1 root disk 8, 16  3月 30 11:12 2014 /dev/sdb ←ココ
[root@centos65 ~]#

■fdisk実行
ヘルプを表示したり領域を確認したりしていますが、実際に行うことは、
   n   新たに領域を作成する
   p   基本パーティション (1-4) ←設定はデフォルト選択
   w   テーブルをディスクに書き込み、終了する
上記だけです。
[root@centos65 ~]# fdisk /dev/sdb
デバイスは正常な DOS 領域テーブルも、Sun, SGI や OSF ディスクラベルも
含んでいません
新たに DOS ディスクラベルをディスク識別子 0xb5139ff6 で作成します。
あなたが書き込みを決定するまで、変更はメモリ内だけに残します。
その後はもちろん以前の内容は修復不可能になります。
警告: 領域テーブル 4 の不正なフラグ 0x0000 は w(書き込み)によって
正常になります

警告: DOS互換モードは廃止予定です。このモード (コマンド 'c') を止めることを
      強く推奨します。 and change display units to
         sectors (command 'u').

コマンド (m でヘルプ): m
コマンドの動作
   a   ブート可能フラグをつける
   b   bsd ディスクラベルを編集する
   c   dos 互換フラグをつける
   d   領域を削除する
   l   既知の領域タイプをリスト表示する
   m   このメニューを表示する
   n   新たに領域を作成する
   o   新たに空の DOS 領域テーブルを作成する
   p   領域テーブルを表示する
   q   変更を保存せずに終了する
   s   空の Sun ディスクラベルを作成する
   t   領域のシステム ID を変更する
   u   表示/項目ユニットを変更する
   v   領域テーブルを照合する
   w   テーブルをディスクに書き込み、終了する
   x   特別な機能 (エキスパート専用)

コマンド (m でヘルプ): p

ディスク /dev/sdb: 17.2 GB, 17179869184 バイト
ヘッド 255, セクタ 63, シリンダ 2088
Units = シリンダ数 of 16065 * 512 = 8225280 バイト
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O size (minimum/optimal): 512 bytes / 512 bytes
ディスク識別子: 0xb5139ff6

デバイス ブート      始点        終点     ブロック   Id  システム

コマンド (m でヘルプ): n
コマンドアクション
   e   拡張
   p   基本パーティション (1-4)
p
パーティション番号 (1-4): 1
最初 シリンダ (1-2088, 初期値 1):
初期値 1 を使います
Last シリンダ, +シリンダ数 or +size{K,M,G} (1-2088, 初期値 2088):
初期値 2088 を使います

コマンド (m でヘルプ): w
パーティションテーブルは変更されました!

ioctl() を呼び出してパーティションテーブルを再読込みします。
ディスクを同期しています。
[root@centos65 ~]#

■ext4でフォーマット
ext4の特徴は、
 ・最大1EBまでのボリュームサイズと、最大16TBまでのファイルサイズをサポート。
 ・日付範囲はext3より拡張され、1901年12月14日から2514年4月25日となった。
 ・タイムスタンプがナノ秒をサポート。
[root@centos65 ~]# mkfs -t ext4 /dev/sdb1
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
1048576 inodes, 4192957 blocks
209647 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
128 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
        4096000

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 24 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
[root@centos65 ~]#

■ファイルシステムチェック
[root@centos65 ~]# fsck /dev/sdb1
fsck from util-linux-ng 2.17.2
e2fsck 1.41.12 (17-May-2010)
/dev/sdb1: clean, 11/1048576 files, 109841/4192957 blocks
[root@centos65 ~]#

■マウント
[root@centos65 ~]# mkdir /data
[root@centos65 ~]# mount /dev/sdb1 /data
[root@centos65 ~]# ll /data
合計 16
drwx------ 2 root root 16384  3月 30 02:23 2014 lost+found
[root@centos65 ~]# df -hT
Filesystem                      Type   Size  Used Avail Use% Mounted on
/dev/mapper/vg_centos65-lv_root ext4    27G  4.4G   21G  18% /
tmpfs                           tmpfs  940M   72K  940M   1% /dev/shm
/dev/sda1                       ext4   485M   39M  421M   9% /boot
/dev/sdb1                       ext4    16G  172M   15G   2% /data
[root@centos65 ~]#
※/etc/fstabに記載していないので再起動するとマウントは解除されます。
仮想ディスクをext4で追加することができました。お疲れ様でした。

■マウント解除
[root@centos65 ~]# umount /data
[root@centos65 ~]# df -hT
Filesystem                      Type   Size  Used Avail Use% Mounted on
/dev/mapper/vg_centos65-lv_root ext4    27G  4.4G   21G  18% /
tmpfs                           tmpfs  940M   72K  940M   1% /dev/shm
/dev/sda1                       ext4   485M   39M  421M   9% /boot
[root@centos65 ~]#


こちらの情報が何かのお役に立てましたら幸いです。サイト継続ご協力のほどお願いいたします。m(_ _)m

2014年2月16日日曜日

VMware ESXiにOVFテンプレートのデプロイで仮想マシンを作成

VMware ESXiにOVFテンプレートからデプロイして仮想マシンを作成する手順です。
仮想マシン名はデプロイ設定の中で自由に変更することが可能です。

デプロイした仮想マシンはネットワーク関連設定(仮想MACアドレス等)を修正する必要があります。
そのあたりの手順も少し紹介したいと思います。

ESXi: 5.0.0


■OVFテンプレートのエクスポート


■ソース


■OVFテンプレートの詳細


■名前と場所
"centos64-custom" に変更してみました。


■ストレージ


■ディスクのフォーマット
シックプロビジョニング(Lazy Zeroed)
指定したサイズを初めから確保します。仮想ディスク作成時にはゼロで初期化しないため作成時間は短くてすみます。現場では最も多く利用されているタイプです。
シックプロビジョニング(Eager Zeroed)
最初の段階でゼロ初期化を行うので作成には時間がかかります。データをディスクに書き込む際にはゼロで初期化済みなので最もパフォーマンスの良い方式です。
シンプロビジョニング
仮想OSの使用量のみがデータストア上で専有するタイプのフォーマットで容量を節約できます。 

■ネットワークのマッピング


■終了準備の完了


■デプロイ中・・・


■MACアドレスの確認
VI Clientにて仮想マシンを右クリック
デプロイした仮想マシンを起動する前にMACアドレスをメモりましょう。
OSのデバイスファイルを変更する必要があります。


■ネットワーク接続でeth0を選択
GUIがあれば、システム > 設定 > ネットワーク接続
CUIの場合は、/etc/sysconfig/network-scripts/ifcfg-eth0 を修正。


■System eth0 の編集
デバイスのMACアドレスとIPアドレスを修正してください。

以上で、デプロイした仮想マシンを利用できるようになると思います。
その他、必要に応じてホスト名等を変更してください。


OVFテンプレートを利用すると一から仮想マシンを作成する場合に比べ非常に効率的です。
まぁ、AWSのAMI機能には遠く及ばない気もしますが・・・。

こちらの情報が何かのお役に立てましたら幸いです。サイト継続のご協力ありがとうございます。m(_ _)m


2014年2月15日土曜日

VMware ESXi上の仮想マシンをOVFでエクスポート

VMware ESXi上の仮想マシンをOVFでエクスポートする手順です。
OVF(Open Virtualization Format)とは、VMware独自のフォーマットと思われがちですが、
異なる仮想化ソフト同士で仮想マシンのイメージ・ファイルを相互にやりとりできるようにするための
標準フォーマットです。

今回はOSがCentOS6.4で仮想ディスクに16GBを割り当てた仮想マシンをWindows7のPCにOVF
テンプレートでエクスポートしてみます。

ESXi: 5.0.0


■OVFテンプレートのエクスポート
対象の仮想マシンを選択した状態で、画面のメニューを実行してください。


■OVF関連ファイル名を設定
デフォルトで仮想マシン名が表示されますが、変更することも可能です。
OVFテンプレート関連ファイルの保存先も任意に指定できます。


■ダウンロード中・・・
ネットワーク環境やディスク回転速度にもよりますが、今回は約10分程度でダウンロード完了しました。


■OVF関連ファイルのサイズ
仮想マシンに割り当てたサイズは16GBですが、エクスポートされたファイルサイズはそれより小さいです。
今回は約1.7GBでした。仮想マシンの使用済みディスクサイズに関連するようです。
centos64.mf                 (1KB)
centos64.ovf                (6KB)
centos64-disk1.vmdk (1,748,084KB)

次回はOVFテンプレートから仮想マシンをデプロイして作成する手順を記載したいと思います。
こちらの情報が何かのお役に立てましたら幸いです。サイト継続のご協力ありがとうございます。m(_ _)m

2014年2月8日土曜日

ESXi上の仮想マシン起動時にBIOS画面を表示

仮想マシンであっても起動順序の調整等でBIOS画面をいじりたくなる場合が多々、いえ、時々あります。忘れがちなので設定方法のメモを残しておきます。



■仮想マシン起動時にBIOS画面表示
対象の仮想マシンを右クリックして「設定の編集」画面を表示
オプションタブ > 強制的にBIOSセットアップ > 次回仮想マシンの起動時に・・・にチェック

※このチェックは1度きりで外れます。次々回はBIOS画面ではなく普通にOSが起動します。

仮想マシンを起動するとコンソールにBIOS画面が表示されます。


以上です。こちら情報が何かのお役にたてれば幸いです。m(_ _)m

2014年2月7日金曜日

VMware ESXiに直接SSHでログインする方法

以前はサーバルームの鍵を借りて、物理サーバの前まで行って、キーボードとディスプレイをつないで、"unsupported"コマンドなるものを打っていましたが、ESXi 5系からはvSphere ClientでSSHを有効化できるようになったので今さらですがメモを残しておきます。



■vSphere Clientの設定
構成 > ソフトウェア > セキュリティプロファイル > サービス > プロパティ


SSH(停止)を選択してオプションボタン


開始 > OKボタン


SSHが実行中になったことを確認して、OKボタン

以上で設定完了です。


■SSHでログインしてみる
putty等でLinux VMに接続するのと同じようにESXiサーバのIPを指定してSSHログイン。
Using username "root".
Server refused our key
Using keyboard-interactive authentication.
Password:
The time and date of this login have been sent to the system logs.

VMware offers supported, powerful system administration tools.  Please
see www.vmware.com/go/sysadmintools for details.

The ESXi Shell can be disabled by an administrative user. See the
vSphere Security documentation for more information.
~ # pwd
/
~ # ls -l
lrwxrwxrwx   1 root   root       49 Feb 10 13:31 altbootbank -> /vmfs/volumes/56a9157c-ead5c024-c408-3aff00d6f9ce
drwxr-xr-x   1 root   root      512 Feb 10 13:30 bin
lrwxrwxrwx   1 root   root       49 Feb 10 13:31 bootbank -> /vmfs/volumes/6f9e437d-5e7ca139-8701-cb7a8ae27e15
drwxr-xr-x   1 root   root      512 Feb 10 13:52 dev
drwxr-xr-x   1 root   root      512 Feb 10 13:49 etc
drwxr-xr-x   1 root   root      512 Feb 10 13:30 lib
drwxr-xr-x   1 root   root      512 Feb 10 13:30 lib32
drwxr-xr-x   1 root   root      512 Feb 10 13:30 lib64
-r-x------   1 root   root    13884 Apr 30 21:16 local.tgz
lrwxrwxrwx   1 root   root        6 Feb 10 13:31 locker -> /store
drwxr-xr-x   1 root   root      512 Feb 10 13:30 opt
drwxr-xr-x   1 root   root   131072 Feb 10 13:52 proc
lrwxrwxrwx   1 root   root       23 Feb 10 13:31 productLocker -> /locker/packages/5.0.0/
drwxr-xr-x   1 root   root      512 Feb 10 13:30 sbin
lrwxrwxrwx   1 root   root       49 Feb 10 13:31 scratch -> /vmfs/volumes/4fa9b24f-cd223c10-7347-3c4a927216ed
lrwxrwxrwx   1 root   root       49 Feb 10 13:31 store -> /vmfs/volumes/2dc678ef-40e5d96b-90bf-855aab9c5547
drwxr-xr-x   1 root   root      512 Feb 10 13:30 tardisks
drwxrwxrwt   1 root   root      512 Feb 10 13:43 tmp
drwxr-xr-x   1 root   root      512 Feb 10 13:30 usr
drwxr-xr-x   1 root   root      512 Feb 10 13:31 var
drwxr-xr-x   1 root   root      512 Feb 10 13:30 vmfs
drwxr-xr-x   1 root   root      512 Feb 10 13:30 vmimages
lrwxrwxrwx   1 root   root       18 Feb 17  2012 vmupgrade -> /locker/vmupgrade/


こちら情報が何かのお役にたてれば幸いです。m(_ _)m

2013年3月17日日曜日

CentOS 6.4 インストール手順 画面キャプチャ付

2013年3月9日にリリースされたCentOS6.4のISOファイルを取得し、VMware ESXi上に構築した手順を画面キャプチャ入りでまとめます。
Samba4に対応し、マイクロソフトのHyper-V上で動くようになったそうですが、ESXi上に構築します。

・VMware ESXi 5.0
・CentOS 6.4 (64-bit)
・Kernel: 2.6.32-358
・インストールパッケージタイプ: Desktop


■インストーラ起動


■Discチェック
チェック不要…。物理ディスクじゃなくisoファイルだし…。


■インストール開始


■言語選択
英語のままにしようかと迷いましたが、迷わず日本語で。



■ストレージデバイス
SANなんて高価な環境ありません。
どんなデータだって破棄しちゃってください。新規インストールなので何もないですが。



■ホスト名
とりあえず、「centos64」にしました。


■ネットワークの設定
「ネットワークの設定」 → 「編集」


「自動接続する」にチェック
「IPv4のセッティング」タブでアドレスとネットマスクを設定


■タイムゾーン
ここは日本っす。JSTで。なのでUTCのチェックを外す。


■rootパスワード


■インストール領域



■パッケージタイプ
Desktopを選択してみた。実際に使う場合はMinimal+カスタマイズになりそう。


■インストール処理
サーバのスペックによるけど30分くらい?


■インストール完了
この後、再起動が必要です。


■インストール後設定


■ライセンス情報
強制的に同意させられていると感じるのは自分だけ?


■ユーザーの作成


■日付と時刻
UTC時間になっているので必要に応じ修正する。


■Kdump
仮想サーバのメモリの割り当てが少なくて。すみません。
インストール後の設定作業も以上です。その後、ログイン画面が表示されるはず。


■ログイン



■デスクトップいじる
背景とテーマを変えてみた。


■OSの状況確認
[root@centos64 ~]# df -hT Filesystem Type Size Used Avail Use% マウント位置 /dev/mapper/vg_centos64-lv_root ext4 14G 3.3G 9.5G 26% / tmpfs tmpfs 499M 80K 499M 1% /dev/shm /dev/sda1 ext4 485M 33M 427M 8% /boot [root@centos64 ~]# rpm -qa | wc -l 1097 [root@centos64 ~]# uname -r 2.6.32-358.el6.x86_64 [root@centos64 ~]#
Desktopでインストールすると、httpdやSambaも自動でインストールされ、OS領域で3.3GBも消費する。
パッケージの数も1000以上!
カーネルバージョンは、「2.6.32-358」だそうです。

以上で作業終了です。