Ansible 初心者がplaybook~roleを学ぶ ① 検証用VM作成


Ansibleで単一playbookからroleを使った構成を学ぶまでに行ったことを記述します。

<注意>この記事では、
環境作りを記載しているため、Ansibleはまだ出てきませんので、ご了承ください。

検証を行うPCは、Windows10でvirtualbox、vagrantを用いて
環境構築を行う一貫として一旦、空のVM作成をゴールとしています。

1. virtualbox,vagrantのインストール

参考記事:https://qiita.com/tarosaiba/items/a2769c8152dd3702778e

2. virtualbox(vagrant)でVMを3つ作成する。

vm name ip address os memory cpu core
ansible 192.168.16.11 centos7.2 2GB 1core
web 192.168.16.12 centos7.2 2GB 1core
db 192.168.16.13 centos7.2 2GB 1core
2-1. デスクトップにフォルダ作成

  Desktop配下 
    ・Ansible-test/vagrant-ansible
    ・Ansible-test/vagrant-Web
    ・Ansible-test/vagrant-db

 

2-2. コマンドプロンプトでvagrantのbox(centos7.2)を追加する。
> vagrant box add centos7.2 https://github.com/CommanderK5/packer-centos-template/releases/download/0.7.2/vagrant-centos-7.2.box
> vagrant box list
 centos7.2 (virtualbox, 0)       << box:centos7.2が追加された。
2-3. コマンドプロンプトでvagrantfileを作成 (vm:ansibleの場合)

 ※db,webの場合は『移動先フォルダ』変わるので注意!!

> cd C:\Users\{ユーザ名}\Desktop\Ansible-test\vagrant-ansible
> vagrant init

以下のように、vagrantfileが生成される。

2-4. vagrantfileをメモ帳で中身を削除して以下のように編集する。


<ansible:コピペ用>
# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure("2") do |config|
  config.vm.box = "centos7.2"

# VMのIPアドレスを設定(host only adpter) 
 config.vm.network "private_network", ip: "192.168.16.11" 

# os上でのVM名指定
 config.vm.hostname = "Ansible"

# VM名指定(virtualbox上の名前)、メモリサイズ指定
 config.vm.provider :virtualbox do |vb|
     vb.name = "Ansible"
     vb.memory = "2048"
     end
end
2-5. 『web』、『db』も同様に、2-3.~2-4.を繰り返す。

★注意2-4.vagrantfileをdb、webで、それぞれ以下パラメータ部分修正する!

<dbの場合、以下のパラメータを修正>
config.vm.network "private_network", ip:"192.168.16.12"
config.vm.hostname = "db"
vb.name = "db"

<webの場合、以下のパラメータを修正>
config.vm.network "private_network", ip: "192.168.16.13" 
config.vm.hostname = "web"
vb.name = "web"
2-6.VM作成(vm:ansibleの場合)※db,webの場合は『移動先フォルダ』変わるので注意!
> cd C:\Users\{ユーザ名}\Desktop\Ansible-test\vagrant-ansible 
> vagrant up

※vagrant up実行した際に
Host only adpter追加のポップアップ[virtualbox interface]が出た場合はOKする。
 

2-7.db,webも2-6の作業を行う。

virtualboxに空VMが3台作成されたらゴール

-追伸-
ビルド&デストロイを容易にするためにWindowsのbat化させました。
何かの機会に公開するかもです。以降の手順作るのに創造と破壊を繰り返すことになったため…。

次回Link>>Ansible 初心者がplaybook~roleを学ぶ ② Ansibleインストール