VirtualBoxでAnsible環境を整える-VirtualBox操作編
先の記事で検討した構成に沿うようにVirtualBoxを操作していきたいと思います。
■記事の最終目標
最終的なゴールはAnsibleの実験がしたいので3つゲストOSを構築していきたいと思います。記事の構成としては1つの記事だと長くなりそうなので下記構成で作っていきたいと思います。
■はじめに
VirtualBoxを含め今回の環境は下記となります。VirtualBoxのインストール方法などはいろいろな方がまとめてくださっているので、そちらの記事をご覧ください。 また、今回3台ゲストOSを作成しますが、1台を作成した後はクローン機能を用いて1台目のVMイメージから2台目、3台目を作っていきたいと思います。
■環境
- ホストOS: Windows 10 home 64bit
- VirtualBox: 6.0.6
〇NATネットワークの作成
最初にNATネットワークを作成していきます。VirtualBox マネージャーから作成します。 マネージャー画面にある「環境設定(P)」を押下します。
環境設定ウィンドウから「ネットワーク」を選択し、画面右側のネットワークカードのようなアイコンを押下します。
先の手順でNATネットワークが作成できました。作成したNATネットワークの詳細を確認するためにダブルクリックします。
ネットワーク名は特に考えていなかったのでデフォルトのまま変更しないようにします。ネットワークCIDRは設計図通りになっていること、ネットワークオプションでDHCPのサポートにチェックを入れます。IPv6は今回利用しませんのでチェックなしのままにしておきます。
〇CentOSの仮想マシンの作成-1台目
仮想マシンを作成していきます。新規で仮想マシンを作成するときは、VirtualBox マネージャーから「新規(N)」をクリックします。
今回はエキスパートモードで設定をしていきます。そのためウィンドウ下部の「エキスパートモード(E)」を選択した画面で入力していきます。まずは仮想マシンの設定です。構成設計で定義した名前にし、マシンフォルダーにVMのファイルを配置するフォルダーを指定します。タイプとバージョンについては、今回CentOSのマシンを作成するので、タイプはLinux、タイプはRed Hat(64bit)を選択します。サーバのスペックについては、ホストOSのスペックによりけりですが最小構成にし、ウィンドウ下部の「作成」をクリックします。
次に仮想ハードディスクの作成です。ファイルサイズはディスクに余裕があるので20GBを設定します。ハードディスクのファイルタイプなどは変更せずにそのままウィンドウ下部「作成」の作成をクリックします。VMDKファイルってVMWare用のフォーマットな記憶があるので、ここでイメージを作ってVMWareの環境にそのまま持っていけるのでしょうか。
ここまで出来たらウィンドウは閉じてVirtualBoxマネージャーの画面に戻りました。 作成した仮想マシンの設定をしていきます。作成した仮想マシンを選択し「設定(S)」をクリックします。
ネットワークの設定がデフォルトだと「NAT」になっていると思うので、これを先に作成したNATネットワークに変更して、「OK」をクリックします。
仮想マシンを起動します。VirtualBox マネージャーから「起動(T)」をクリックします。
初回起動時は起動ハードディスクを選択するウィンドウが表示されます。フォルダのアイコンをクリックして、CentOSのサイトからダウンロードしてきたisoファイルを選択して「起動」をクリックします。
画面キャプチャが取れなかったのですが、CentOSのisoファイルから何するか選択する画面が出てくるので、「Install CentOS 7」を選択します。ここからはCentOSのインストール設定なので画面キャプチャなどはなく、淡々と描きパラメータシートに従ってインストールしていきます。その際ネットワークとホスト名のネットワーク構成情報は念のため画面キャプチャを取得しておきます。インストールが完了すると再起動を行います。VirtualBoxの画面をクリックするとカーソルが仮想マシン上に移ってしまいホストOSに戻ってきません。Windows OSではデフォルトで右側のCtrlキーを押下することでホストOSの操作ができるようになりますので覚えておくこと必須です。
CentOSパラメータシート
項目 | 設定値 |
---|---|
言語 | 日本語(日本) |
日付と時刻(T) | アジア/東京 タイムゾーン |
キーボード(K) | 日本語 |
言語サポート(L) | 日本語(日本) |
インストールソース | ローカルメディア |
ソフトウェアの選択-ベース環境 | インフラストラクチャーサーバー |
ソフトウェアの選択-選択した環境のアドオン | ☑ 開発ツール |
インストール先 | ローカルの標準ディスク ATA VBOX HARDDISK |
KDUMP | ☑kdumpを有効にする |
KDUMP-Kdumpメモリー予約 | 自動 |
ネットワークとホスト名-ホスト名(H) | ansiblecontrol |
ネットワークとホスト名-enp0s3 | オン |
SECURITY POLICY | プロファイル未選択 |
ROOTパスワード(R) | 任意のパスワードを設定 |
ユーザーの作成(U) | ユーザは作成されません |
再起動が完了したら、先ほど作成したrootアカウントでログインできるはずです。ログインできたらインストールまでは問題なく完了です。
〇CentOSの仮想マシンの作成-2台目, 3台目
先ほど作成したVMイメージをもとに2台目、3台目を構築していきます。1台目のVMイメージを静的な状態にしたいこととクローンした後にサーバのIPアドレスとホスト名がバッティングするので、1台目のVMが起動しているようでしたらshutdownします。shutdownが完了したらVirtualBox マネージャーからクローンを作成する仮想マシンを右クリックし、出てきたメニューから「クローン(O)」を選択しクリックします。
先ほどと同じくエキスパートモードで設定を行います。名前は構成設計通りに「CentOS01」とし、パスはクローンした仮想ファイルを配置する任意のフォルダを選択します。クローンのタイプはディスクに余裕があるので、「すべてをクローン(F)」、スナップショットは「現在のマシンの状態(M)」を選択します。追加オプションのMACアドレスのポリシーについては、MACアドレスは重複しないようにしたいので、「すべてのネットワークアダプターでMACアドレスを生成」を選択します。今回クローン元と同じドライブに配置するので追加オプションは何もチェックしないまま、「クローン」をクリックします。
無事にクローンが完了するとクローンして作成した仮想マシンが表示されます。このマシンを起動します。
サーバにログインするとホスト名とipアドレスがクローン元と一緒なので、ホスト名を下記コマンドで変更して再起動します。ipアドレスはDHCP設定で固定化できないので時間があったら固定したいと思います。
% nmtui % reboot
OS再起動後にhostnameコマンドでホスト名が変わっていれば完了です。同様にもう一台クローンを作成します。
〇ポートフォワーディング設定
ここまでで3台の仮想マシンが作成できました。Ansible管理用サーバにホストOSからssh接続できるようにポートフォワーディング設定を行います。ポートフォワーディングはNATネットワークに設定します。NATネットワーク作成時と同様に「環境設定」>「ネットワーク」>NATネットワークを選択し、詳細ウィンドウで「ポートフォワーディング」をクリックします。
画面右側の緑の十字のボタンをクリックし、ホストOSのIPアドレスと、ゲストOSのIPアドレスを確認してルールを記載し、「OK」をクリックします。
ホストOSからTeraTermで自身のIPアドレスの22番ポートに接続すると、対象のゲストOSへssh接続することができました。ここまででひとまずVirtualBox操作編は終了とします。IPアドレスの固定化ができていないのが残念ですが、一度きりの環境の構築はできました。
おわりに
記事を書きながら操作しているので、後続の過程でうまくいかなかった時は内容を修正することがありますのでご容赦ください。また、内容に誤りなどありましたらコメントにてご指摘お願いします。
■参考
これらの記事がとても参考になりました。製作者の皆様に感謝です。