検証環境を作成しよう その3 Hyper-Vの設定
- Hyper-Vのインストール
hyper-Vはサーバマネージャの役割から「役割の追加」を実行します。基本的にデフォルトの設定で大丈夫です。途中で外部仮想ネットワークを作成するかどうかの設定があるので、2つ作成します。外部仮想ネットワークを作成すると、ホストOSのネットワーク接続がちょっとややこしくなります。
「ローカル エリア接続」と「ローカル エリア接続2」は元からありましたが、外部仮想ネットワークを作成することで、4と5が出てきました。IPアドレスの設定を行う場合は、新しくできたほうで設定を行います。元のほうは、プロパティを見ると「Microsoft 仮想ネットワーク スイッチ プロトコル」のみにチェックが入っており、設定が行えません。
仮想ネットワークについては、後で説明を書くかもしれません。
- 仮想マシンが保存される場所
デフォルトで保存される場所はhyper-Vマネージャの「hyper-Vの設定」から確認できます。デフォルトでは
VHDファイル C:\Users\Public\Documents\Hyper-V\Virtual Hard Disks
仮想マシン C:\ProgramData\Microsoft\Windows\Hyper-V
となっています。仮想マシン作成時に場所を選択できるので、このフォルダは使いません。使っている人はあまりいないでしょうね。
ただし、仮想マシンのインポートを行うときに、「すべてのファイルを複製し、同じ仮想マシンを再度インポートできるようにする」にチェックをいれると、このデフォルトの場所にファイルが作成されるので気を付けましょう。
- 仮想マシンの削除
仮想マシンを削除してもファイルは消えません。手動でファイルを消しましょう。
コマンドプロンプトのif errorlevelの落とし穴
直前に実行したコマンドの戻り値がerrorlevelに設定されるので、この値を使って分岐することはよくあると思います。
ここで、「errorlevelが1なら"errorlevelは1です"を表示する」という処理をしようとして
if errorlevel 1 echo errorlevelは1です |
とするのは間違いです。なぜかというと、「if errorlevel 数値 コマンド」というのは、errorlevelの値が数値以上の場合にコマンドを実行するからです。この場合、errorlevelが10でも100でも「errorlevelは1です」が表示されてしまいます。
正しく処理するには以下のようにします。
if %errorlevel% == 1 echo errorlevelは1です |
ちなみに、==のかわりにEQUを使えます。
検証環境を作成しよう その2 ホストOS(Windows Server 2008 R2)のセットアップ
今回はホストOSの入手からインストール、初期設定まで書きます。
- technetサブスクリプションからダウンロード
※technetサブスクリプションを購入してないとダウンロードできません。
http://technet.microsoft.com/ja-jp/subscriptions/default.aspx
必要なものバリバリダウンロードしてください。ダウンロードは専用のダウンローダが必要になります。何かダウンロードしようとすると、まずこのダウンローダのインストールが開始されます。ライセンスキーが必要なものは取れるだけ取っときましょう。昔は10個ライセンスキーがもらえたのですが、現在は数個ですね。違法に使う人がいるからですよ(`ω´)
ダウンローダのバグかどうか知りませんが、たまにダウンロードができません。その場合はフォルダ名を変えてみてください。私の場合、system center系の製品を「system center」フォルダにダウンロードしようとしたら、ダウンロードが開始されませんでした。フォルダ名を変えたところ、ダウンロードができました。フォルダ名に「system center」があるとダメなようです。
製品名が「xxx with service pack 1」となっているのは、xxxにsp1が適用済みのファイルです。「xxx service pack 1 」はxxxに適用できるサービスパックのファイルです。「windows xp service pack 3」をダウンロードしてwindows xpをダウンロードした気にならないでくださいね。「windows xp with service pack 3」ですよ!
- Windows Server 2008 R2 インストール
ソフトウェアをダウンロードして、DVD-Rに書きこんだら、インストールをしましょう。まずはBIOSの設定をいくつか変更します。BIOS設定画面は電源投入後、何かのキーを押すのが一般的ですが、サーバのメーカによって違います。DELETE、F1~F12あたりがよく使われます。電源入れてすぐ画面上に「press XXX to setup bios」みたいなのが出るので、この指示に従いましょう。
設定項目は以下の3つです。
- 起動順序
- データ実行防止
- ハードウェア支援による仮想化
1はDVD、HDDの順で起動するようにします。HDDが一番上のことがよくあります。2と3はhyper-vのための設定です。
http://technet.microsoft.com/ja-jp/library/cc816844(WS.10).aspx
それっぽいのを見つけて有効化してください。デフォルトで有効になっていると思いますが(´ω`)
設定が終わったら、DVD-Rを入れ、設定を保存して終了します。次はOSのインストールです。
・・・適当にインストールして下さい。ほぼデフォルトで構いません。ハードディスクが1つだけならパーティションを切って、OSシステム用ドライブとデータ用ドライブに分けたほうがいいでしょう。OSシステム側は50GBほどで。
- 初期設定
インストール完了したら初期設定をします。サーバにログオンすると「初期構成タスク」が起動しますが、左下のチェックボックスをチェックして閉じます。チェックしないとログオンするたびに出てきます。今度は「サーバマネージャ」が立ち上がります。これもログオン時に起動するかどうかのチェックボックスがありますが、よく使うのでオンのままでもいいでしょう。
サーバマネージャの画面から以下の設定をします。
1.「システム プロパティの変更」→「コンピュータ名」タブ→「変更」ボタンをクリックし、「コンピュータ名」を設定します。わかりやすい名前にしましょう。再起動をするか聞かれますが、まだ再起動しません。
2.「ネットワーク接続の表示」→「ローカル エリア接続」を右クリック→「プロパティ」→「インターネットプロトコルバージョン4」を選択→「プロパティ」でIPアドレスの設定をします。デフォルトゲートウェイとDNSサーバはブロードバンドルータのIPアドレスにします。
3.「リモートデスクトップの構成」からリモートデスクトップ接続を許可します。これにより普段使っているPCからリモートデスクトップ接続で操作できるようになります。ここで出てくるネットワークレベル認証とは、サーバに接続する前に認証を行い、セキュリティレベルを高くして、サーバの負荷を減らす機能です。ネットワークレベル認証を使用すると、リモートデスクトップクライアント(RDC) 6.1以上が必要になります。XPSP3はRDC6.0だったと思います。Win7はRDCはもっと新しいです。確実に接続するためにネットワークレベル認証を使わないようにしましょう。
4.「更新プログラムの構成」から更新プログラムを当てる方法を設定します。勝手に当てられるのは嫌なので「更新プログラムを確認しない」にします。
5.「IE ESCの構成」でIE ESCを無効にします。有効のままだと超不便です。正常に表示されないサイトも出てきちゃいます。
6.「Windows ファイアウォールの表示」→「windowsファイアウォールのプロパティ」でドメイン、プライベート、パブリックのすべてで無効にします。
こんなもんですかね(´ω`)
- ドライバ、更新プログラムインストール
まずドライバからインストールします。サーバ買ったときにディスクが入っているので、それをインストールします。ドライバがアップデートされることもよくあるので、メーカのサイトからダウンロードするのもアリです。
終わったら更新プログラムをインストールします。「コントロールパネル」→「Windows Update」からできます。
- オフロード処理の無効化
Hyper-Vをインストールするとネットワークが遅くなることがあります。その場合、この設定をすると回避できます。以下のサイトが参考になります。
http://www.atmarkit.co.jp/fwin2k/win2ktips/1404noffload/noffload.html
1週間に一回更新ギリセーフwww
検証環境を作成しよう その1
- 目的
私の場合、マイクロソフト製品の導入が主な仕事なので、Widnowsサーバーやその他サーバ製品が使用できる検証環境を作成します。ネットワークは「検証環境を作成しよう その0」で示した通りです。
ちなみに、開発(プログラミング)はやってません。開発は会社ではやらずとも、個人でやってみたいとは思っています。
- ハードウェア
正直、ハードウェアは詳しくありません(汗。なので、ハードウェアの選定とかどうすればいいか知りません(汗。
まあ、検証環境なので、高価なものである必要性はまったくないので安いものを買いましょう。メーカー物で格安のサーバは以下サイトを参考にするといいでしょう。
http://wiki.nothing.sh/1751.html
適当に選んで、あとは仮想化のためにメモリを買いましょう。メモリはECCメモリじゃないと使えない場合があるので気を付けてください。non ECCメモリにも対応しているかどうかはメーカのサイトから確認できます。
オペレーティングシステムがインストールされていないものを買いましょう。linux系は無料で使えるものが多いですし、Windows系はtechnetサブスクリプションでほぼ全て入手できます。
わたしがどのメーカのサーバを買ったかというと・・・なんと、自作です。自作するともっと安くなるかといえば、そんなことはなく、むしろ高くなっています。ならばなぜ自作したかというと、自作したかっただけです。それだけで数万円の価値がある、と思っています。自作したいのであれば、以下をヒントにしてください。
・はじめに
ベストゲートで価格比較をしましょう。価格.comよりいいです。
RAIDやりません。やりたい人は自分で調べてください。
ASUSしかわからない・・・。SUPERMICROとか調べてない・・・。とりあえずP8B-XかP7F-Xを買ってください。P8B-Xのほうが新しいので、おすすめです。これでだけでもうNECのサーバGT110bより高い。
www.asus.comからマザーボードの仕様が見れます。CPU、メモリの選択に欠かせない情報があるので必ず確認しましょう。www.asus.co.jpだと最新のマザーボードの情報がありませんので注意してください。
・CPU
P8B-X、P7F-Xに対応したCPUを買いましょう。といっても、仮想化に対応させるためにXeonが必須です。P8B-XならXeon E3-1220、P7F-XならXeon X3430が一番安い。Xeon E3-1220のほうが新しいです。
・メモリ
P8B-Xの場合、ECC UDIMMが必須です。 P7F-XだとECC UDIMMもnon ECC UDIMMも使えます。ベストゲートで安いの探してください。4GB×2もあれば十分ですが、私は載せられるだけ載せてます。たぶん意味ない。
・HDD
安物買ってください。
・DVDROMドライブ
安物買ってください。
・ケース
安物買ってください。大きいほうが組み立てやすいです。電源付きでもいいです。
・電源
350Wもあれば十分です。HDD複数接続のため、SATAが複数あるといいです。4pin→SATA変換ケーブルが必要になるかもしれません。
こんな所ですか(´ω`)。私が買ったのはP7F-Xです。約2年前に買ってほとんど使用せず今に至っています。なんて体たらくな!!3台持っておりそのうち1つはP7F-Eと1ランク上のマザーボードです。なんて無意味な!!
- ソフトウェア
目的に書いてあるようにマイクロソフト製品を手に入れます。検証目的なのでTechnetサブスクリプションProfessionalを買います。約4万円でほぼすべての製品が使用できます。
注意しなければいけない点が2つあります。1つ目は「ユーザ単位のライセンス」です。 普段使うWindowsオペレーティングシステムは「デバイス単位のライセンス」が普通であり、1ライセンスに付き1台にインストールできて、複数人で使えます。Technetサブスクリプションは1ライセンスに付き複数台にインストールできて、1人が使えます。1つだけ買って、複数の人で使うのはライセンス違反です。使う人の数だけ買う必要があります。2つ目は「使用目的」です。Technetサブスクリプションで手に入れた製品は評価目的でのみ使用できます。これを実際の運用環境(業務、ネットサーフィン、ゲームなど)で使用することはできません。詳しくはTechnetサブスクリプションのFAQを見てください。
あと、PPPoEサーバを建てるので、CentOS 5.7をダウンロードしてください。無料です。
- ルータ
いくつかのルータはヤフオクで中古品が安く買えます。RTX1000がおすすめです。ルータの勉強にもってこいの製品だと思います。ネットワーク機器メーカはシスコが有名ですけどね。
「検証環境を作成しよう その0」のネットワーク図のAirStationはバッファローのブロードバンドルータです。これは普段からインターネット接続に使用しているので、検証環境とは関係ありません。検証環境もネット接続しますよって説明してるだけです。
- その他
DVD-R数枚。ホストOSのインストールに必要です。ゲストOSはisoファイルから読み込めるので不要です。そのため、ホストOSのみをDVDに書き込みます。
次の記事はROUTER01のセットアップです。1週間以内に書けたらいいね。
検証環境を作成しよう その0
検証環境を作成しよう、というか作った。
グローバルIPを複数使ったり、インターネットからのアクセスを想定した検証環境です。
そして、そのネットワーク図をnetwork notepadを使用して作成、それが以下の図です。
172.16.0.0/16がインターネット、192.168.1.0/24が内部ネットワーク、172.17.0.0/16がDMZです。DMZはグローバルIPアドレスを想定しています。
ROUTER01、HOST01、HOST02はhyper-vを入れたWindows Server 2008 R2 Enterpriseです。ライセンスはもちろんtechnetサブスクリプション。製品版なんて買ったら金がなくなる(笑)
そしてROUTER01のゲストにCentOSを追加し、PPPoEサーバの役割を担ってもらってます。
似たような検証環境を作りたいって人がいるかもしれないので、次からは検証環境の作成手順を書いていこうかなと思います。ハードウェア、ソフトウェアの購入とかもね。
・・・しかし、何の検証をしようか決めていないという状態。どうしようか・・・
ブログ開始
自分が勉強したことを書いていく予定です。
目標
1週間に1回更新する。
・・・無理かもしれない(´ω`)