LoginSignup
0
1

More than 3 years have passed since last update.

Vagrant -> Ansible -> ruby_その1(概要)

Last updated at Posted at 2019-06-13

概要

今更ながらにVagrant+Ansibleの環境構築を初めてやってみました。
満足できる環境が出来上がるまでおおよそ1ヶ月。
せっかく苦労して書いたのに何もかも忘れていくのも寂しいので、
こちらに記述しておくことにしました。

本記事は頑張った結果の構成概要を記述したものです。
これ以降のシリーズではそれぞれの過程においての私の思いを記述していくつもりです。

本記事は連載シリーズです。全3回です。
[Vagrant -> Ansible -> ruby_その1(概要)]
Vagrant -> Ansible -> ruby_その2(Vagrantfile)
Vagrant -> Ansible -> ruby_その3(Ansible - playbook)

構成図

以下は自分の環境で構築した時の構成図です。

  • 母艦(Ubuntu)にAnsibleコントロール用の仮想サーバ
  • Ruby開発用の仮想サーバ

の構成になっております。

structImage.png

構成

母艦:
  OS:Ubnutu 18.04.2 LTS
  仮想化:KVM (libvirt 4.0.0)
  Vagrant 2.0.2

子1:
  ホスト名:ansible-ontrol
  box OS: Ubuntu 18.04.2 LTS(generic/Ubuntu1804 1.9.12)
  Ansible: 2.8

子2:
  ホスト名:ansible-web
  box OS: Ubuntu 18.04.2 LTS(generic/Ubuntu1804 1.9.12)
  ruby: 2.6.3

本記事でやること

子1

  • IPv6 の無効化
  • 時刻同期サーバの設定(同期先:NICT)

子2

  • IPv6 の無効化
  • 時刻同期サーバの設定(同期先:NICT)
  • git インストール
  • Ruby用パッケージの追加インストール(gcc,make等)
  • rbenv インストール
  • ruby-build インストール

実行手順

$ mkdir -p /srv/vagrant && cd /srv/vagrant
$ git clone https://github.com/kurokoSin/Burgessochaeta.git .
$ vagrant up
$ vagrant ssh control
$ ansible-playbook playbook/site.yml

ディレクトリ構成

.
├── README.md
├── Vagrantfile
├── control
│   ├── ansible_conf.sh
│   ├── expect_sendkey.expect
│   └── playbook
│       ├── ansible.cfg
│       ├── config.yml
│       ├── hosts_ansible
│       ├── roles
│       │   ├── AddPacks
│       │   │   └── tasks
│       │   │       └── main.yml
│       │   ├── Japanize
│       │   │   └── tasks
│       │   │       └── main.yml
│       │   ├── common
│       │   │   └── tasks
│       │   │       └── main.yml
│       │   ├── git
│       │   │   └── tasks
│       │   │       └── main.yml
│       │   ├── ntp
│       │   │   ├── handlers
│       │   │   │   └── main.yml
│       │   │   ├── tasks
│       │   │   │   └── main.yml
│       │   │   ├── templates
│       │   │   │   └── ntp.conf.j2
│       │   │   └── vars
│       │   │       └── main.yml
│       │   ├── rbenv
│       │   │   ├── tasks
│       │   │   │   └── main.yml
│       │   │   └── templates
│       │   │       └── rbenv_setting.sh.j2
│       │   ├── ruby
│       │   │   ├── tasks
│       │   │   │   └── main.yml
│       │   │   └── templates
│       │   │       └── rbenv_setting.sh.j2
│       │   └── ssh
│       │       ├── tasks
│       │       │   └── main.yml
│       │       └── vars
│       │           └── main.yml
│       └── site.yml
└── web
    └── pexpect_sndekey.py

コード

github にて公開 しております.
こちらを参照お願いします。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1