【VMware】Workstation8の仮想マシンをグレードアップしてみた

VMware Workstationを7から8へアップグレードしてあったのですが、そこで動かしている仮想マシン(VM)のバージョンはアップグレードしていなかったことに気がつきましたcoldsweats01

というわけで、アップグレードしてみました。

(1)仮想マシンのバージョンが古いと、当該仮想マシンのタブに「この仮想マシンのアップグレード」という選択肢が表示されているハズです。

Vws8vmupg01

(2)次へ。

Vws8vmupg02

(3)VMware Workstation 7で作った仮想マシンだったので、ハードウェア互換性が”Workstation 6.5-7.x”の仮想マシンバージョンになっていました。

Vws8vmupg03

(4)ハードウェア互換性を指定し直します。より古いバージョンにダウングレードすることも可能みたいです。

Vws8vmupg04

(5)ハードウェア互換性を指定したら、次へ。

Vws8vmupg05

(6)仮想マシンのバージョンを変える前に、当該仮想マシンのクローンを取得して、安全に手堅く、グレードアップすることも出来ます。私の場合、単なるテスト環境に過ぎないので、クローンは取らず、直接、仮想マシンを変更します。

Vws8vmupg06

(7)仮想マシンのバージョンをアップグレードすると、仮想ハードウェアが追加になります。”完了”をクリックすると、アップグレードが始まります。

Vws8vmupg07

(8)アップグレードが完了しました。

Vws8vmupg08

(9)アップグレードが終わったので、仮想マシンタブには「この仮想マシンのアップグレード」が表示されなくなります。

Vws8vmupg09

Windows MediaCenterの番組表更新(その2)

前回(Windows MediaCenterの番組表更新)、「番組表は放送波利用して自動更新される」ので、放置しておけば良い、としたのですが、MediaCenter自体が起動していないと、番組表が更新できないようです。

言い方を変えると、起動している時だけ、番組表を放送波経由で取得してるようです。 頻繁に録画をしていれば、頻繁に番組表が更新されるので、気がつきませんが、久々にMediaCenterを起動すると番組表データが無い事態に陥るみたいです。

というワケで、今は、MediaCenterは起動しっぱなしになってますcoldsweats01

Mce707

【VMware】VMware vCenter ConverterでP2Vしてみた

物理マシンを仮想マシンに変換するためのツールをVMwareが提供しているので、実際にP2Vを実行してみました。

(1)VMware vCenter Converterの入手は「VMware vCenter Converter, Convert Physical Machines to Virtual Machines」からダウンロードします。ダウンロードにはユーザ登録が必要です(無償ですけど)。今回、使ったバージョンは5(VMware-converter-all-5.0.0-470252.exe)です。

(2)インストールは簡単なのですが、P2Vの仕方に応じてインストールの仕方が変わります。今回は、物理マシンに直接、VMware vCenter Converterをインストールして、P2Vを実行したかったので、「ローカルインストール」をしています。リモートマシンをP2Vする場合は、「クライアントサーバインストール」の方を選択することになります。

P2v500

(3)インストールし終わったVMware vCenter Converterを起動すると、このような画面が開きます。

P2v501

(4)先の画面で「マシンの変換」をクリックすると、次のダイアログが表示されます。

P2v502

(5)今回はローカルマシンをP2Vするので、P2Vソースは”パワーオンのマシン”でかつ、”このローカルマシン”を選びます。

P2v503

(6)P2Vターゲット(P2Vした先のシステム種別)をVMware ESXi 4.1とするので、”VMware Infrastructure仮想マシン”を選びます。また、ESXiへの接続情報も合わせて入力します。

P2v504

(7)ここで、ESXiへ接続しようとすると、セキュリティ警告ダイアログが表示されますが、ここは無視します。

P2v505

(8)物理マシンをP2Vで仮想マシン化した際のマシン名を指定します。

P2v506

(9)ターゲットのESXiにリソースプールを作っている場合は、リソースプールを指定します。また、ESXi側でのデータストア領域を選びます。HAやDRSの機能を利用する前提の場合、ESXiのローカルストレージにP2Vしないようにしましょう。仮想マシンバージョンは、ESXiのサポートするバージョンに合わせます(ESXiなので”バージョン7”を指定)。

P2v507

(10)P2Vで仮想マシン化した際の、仮想マシンの設定を細かく設定することもできます。この画面で”編集”をクリックすると、個々に設定を変更することが出来ます。

P2v508

(11)「デバイス」の「メモリ」タブで、P2V後の仮想マシンへのメモリ割り当てを変更できます。

P2v509

(12)「デバイス」の「その他」タブで、P2V後のCPUとディスクコントローラの設定を変更できます。

