Slide 1

Slide 1 text

Ansibleで始めるインフラの コード化と自動化 2019.08.30 @zaki_hmkc (zaki-lknr) 1

Slide 2

Slide 2 text

2 対象読者 ▹ Ansibleって何するもの? ▹ インフラ作業の自動化???? ▹ 話さないこと ▸ role分割のベストプラクティスとか ▸ ansible-galaxyとか ▸ Ansible TowerとかAWXとか

Slide 3

Slide 3 text

Agenda 1. 自己紹介 2. Ansibleってなに 3. デモ (時間あれば) 3

Slide 4

Slide 4 text

自己紹介 QiitaとかGitHubとか https://qiita.com/zaki-lknr Twitterやってません 4

Slide 5

Slide 5 text

写真で一言 5

Slide 6

Slide 6 text

6

Slide 7

Slide 7 text

7 決定的瞬間 奇跡の一枚 よくこんなの撮れたな… これ撮るのに何分待 機したんだろう 機材なんだろ 石川さんごめんなさい すげぇ一枚

Slide 8

Slide 8 text

8 決定的瞬間 奇跡の一枚 よくこんなの撮れたな… これ撮るのに何分待 機したんだろう 機材なんだろ 石川さんごめんなさい すげぇ一枚 D500 だそうです

Slide 9

Slide 9 text

同じ写真、もう一度撮れる? 9

Slide 10

Slide 10 text

10 ダメです システム構築では…

Slide 11

Slide 11 text

11 システム構築で大事なこと ▹ 同じ結果になる ▹ 手順が簡素 ▹ ミスしないこと ▹ webサーバ4台・APサーバ4台・LB 2台・DB 2台 ▸ 手作業で頑張る? ▸ もし台数増えたら?

Slide 12

Slide 12 text

12 システム構築で大事なこと ▹ 同じ結果になる ▹ 手順が簡素 ▹ ミスしないこと ▹ webサーバ4台・APサーバ4台・LB 2台・DB 2台 ▸ 手作業で頑張る? ▸ もし台数増えたら? Infrastructure as Code (IaC) confidential

Slide 13

Slide 13 text

コンテナ? 13 も使えるけど、それは別の機会があれば

Slide 14

Slide 14 text

自動化 14 今日は について

Slide 15

Slide 15 text

Ansibleの特徴 ▹ 冪等性 (べきとうせい) ▸ 何度実行しても同じ状態になる ▹ エージェントレス ▸ 必要なのはSSHアクセスとPython ▸ クラウドベンダーやネットワーク機器も対応 ▹ プログラミングの知識は不要 ▸ Ansibleモジュールの使い方 ▸ https://docs.ansible.com ▹ Excel手順書はゴミ箱へ(直球) 15

Slide 16

Slide 16 text

16 Ansible実行 (イメージ) $ ansible-playbook playbook.yml -i inventory あとは処理が終わるのを待つのみ

Slide 17

Slide 17 text

Ansibleの構成 プレイブック ▹ 「何をするか」を記述した ファイル ▹ 機能ごとにファイルを分 割できる ▹ Ansibleモジュールの組 み合わせ 17 インベントリ ▹ 「対象」を記述したファイ ル ▹ 変数定義も可能

Slide 18

Slide 18 text

Ansibleモジュール ▹ とにかくモジュールを検索 ▹ https://docs.ansible.com/ansible/latest/modules/modules_by_category.html ▹ 大抵のものはある ▸ yum ▸ copy ▸ template ▸ systemd (service) ▸ ファイル操作系(file,replace,lineinfile) ▸ shell (最後の手段) 18 confidential

Slide 19

Slide 19 text

19 例 ▹ webサーバ4台・APサーバ4台・LB 2台・DB 2台 ▸ 手作業で頑張る?

Slide 20

Slide 20 text

20 demo web server 1 (Apache HTTP Server) Load Balancer (HAProxy) web server 2 (Apache HTTP Server) Ansible Control Node 192.168.244.131 192.168.244.130 192.168.244.132 192.168.244.133 Demo資材 https://github.com/zaki-lknr/ansible-demo

Slide 21

Slide 21 text

参考資料 ▹ 社内勉強会ネタ:2週間で完全にマスターしたAnsible 入門まとめ - Qiita ▸ https://qiita.com/zaki-lknr/items/3ac4c7e105609a7f0bf9 ▹ Ansible検証環境に特化したVagrantを使ったVM構 築 - 複数VM・VM間ssh公開鍵認証設定・共有フォル ダ - Qiita ▸ https://qiita.com/zaki-lknr/items/cdf4eac2d2f2020ac7be ▹ 書籍: Ansible実践ガイド第2版 ▸ https://www.amazon.co.jp/dp/B07B2T24V4/ (Kindleセール中) ▸ 第3版予約中 https://www.amazon.co.jp/dp/4295007641/ 21