chef, ansible, consul, … 自働化ツールとその組み合わせ方
TRANSCRIPT
![Page 1: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/1.jpg)
Chef, Ansible, Consul, …
自働化ツールとその組み合わせ方
OSSコンソーシアム クラウド部会
冨永 善視
OSC 2015 .Enterprise Tokyo
![Page 2: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/2.jpg)
自己紹介 冨永 善視(とみなが よしみ) 所属 OSSコンソーシアム クラウド部会
TIS株式会社 戦略技術センター
業務 クラウドオーケストレータCloudConductorの開発
インフラ関連OSSの技術検証
![Page 3: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/3.jpg)
OSSコンソーシアム
クラウド部会
クラウドソリューションの情報交換
WGによるOSS検証
定期的なセミナー開催
http://www.osscons.jp/cloud/
2015.3.13 Cloud Orchestration Seminar
![Page 4: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/4.jpg)
本日お話しすること
クラウド時代の運用管理
インフラの自働化ツールひとまとめ
自働化ツールの組み合わせ方
![Page 5: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/5.jpg)
本日お話ししないこと
![Page 6: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/6.jpg)
クラウド時代の運用管理
![Page 7: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/7.jpg)
ペットと家畜
![Page 8: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/8.jpg)
ウチの子がイチバン
大切に守る
代わりなんていない
どれも同じ
悪ければ処分
足りなければ追加
![Page 9: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/9.jpg)
ペット型の問題
壊さないための冗長な構成
最大値を満たす過剰なリソース
![Page 10: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/10.jpg)
家畜型の運用
必要なだけ作って
いらなくなったら壊す
常に最適な状態にコントロール
![Page 11: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/11.jpg)
自働化 トヨタ生産方式の用語
ただ動き続けるだけでなく「不具合が起きていないこと」が保障される
![Page 12: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/12.jpg)
インフラの自働化ツール
![Page 13: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/13.jpg)
クラウド環境の インフラ構築
![Page 14: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/14.jpg)
Provisioning
クラウド環境の インフラ構築
![Page 15: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/15.jpg)
Provisioning Configuration
クラウド環境の インフラ構築
![Page 16: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/16.jpg)
Provisioning Configuration Test
クラウド環境の インフラ構築
![Page 17: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/17.jpg)
Provisioning Orchestration Configuration Test
クラウド環境の インフラ構築
![Page 18: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/18.jpg)
構築 テスト
代表的なインフラ自働化ツール
Provisioning ネットワークやVMの配置を自働化
Software Defined Infrastructure APIを通じて操作できるインフラ
Orchestration システム全体の連携や 動的な協調動作を自働化
Configuration OSの設定やミドルウェアの インストールを自働化
consul
terraform
metronome serf
![Page 19: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/19.jpg)
構築 テスト
代表的なインフラ自働化ツール
Provisioning ネットワークやVMの配置を自働化
Software Defined Infrastructure APIを通じて操作できるインフラ
Orchestration システム全体の連携や 動的な協調動作を自働化
Configuration OSの設定やミドルウェアの インストールを自働化
consul metronome serf
Provisioning ネットワークやVMの配置を自働化
terraform
![Page 20: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/20.jpg)
Terraform
Hashicorp製ツール
インフラ構成をJSON拡張のDSLで記述
Provider指定で各種クラウドに対応
Provisioners指定でChef等の実行が可能
DryRun (terraform plan)
![Page 21: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/21.jpg)
Terraform
構成をビジュアルで
確認可能(terraform graph)
![Page 22: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/22.jpg)
構築 テスト
代表的なインフラ自働化ツール
Provisioning ネットワークやVMの配置を自働化
Software Defined Infrastructure APIを通じて操作できるインフラ
Orchestration システム全体の連携や 動的な協調動作を自働化
consul
terraform
metronome serf
Configuration OSの設定やミドルウェアの インストールを自働化
![Page 23: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/23.jpg)
Chef
Chef社が開発
OS、ミドルウェアの設定をRuby拡張のDSLで記述
erbの雛形から設定ファイルを動的に生成可能
![Page 24: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/24.jpg)
Ansible
RedHatが買収
OS、ミドルウェアの設定をYAML形式で記述
SSHによる実行でエージェントレス
![Page 25: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/25.jpg)
Chef vs Ansible
Chef Ansible
Ruby Python
Client - Server エージェントレス
ドキュメント・ノウハウ豊富 まとまった情報が少ない
力技で書ける シンプルに書ける
![Page 26: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/26.jpg)
構築 テスト
代表的なインフラ自働化ツール
Provisioning ネットワークやVMの配置を自働化
Software Defined Infrastructure APIを通じて操作できるインフラ
Orchestration システム全体の連携や 動的な協調動作を自働化
consul
terraform
metronome serf
Configuration OSの設定やミドルウェアの インストールを自働化
![Page 27: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/27.jpg)
Serverspec
mizzyさん(@gousukenatorさん)が開発
OS、ミドルウェア設定のあるべき姿を
Rspec相当のRuby DSLで記述
SSHによる実行でエージェントレス
力技も可能
![Page 28: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/28.jpg)
Serverspec
:serviceが起動しているか
:portが開いているか
:APサーバへの疎通確認
![Page 29: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/29.jpg)
構築 テスト
代表的なインフラ自働化ツール
Provisioning ネットワークやVMの配置を自働化
Software Defined Infrastructure APIを通じて操作できるインフラ
Configuration OSの設定やミドルウェアの インストールを自働化
terraform
serf
Orchestration システム全体の連携や 動的な協調動作を自働化
consul metronome
![Page 30: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/30.jpg)
Consul
Hashicorp製のツール
エージェント同士でクラスタを構成
分散KVS
サービスディスカバリ
クラスタに変化が起きたとき特定の処理を実行可能 (watches)
![Page 31: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/31.jpg)
Metronome
TISが開発 2015年9月公開
Consulクラスタと連携
クラスタメンバーのタスク実行順序を制御
実行順序はYAML形式で記述
https://github.com/cloudconductor/metronome/blob/master/README_ja.md
![Page 32: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/32.jpg)
Metronome
![Page 33: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/33.jpg)
自働化ツールの組み合わせ方
![Page 34: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/34.jpg)
Configuration Test
Configuration & Test
server
従来の自動スクリプトの
延長として
取り組みやすい所から
コード化を実践してみる
![Page 35: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/35.jpg)
Configuration
Provisioning & Configuration
インフラ構築をまるっと自働化
家畜型の運用を実践してみる
Provisioning
![Page 36: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/36.jpg)
Provisioning Orchestration Configuration
Provisioning & Configuration & Orchestration
サービス起動などの待ち合わせ
構成が変化したときに設定を動的
に変更する
![Page 37: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/37.jpg)
One more thing...
![Page 38: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/38.jpg)
CloudConductor
TISが開発
2015年9月にv1.1公開 2016年3月にv2.0公開予定
インフラ自働化ツール群を指揮して家畜型の運用を実現
http://cloudconductor.org
![Page 39: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/39.jpg)
Provisioning Orchestration Configuration Test
CloudConductor v2.0 Orchestration Process
![Page 40: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/40.jpg)
アプリ開発メンバー インフラ担当者
設計
構築
検証
パターン更新
検証環境の展開・最新化
フィードバック
DevOpsの実現
![Page 41: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/41.jpg)
ユーザー
パターン開発者
パターンの拡充
Enterprise PaaSの提供
自動構築
クラウドB
クラウドA
DR
パターンを選択 環境を利用
自律運用
![Page 42: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/42.jpg)
クラウドの真価は家畜型の運用にあります
そのためのツールも整いつつあります
まずはできるところから
やり方を変えていきましょう
![Page 43: Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方](https://reader033.vdocuments.site/reader033/viewer/2022042600/58a866281a28ab6c328b68c3/html5/thumbnails/43.jpg)
Thank You!!