P2v510

(13))「ネットワーク」から、P2V後に接続する仮想ネットワークを指定できます。NICの追加は、この時点ではできないようです。

P2v511

(14)「サービス」の「ソースサービス」タブで、P2Vを実行する前に、ソース側のOSサービスを停止するのか否かを指定できます。更新処理をするサービスは予め停止しておいた方が、中途半端な状態で仮想マシン化されないと思います。予め、OSで稼働するサービスの内容を調べておく必要がありますね・・・。

P2v512

(15)「サービス」の「ターゲットサービス」タブで、P2V後の仮想マシンで起動しておくべきOSサービスを指定できます。常識な手順としては、動作確認しながら、サービスを起動したり、起動モードを指定していくでしょうから、ここで、敢えて起動モードを変更しなくても、良いかもしれません。

P2v513

(16)「詳細オプション」の「同期する」タブでは、P2V後の仮想マシンのタイムゾーンを変更できるようです。

P2v514

(17)「詳細オプション」の「変換後」タブでは、P2V後の仮想マシンを起動するのか否か、VMware Toolsをインストールしてしまうのか否か、といった指定ができます。

P2v515

(18)「調整」では、P2V変換処理時に使われるCPUとネットワークの優先度を指定できるようです。

P2v516

(19)指定した内容に間違いがないなら、「終了」をクリックします。これで、P2Vが始まります。

P2v517

(20)P2V変換ジョブを生成している途中・・・

P2v518

(21)変換が始まると、ステータスのパーセンテージが変わっていきます。100%になれば、仮想マシンへの変換が完了しています。

P2v519

(22)変換中に、変換ジョブをクリックすると、画面の下半分に、(19)の内容を表示できます。

P2v520

(23)ステータスが”完了”になったところです。ログには”再構成が完了しました”と出ます。

P2v521

(24)vSphere ClinetでESXiへ接続すると、P2Vで変換した仮想サーバが、指定のリソースプールに表示されています。

P2v522

(25)OSも起動できます。

P2v523

(26)OSを起動したら、デバイスマネージャでデバイスの認識に問題がないかを確認します。今回は、USBデバイスの何かが認識できていないようですcoldsweats01

P2v524

というわけで、案外簡単にP2Vできました。が、サーバのハードウェア構成やOS上の稼働サービスの内容によっては、七転八倒するかもしれない、怖さを孕んでいる気がします・・・coldsweats02

なお、ブートCDを使って、オフライン状態の物理マシンのP2V(コールドクローン)を行うには、vCenter Converter 4.1.x以前が必要とのことです。4.3移行は、ホットクローンしかサポートしないそうです。

P2v525

Windows MediaCenterの番組表更新

Windows 7のMediaCenterを使っていますが、時々、番組表が更新出来ていないときがあります。そんな時は、手動で番組表を更新すれば良いのですが、いつも、やり方を忘れてしまうので、備忘録を兼ねて、ポストしておきます。

(1)「タスク」メニューの「設定」を開きます。

Mce701

(2)「全般」を選びます。

Mce702

(3)「自動ダウンロードオプション」を選びます。

Mce703

(4)「今すぐダウンロード」をクリックします。

Mce704

(5)程なくすると、「ダウンロードは正常に完了しました」と表示されれば、番組表がダウンロードできています。

Mce705

でも・・・、番組表が部分的にしかダウンロードできていないことも、しばしば・・・。で、まぁ、調べてみると、「番組表は放送波利用して自動更新される」んだそうです・・・(上に書いた手順、意味なしcrying)。

地デジ対応 Windows Media Center に関する追加情報

http://windows.microsoft.com/ja-JP/windows-vista/Japanese-Digital-TV-version-Windows-Media-Center

 

「テレビ番組表の最新版を入手する」の項目を読みましょう・・・

Windows 8 Consumer PreviewとWindows Server 8 Beta

Windows 8 Consumer PreviewとWindows Server 8 Betaが、MSDN Subscriptionで配布が始まりましたので、早速、インストールしてみました。

スクリーンショットだけですが、載っけておきますcoldsweats01

動作の詳細は、この辺(↓)を見ておくと、良いかも。

Windows 8コンシューマプレビュー版ハンズオン:もう後戻りできない(動画あり)  ギズモード・ジャパン

Windows 8 Consumer Preview

Windows8cp

Windows Server 8 Beta

Windowsserver8cp

いずれも、VMware Workstaion 8.02上にインストールしました。Windows 8 Consumer PreviewはゲストOSタイプを”Windows 7 x64”に、Windows Server 8 BetaはゲストOSタイプを”Windows Server 2008 R2”に指定してインストールしています。

