(57)【連載1-1】CentOS7にVirtualBoxを入れる

投稿者: | 2017年10月2日

この記事は最終更新から 398日 が経過しています。

この連載で最終的にやりたいこと

CentOS7を入れた物理サーバーに VirtualBoxをインストールし、
 VirtualBoxの仮想マシン上で Ubuntuの仮想サーバーを動かし、
  Ubuntuの仮想サーバー上で WEBサーバーを動かし、
   eclipse + xdebug, PhpStorm + xdebugでリモートデバッグしたい。

今回やりたいこと

CentOS7を入れた物理サーバーに VirtualBoxをインストールし、Ubuntuの仮想サーバーを動かしたい。

(1) 必要なファイルをダウンロード

1. VirtualBoxを入手

以下のサイトから
Download VirtualBox for Linux Hosts

Oracle Linux 7 (“OL7”) / Red Hat Enterprise Linux 7 (“RHEL7”) / CentOS 7 AMD64
VirtualBox-5.1-5.1.28_117968_el7-1.x86_64.rpm
をダウンロードする。

ちなみにインストールするマシンの CPUは Intel Xeon X5570 だ。
AMDじゃないけど上記の rpmファイルで OKだ。

2. Ubuntuを入手

以下のサイトから
Download Ubuntu Desktop

Ubuntuのインストーラーを取得する。
ubuntu-17.04-desktop-amd64.iso
今回は 2017年10月2日時点の最新版 Ubuntu 17.04 をダウンロードさせていただいた。

仮想マシンにインストールする用途なので、この ISOファイルを DVDに焼く必要はない。

(2) インストール

1. VirtualBoxをインストール

ダウンロードした
VirtualBox-5.1-5.1.28_117968_el7-1.x86_64.rpm
をCentOS7が入った物理サーバーにアップロードし、以下を実行する。

rpm -ivh ./VirtualBox-5.1-5.1.28_117968_el7-1.x86_64.rpm

2. Ubuntuをインストール

1) VirtualBoxを起動する。

2) 新規に仮想マシンを作成する。

3) 設定画面にて、仮想マシンに割り当てるリソースを設定する。
 ・CPUコア数(今回は物理+論理全16コアのうち4コアを割り当てた)
 ・メモリサイズ(今回は物理48GBのうち8GBを割り当てた)
 ・ストレージ(今回は物理3TBのうち 200GBを割り当てた ※可変長ドライブなの200GBは占有せず)

4) インストーラーDVDを光学ドライブに入れたつもりにさせるため、ストレージ項目のオプティカルドライブに以下のファイルを割り付ける。
ubuntu-17.04-desktop-amd64.iso

5) 仮想マシンを Power On する。
この後 Ubuntuのインストールが実行される。

3. 外部からリモートで操作できるようにする。

普段使っている Windows10パソコンから TeraTermで SSH接続できるようにしたい。
Ubuntu上でターミナルを開き、以下のコマンドを入力する。

0) インストール直後なので Ubuntuにインストールされているパッケージを最新版にしておく。

sudo apt update
sudo apt upgrade

1) OpenSSHをインストールする。

sudo apt install openssh-server

2) ifconfig等が使えるように net-toolsをインストールする。

sudo apt install net-tools

3) IPアドレスをDHCP取得から固定IPに変更する。今回は 192.168.1.4とする。
※一旦接続を OFF にした後に再度 ON にするとIPアドレス変更が反映される。

※NATではなくBridge接続にすること。

現在待ち受け状態にあるポートは?

user@:~$ netstat -at
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 0.0.0.0:ssh             0.0.0.0:*               LISTEN
tcp        0      0 localhost:ipp           0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:hostmon         0.0.0.0:*               LISTEN

この時点でWindowsパソコンから TeraTermで接続できる。

念のために…
4) FireWallを入れる。

sudo apt -y install ufw
sudo systemctl enable ufw
sudo systemctl restart ufw

SSH用のポートを開ける。

sudo ufw allow ssh      # SSH用ポート(22)を開く
sudo ufw enable
sudo ufw status         # 状態を見る

4. Windowsパソコンで X-Windowを使えるようにする。

TeraTermでリモート接続して操作できればほぼ満足だが、Pythonなどでグラフ表示させたい場合もある。
こんな場合に備えて、Windowsパソコンで X-Windowsを使えるようにしておく。

1) Ubuntu側でVNC Serverをインストール

sudo apt install xfce4 xfce4-goodies tightvncserver
vncserver -geometry 1600x1000 -depth 24

2) ~/.vnc/xstartupを書き換え

cd
vi ./.vnc/xstartup

以下に書き換え。

#!/bin/sh
xrdb $HOME/.Xresources
startxfce4 &

3) FireWallにもVNC用の穴をあけておく。
VNCのポート番号:5900 + ディスプレイ番号

sudo ufw allow 5901/tcp           # VNC接続用ポートを開ける
sudo ufw status                   # 状態を見る

4) WindowsパソコンでVNCクライアントを起動して接続する。
過去記事「(46) VNC Viewer 6.0.2に入れ替える。」を参照のこと。

こんな感じで表示された。

最終的にこうなった

背景: Windowsパソコン
左上: VNCで物理サーバー上のCentOS7デスクトップを表示, その内部にはVirtualBoxで動いているUbuntu
左下: Windowsパソコン上でTeraTermを起動しUbuntuに接続
右下: VNCでUbuntuのデスクトップを表示


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です