インストールメモ

 

CentOS 6.2(x86_64)のインストール

x86ベースのPCにCentOS 6をインストールします。今回は、KVMを使って同一PCに複数の仮想OSを稼働させてみます。

インストール対象マシン

 項目  種類  備考
 CPU  AMD Phenom x4 9750  
 マザーボード  ASUS M2N-SLI Deluxe  
 メモリ PC2-6400 1GB x 2
PC2-6400 2GB x 2
Corsair CM2X1024-6400 x 2
Patriot  
 グラフィックス  RADEON HD3650  PowerCooler製
 HDD HDT722525DLA380
WD10EARS
 

インストール

ホストOSのインストール

CentOS 6.2のDVDイメージをダウンロードし、DVD-Rに焼きます(2枚組)。

続いて、DVDを装填してPCの電源を起動し、インストーラが立ち上がったら[Install or upgrade an existing system]を選択
Disc Found - To begin testing the media before installation には[Skip]を選択
CentOS 6のロゴが表示されたら、右下隅の[Next]をクリック(気づきにくい)
What language ... では、[Japanese(日本語)]を選択して右下隅の[Next]をクリック
このシステム用の適切なキーボード... では、[日本語]を選択して右下隅の[次]をクリック
どちらのタイプのストレージデバイス... では、[Basic Strage Device]を選択し[次]をクリック
新規インストールか既存インストールのアップデートか聞かれたら、[新規インストール]を選択して[次]をクリック
→ CentOS 6が既にインストールされているときに確認してくるかと思われる
このコンピュータのホスト名... では、デフォルトの[localhost.localdomain]のまま[次]をクリック
使用するタイムゾーン... では、デフォルトの[アジア/東京]、[システムクロックにUTCを使用する]にチェックが付いたまま[次]をクリック
ルートユーザーは... では、ルートのパスワードを入力して[次]をクリック
どのタイプのインストールを... では、[Use All Space]を選択し、[パーティションのレイアウトをレビューまたは修正する]にチェックを入れて[次]をクリック
パーティション設定が表示されるので、LVMボリュームグループ>VolGroup>lv_home(/home)を削除し、lv_rootを選択し[編集]を押し、サイズを最大値に変更する。[次]をクリック
CentOSのデフォルトインストールは最小限インストール... では、Virtual Hostを選択し、今すぐカスタマイズを選択し[次]をクリック
左側メニューで[デスクトップ]を選択し、右側メニューで[X Window System]、[グラフィカル管理ツール]、[デスクトップ]を選択し[次]をクリック
→ [開発ツール]も入れるといいらしい
インストールが完了するとDVDトレイが排出されるので、DVDメディアを取り出し[再起動]をクリック
再起動後、しばらくすると、ようこそ画面が表示されるので、[進む]をクリック
ライセンス情報画面が表示されるので、[進む]をクリック
ユーザーの作成画面が表示されるので、root以外の作業用ユーザー名/パスワードを入力し[進む]をクリック
日付と時刻画面が表示されるので、[ネットワーク上で日付と時刻を同期化します]にチェックを付け、デフォルトで定義されているNTPサーバー(3つ)をそれぞれ選択し[削除]をクリックして空欄とした後、[追加]をクリックし、一例としてntp.nict.jpを指定し、[進む]をクリック
→ NICT(独立行政法人情報通信研究機構)が公開しているNTPサーバー。
Kdump画面が表示されるので、クラッシュダンプ解析をしないのであれば[Kdumpを有効にしますか?]のチェックを外し、[終了]をクリック
再起動後、ログイン可能ユーザーがリストされるので、先に作成したユーザーを選択、パスワードを入力しログインする。

ホストOSのネットワーク設定

インストール段階でネットワークの設定が表れなかったので、インストール後に個別設定します。

CentOS 6では、NetworkManagerというサービスが稼働してネットワーク制御を行います。しかし、KVMを使う場合、NetworkManagerではゲストOSをブリッジ接続することができないとあちらこちらに記述があったので、NetworkManagerを停止します。

[システム]メニュー>[管理]>[サービス]をクリックし、「サービスの設定」ダイアログでNetworkManagerを選択、[停止]ボタンを押し停止した後、[無効]ボタンを押しNetworkManagerサービスを無効化します。
または、コマンドで service NetworkManager stop を実行、chkconfig NetworkManager off を実行します。

「サービスの設定」ダイアログでnetworkを選択、もし実行中でなければ[開始]ボタンを押し開始し、もし有効でなければ[有効]ボタンを押しnetworkサービスを有効化します。

ネットワーク設定ファイル(/etc/sysconfig/network-scripts/ifcfg-eth0 等)を編集します。
以下は、DHCPからIPアドレス割り当てを受ける場合の記述です。

DEVICE=br0
TYPE=Bridge
BOOTPROTO=dhcp
ONBOOT=yes
DEVICE=eth0
HWADDR=xx:xx:xx:xx:xx:xx    ← 実際には使用しているNICのMACアドレスを記述
ONBOOT=yes
BRIDGE=br0

ゲストOSのインストール

仮想マシンマネージャ

[アプリケーション]メニュー>[システムツール]>[仮想マシンマネージャ]をクリックし、仮想マシンマネージャを起動する。

[新しい仮想マシンの作成]アイコンをクリックし、新しい仮想マシン作成ウィザードを表示する。
名前を入力し、OSのインストール方法(ローカルメディア:ISOイメージまたはCD-ROM等、ネットワーク等)を選択し[進む]をクリック
インストールするOSの種類はLinux、バージョンはRed Hat Enterprise Linux 6を選択し[進む]をクリック
メモリは1024MB、CPUは1を選択し[進む]をクリック
コンピュータのハードディスク上にディスクイメージを作成で、80GBを指定し[進む]をクリック

トラブルシュート

virshによるコンソール接続ができない

問題

virsh console foo でホストOSからゲストOSにコンソール接続すると、まったくキー反応がありません。

[torutk@hostmachine ~]$ sudo virsh console guestmachine
Connected to domain guestmachine
エスケープ文字は  ^] です 

のまま、どのキーを打っても無反応です。Ctrl + ] でコンソール接続を解除すると元に戻るだけです。

解決

ゲスト側にシリアルコンソール接続を受け入れる設定をする必要があります。

CentOS 6.2をゲストOSとして入れた時の設定は、カーネル起動オプションにシリアルコンソールを追加するもので、例は次のとおりです。

/etc/grub.conf の編集

アンダーライン箇所が追記部分です。

  kernel /vmlinuz-2.6.32-220.el6.x86_64 ro root=/dev/mapper/vg_guestmachine-lv_root
 rd_LVM_LV=vg_guestmachine/lv_root rd_NO_LUKS rd_NO_MD quiet rhgb crashkernel=auto
 KEYBOARDTYPE=pc KEYTABLE=jp106 LANG=ja_JP.UTF-8 rd_NO_DM rd_LVM_LV=vg_pecorino/lv_swap
 console=tty0 console=ttyS0,115200n8r

上記はHTML記載上改行を入れていますが、実際には1行で記述します。

補足