【iPhone】iPhoneを探す!

先日、「iPhoneが無い!」ということで、「iPhoneを探す」機能を使って、探索してみました。

(1)まず、iCloudのサイト(https://www.icloud.com/)をブラウザで開きます。Windowsを使っているので、ブラウザはInternet Explorer 9です。Apple IDとパスワードを指定して、iCloudのサイトにログオンします。

Detect_iphone01

(2)サイトを開くと、いきなり、警告ダイアログが表示されますが、気にせず「OK」を押しておきます。

Detect_iphone02

(3)ログオンすると、「iPhoneを探す」以外にもアイコンが表示されます。「Mail」はMacからiCloudのサイトを開かないと、利用できませんが、「コンタクト」「カレンダー」「iPhoneを探す」はWindowsからも使えます。「iWork」はMac上でiWorkの設定を変えると、ブラウザ上から使えるようなのですが、Windowsからも使えるのかは不明。後で、試してみようと思いますcoldsweats01 たぶん、MicrosoftのOffice Web Appsみたいな感じなんでしょう。

Detect_iphone03

(4)「iPhoneを探す」をクリックすると、地図(GoogleMapかな?)が表示されて、画面左に、自分のApple IDに紐付いているデバイスが表示されます。この「iPhoneを探す」で探せるのは、”位置情報サービスがオン”になっているデバイスだけです。

Detect_iphone04_2

(5)実際に、こんな感じ(↓)で表示されます(実際の画面をハードコピーすると、自分の所在がバレバレなので、東京駅の地図にコピペしてますけどcoldsweats02)。

Detect_iphone06

(6)自分のiPhoneが地図上のどこにあるかが指し示されます。

Detect_iphone05_4

(7)フキダシの青い丸をクリックすると、リモートで自分のiPhoneへ指示を出せます。最悪の事態に備えて、”リモートワイプ”で中身を消すこともできますsweat01sweat01sweat01

Detect_iphone07_4

で、まぁ、iPhoneは無事見つかったのですが、コートのポケットに入っていたというオチでしたhappy02

【WMI】コンピュータからの情報収集の仕方

WMI(Windows Management Instrumentation)といえば、Windows OSを管理する上で、便利極まりないプログラミングインターフェイスですhappy01

VBScriptを使って、Windows OSから情報収集をしてみようと思います。

そのためには、まず、対象コンピュータに接続する必要があります。接続方法には2通りあります。

(A)資格情報を明示的に指定して、対象コンピュータへ接続する方法

(B)スクリプト実行ユーザの資格情報で、対象コンピュータへ接続する方法

以下に、具体的な接続コードを記載しておきます。

(A)資格情報を明示的に指定して、対象コンピュータへ接続する方法

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

Option Explicit

const strComputer="WIN2008R2AD"

const strUser="domain\administrator"

const strPassword="********"

const strNamespace="\root\CIMV2"

dim objLocator

dim objWMIService

set objLocator = CreateObject("WbemScripting.SWbemLocator")

set objWMIService = objLocator.ConnectServer(strComputer, strNamespace, strUser, strPassword)

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

スクリプトの実行者の資格情報(権限)ではなくて、スクリプト内で指定したユーザ(domain\administrator)の資格情報(権限)で対象コンピュータ(WIN2008R2AD)に接続することになります。この場合、スクリプトの実行者が単なるDomainUser権限しか有していなくても、DomainAdmin権限を持ったdomain\administratorとして、対象コンピュータに接続することになります。

(B)スクリプト実行ユーザの資格情報で、対象コンピュータへ接続する方法

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

Option Explicit

const strComputer="WIN2008R2AD"

const strNamespace="\root\CIMV2"

dim objWMIService

set objWMIService = GetObject("winmgmts:\\" & strComputer & strNamespace)

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

スクリプトの実行者の権限で対象コンピュータに接続することになるので、スクリプトの実行者が単なるDomainUser権限しか有していないなら、GetObjectのステップで、オブジェクトを取得することができません。errオブジェクトを拾うと、err.number=70、err.description=書き込みできません、が返ってくるハズです。

1つ気をつけないといけないのは、スクリプトを実行しているローカルコンピュータへの接続には、(A)の方法(資格情報を明示的に指定してコンピュータに接続)が利用できない点です。errオブジェクトを拾うと、err.number=-2147217308、err.description=ユーザー資格情報はローカル接続には使用できません、が返ってくるハズです。つまり、ローカルコンピュータへ接続する場合は、必ず(B)の方法を使わねばなりません。

例えば、ローカルコンピュータも含む企業内の全てのコンピュータから情報を収集しようとする時に、(A)の方法を使うと、ローカルコンピュータの情報がだけ収集できないということになります。だったら、DomainAdmin権限を有したユーザで(B)の方法で収集すれば良いのでは?という意見もあるでしょうが、滅多矢鱈にDomainAdmin権限のユーザでコンソール作業すべきではないというセキュリティ重視の考え方もあるので、状況に応じて、接続方法を考えてあげないといけないでしょう。

以下は、ちょっと工夫して、スクリプト実行ホストと対象コンピュータが同じかどうかを判断材料にしたスクリプトの例です。これなら、1つのスクリプトで賄えますsmile

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

Option Explicit

On Error Resume Next

const strComputer="WIN2008R2AD"

const strUser="domain\administrator"

const strPassword="********"

const strNamespace="\root\CIMV2"

const RetSameValue=0

dim objLocator

dim objWMIService

dim colItems

dim objItem

dim colTemp

dim objWshShell, objEnv

set objWshShell = WScript.CreateObject("WScript.Shell")

set objEnv = objWshShell.Environment("Process")

if((strComp(ucase(objEnv.Item("COMPUTERNAME")), ucase(strComputer)))=RetSameValue) then

    '*****ユーザ資格情報を利用しない接続の場合(ここから)*****************

    set objWMIService = GetObject("winmgmts:\\" & strComputer & strNamespace)

    if(err) then wscript.echo "[ERROR]:" & err.description & "(" & err.number & ")"

    '*****ユーザ資格情報を利用しない接続の場合(ここまで)*****************

else

    '*****ユーザ資格情報を利用して接続の場合(ここから)*****************

    set objLocator = CreateObject("WbemScripting.SWbemLocator")

    if(err) then wscript.echo "[ERROR]:" & err.description & "(" & err.number & ")"

    set objWMIService = objLocator.ConnectServer(strComputer, strNamespace, strUser, strPassword)

    if(err) then wscript.echo "[ERROR]:" & err.description & "(" & err.number & ")"

    '*****ユーザ資格情報を利用して接続の場合(ここまで)*****************

end if

if(err) then wscript.quit

set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled=True",,48)

if(err) then wscript.echo "[ERROR]:" & err.description & "(" & err.number & ")"

for each objItem in colItems

    wscript.echo "DNSHostName                     : " & objItem.DNSHostName

    for each colTemp in objItem.IPAddress

        wscript.echo "IPAddress                       : " & colTemp

    next

next

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

なお、対象コンピュータに接続した後は、Win32_NetworkAdapterConfigurationクラスのオブジェクトをWQLで取得しています。このクラスは、Win32クラスに属していて、名前空間はroot\CIMV2となります。

【Mac】テラキューブRAID USB(EX35TQ2B)をMacOSX Lionに繋いでみた

前回同様、Windowsと同じノリで、テラキューブRAID USB(EX35TQ2B)をMacOSX Lionに繋いでみました。

結論から言うと、認識はするけど、パーティションを作成できませんcrying

(1)ディスクを接続して、ディスクユーティリティを開くと、ディスクの存在は認識しています。認識しているので、なんか上手くいきそうな予感がしますが・・・

Macosxraidhdd01

(2)フォーマット形式を指定して、パーティションを確保を試みます。

Macosxraidhdd02

(3)さぁ、パーティションを作るぞ!

Macosxraidhdd03

(4)「装置の最後のブロックに書き込めません」とメッセージが出て、パーティションを確保できません。

Macosxraidhdd04

このディスクケースは、RAID1とコンバインモードも選択できますが、通常モードを含めて、同じメッセージが出ます。ケース本体のRAIDコントローラに対応したドライバをMacOSX Lionは持っていないということなんでしょう。製品ページには、MacOSX 10.3以降に対応と書いてありますが、ケース自体が古いので、最新OSには対応していないということですね。

【Mac】裸族のお立ち台CROSFU3をMacOSX Lionに繋いでみた

裸族のお立ち台 FireWire 800/400 & USB3.0(CROSFU3)をMacOS Xに繋いでみました。

Rzkmac01

ディスクを挿してみたところ(↓)。

Rzkmac02_2

ちなみに、製品サイトで確認すると、MacOSの対応バージョンはMac OS 10.5.8 / 10.6.7だったりします。MacOS X Linoは10.7.xなので、メーカー動作保証はないわけですが、Windowsのノリでいくと、”普通に動くでしょ?”ってことで、認識するか試してみましたcoldsweats01

(1)ハードディスクをセットした”裸族のお立ち台”の電源を入れて、MacOS X Lionへ接続します。

(2)ディスクユーティリティを起動します。「アプリケーション」フォルダの中の「ユーティリティ」フォルダを開きます。

Rzkmac03

その中に「ディスクユーティリティ」があります。

Rzkmac04_4

(3)ディスクユーティリティで、外付けのディスクが「1TB OEM Ext Hard Disk」として表示されていれば、ディスクが認識されたことになります(表示されたと言うことは、”裸族のお立ち台 FireWire 800/400 & USB3.0(CROSFU3)”はMacOS X Lionでも使えるっぽいということですcoldsweats01)。表示されていなければ、OSが認識できていません。もし、ドライブメーカーがドライバを提供してないのなら、諦めて別の製品を買うしかないですね・・・

Rzkmac05

(4)「パーティションのレイアウト」をプルダウンして、レイアウトを選びます。レイアウトを選ぶと、パーティションの「名前」「フォーマット」を指定できるようになります。フォーマット形式は、”MacOS拡張(ジャーナリング)”がデフォルト表示になっていたので、そのまま選択しました。

Rzkmac06

(5)念のため、オプションからパーティション方式を確認しておきます。MacOS拡張を選ぶと”GUIDパーティションテーブル”になっているハズです。

Rzkmac07

(6)(4)の画面で、「適用」をクリックすると、以下のダイアログが表示されます。「パーティション」をクリックすると、フォーマットが始まります。

Rzkmac08

(7)フォーマット中。1TBのディスクでしたが、5分もかからず、フォーマットが完了しました。

Rzkmac09

(8)フォーマットが完了すると、TimeMachineのバックアップディスクとして使うか?と聞いてくるので、特にバックアップの用途で使わないのであれば、「使用しない」を選びます。

Rzkmac10

(9)フォーマットが終わると、左ペインに、(4)で決めてディスク名が表示されるようになります。

Rzkmac11

(10)デスクトップ上に、(4)で決めたディスク名でハードディスクアイコンが表示されます。

Rzkmac12

(11)クリックすると、Finderで外付けディスクの内容が表示されます。

Rzkmac13

【VMware】仮想マシンのディスク情報を入手する

vSphere Hypervisor(ESXi)にはサービスコンソールがないので、仮想マシンの仮想ハードディスク(vmdk)がどうなっているのかを知るには、外部からスクリプトを使って入手するしかないようです。

一つずつ仮想マシンを指定して、get-harddiskを実行して、情報を取得するのも、Powershellっぽくないので、get-vmで取得した仮想マシン名を元に、get-harddiskで情報を取得します。

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

get-vm | foreach {get-harddisk -vm $_.name} | select-object Parent, Filename,CapacityKB, StorageFormat, DiskType | export-csv c:\tmp\list.txt

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

”$_”は直前のコマンドレットで取得したオブジェクトが格納されています。この場合は、get-vmで取得した仮想マシンの情報となります。仮想マシン名は、nameプロパティに格納されているので、”$_.name”をget-harddiskへ渡してあげます。

欲しい情報は、仮想マシン名、仮想ディスク名、ディスクサイズ、フォーマットタイプ、ディスク種別なので、select-objectで該当するプロパティを指定します。

最後に、この実行結果をCSV出力するために、export-csvに結果を渡しています。

CSVファイルに出力した結果は、次の通り。

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

#TYPE Selected.VMware.VimAutomation.ViCore.Impl.V1.VirtualDevice.FlatHardDiskImpl
"Parent","Filename","CapacityKB","StorageFormat","DiskType"
"Win2008R2","[DataStorage] Win2008R2/Win2008R2.vmdk","41943040","Thin","Flat"
"Win2003R2","[SystemStorage] Win2003R2/Win2003R2.vmdk","31457280","Thick","Flat"
"Win2003R2","[DataStorage] Win2003R2/Win2003R2_1.vmdk","20971520","Thick","Flat"
"Win2003R2-2","[DataStorage] Win2003R2-2/Win2003R2-2.vmdk","31457280","Thin","Flat"
"Win2003R2-2","[DataStorage] Win2003R2-2/Win2003R2-2_1.vmdk","20971520","Thin","Flat"

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

各コマンドレットの詳細な書式は以下を参照。

Get-VM - vSphere PowerCLI Cmdlets Reference

Get-HardDisk - vSphere PowerCLI Cmdlets Reference

ExportCsv Members (Microsoft.PowerShell.Utility.Activities)

get-vmとget-harddiskが取得するオブジェクトの詳細は以下を参照。

VirtualMachine - Object

HardDisk - Object

«【VMware】PowerCLIを使ってみる

2012年4月
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30          

最近のトラックバック

無料ブログはココログ