Fatal Error: Unexpected BLOG

主に自分用の備忘録として

【VM】【環境構築】VirtualBoxを使ってPC上に開発環境を構築する(1 - CentOSをインストールする)

PC(Windows7)上にVirtualBoxを使ってWeb開発環境を構築します。

目標とする環境は以下の通り。

・Webサーバ(Nginx1.6.2)×2台(クラスタリング

・DBサーバ(MySQL5.6.13)×2台(レプリケーション

・コントロールサーバ×1台

・OSは全てCentOS6.4(え・・・)

PHPは5.5.20(PHP-FPM)

VM上でクラスタリングとかロードバランサとか出来るか分からないですが、とりあえず目標として。

 

第一回はひとまずVMCentOSをインストールしてネットワークを設定するまで。

 

以下のサイトを参考にしました。

 

VirtualBoxをインストールする

OracleのサイトでWindowsインストーラが配布されているので、それで。

Oracle VM VirtualBox - Downloads | Oracle Technology Network | Oracle

 

VMCentOSをインストールする

この記事を執筆している時点で既に公式サイトからは6.4は入手できませんでした。

ので、以下のサイトからISOイメージをダウンロードしておきます。

今回は64bit用なので、「CentOS-6.4-x86_64-minimal.iso」をダウンロードします。

» Free Linux Download:CentOS 6.4 ISO CD/DVD

 

VMを新規作成

VirtualBoxを起動し、VMを新規に作成します。

今回はCentOSをインストールするので、タイプは「Linux」、バージョンは「Red Hat」にします。

f:id:al_lucky:20150412135654p:plain

 

「次へ」をクリックするとメモリサイズやらハードドライブの作成やらの設定になります。基本的にはデフォルトでOKです。今回は以下のようにしました。

・メモリ:512M

・ハードドライブ:VDI 8G 固定サイズ(固定の方が高速)

固定サイズで作成すると、作成自体に若干時間がかかるので待ちます。

f:id:al_lucky:20150412140819p:plain

固定サイズはその名の通り、指定したサイズでVDIファイルが作成されます。

ので、このあたりはPCのリソース事情と相談しながらですね。

ちなみに、作成したVMのファイルはデフォルトだと以下のフォルダに作成されています。

C:\Users\[ユーザ名]\VirtualBox VMs\[VM名]

ハードドライブの設定が終わると、作成したVMがリストに追加されます。

f:id:al_lucky:20150412141001p:plain

 

CentOSをインストール

作成したVMを選択した状態でウィンドウ上部の歯車アイコンをクリックして、設定ダイアログを開きます。

「ストレージ」の中に「コントローラー:IDE」があるので、「+」アイコンをクリックしてダウンロードしておいたCentOSのISOイメージファイルをマウントします。

f:id:al_lucky:20150412141343p:plain

これで、VMのディスクトレイにCentOSのインストールディスクを挿入した状態になったわけですね。

 

ついでにネットワークの設定もしておきます。

「ネットワーク」の中の「アダプター2」を開き、「ホストオンリーアダプター」を割り当てます。ホストOSとゲストOSが通信するために必要です。

f:id:al_lucky:20150412141940p:plain

 

ここまで出来たら、VMを起動します。

CentOSのインストール画面が表示されるので、一番上の「Install or upgrade ... 」を選択してインストールを開始します。

一々キャプチャするのが面倒なので、以下参照。

・ディスクチェック:Skip

・言語:Japanese

・キーボード:jp106

Error processing drive:re-initialize

・Time Zone:Asia/Tokyo

・パスワード:root権限のパスワード

・Partitioning Type:Use entire drive

・Write storage configuration: Write changes to disk

 

インストールが完了すると「リブートしろ」と言われるので従います。

VMが再起動するので、先ほど設定したパスワードでログインしましょう。

GUIツールは入っていないので、こんな感じです。

f:id:al_lucky:20150412143518p:plain

 

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

ゲストOS内のネットワーク設定を編集します。

    # touch /etc/sysconfig/network-scripts/ifcfg-eth1
    # vi /etc/sysconfig/network-scripts/ifcfg-eth1

で、以下のように編集。

    DEVICE=eth1
    TYPE=Ethernet
    BOOTPROTO=static
    BROADCAST=192.168.56.255
    IPADDR=192.168.56.*
    NETMASK=255.255.255.0
    NETWORK=192.168.56.0
    ONBOOT=yes

上記の他にHWADDRとかUUIDとかあると思いますが、それも残しておきます。

書き終わったら再起動します。

ゲストOSから「192.168.56.1(ホストOS)」へpingを送信し、疎通確認をします。

次に今後はホストOSから「192.168.56.*(ゲストOS)」へ。

互いに疎通が確認出来たら完了です。

f:id:al_lucky:20150412144908p:plain

 

 

次回はNginxをインストールして、ホストOSのブラウザからアクセス出来るように設定します。

 

2015/4/22 追記

外部ネットワークへ接続する場合は、以下の設定も必要になります。

    # vi /etc/sysconfig/network-scripts/ifcfg-eth0
    ...
    ONBOOT=yes
    ...
    # vi /etc/sysconfig/iptables
    ...
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
    ...

上記を追加することで、VMから外部との通信が可能になります。