渋谷ほととぎす通信

完全趣味でやってるUnityメモ。説明できないところを説明できるようにするための個人ブログ。昨日の自分より少しでも大きくなれるように。。。 ※所属団体とは一切関係がありません

Vagrantfile、Ansible Playbook探訪


f:id:esakun:20170828141212g:plain

初期のVagrantfileにAnsibleのPlaybookをどう関連付けるのか調査。
※サーバーサイド系の知識はほぼゼロの私の夏休みの自由研究的なノリで勉強中です。

vagrant init centos/6

とコマンドを打った後に生成される、Vagrantfileの中身はこんな感じになります。

Vagrant.configure("2") do |config|
    config.vm.box = "centos/6"
end

ansibleのPlaybookを使う場合は、以下のように追記。

Vagrant.configure("2") do |config|
    config.vm.box = "centos/6"
    config.vm.provision 'ansible' do |ansible|
        ansible.playbook = './playbook.yml'
    end
end

※Vagrantfileと同階層にplaybook.ymlを配置

Playbookにタスクを記載する

---yaml
- hosts: all
  sudo : yes
  tasks:
    - name: Nginxリポジトリ追加
      yum:
        name: http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
    - name: Nginxをインストール
      yum: name=nginx

Vagrantを起動していない場合はvagrant up --provision、起動していた場合はvagrant provisionとするとPlaybookが読み込まれ、記述したタスクが順次実行されていきます。

vagrant upだけだとPlaybookは読み込まれないので注意

PLAY [all] *********************************************************************

TASK [Gathering Facts] *********************************************************
ok: [default]

TASK [Nginxリポジトリ追加] ************************************************************
changed: [default]

TASK [Nginxをインストール] ************************************************************
changed: [default]

PLAY RECAP *********************************************************************
default                    : ok=3    changed=2    unreachable=0    failed=0

※このようなログが出力される

あとはタスクを追加していって自分の環境を簡単に構築できるようにするっていうことでしょうか。

近況memo

こちらの本を予約しました。2012年版から全て所持しているので、義務感的な感じですが、楽しみです。私の大好きなFF15もメイキングも載ってそうなので舐めるように眺めようと思います。

ゲームグラフィックス 2017 CGWORLD特別編集版

ゲームグラフィックス 2017 CGWORLD特別編集版