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

More Related Content

What's hot

What's hot (20)

Dockerfileを改善するためのBest Practice 2019年版
Dockerfileを改善するためのBest Practice 2019年版Dockerfileを改善するためのBest Practice 2019年版
Dockerfileを改善するためのBest Practice 2019年版
 
初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!
 
それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?
 
「おうちクラウド」が今熱い!
「おうちクラウド」が今熱い!「おうちクラウド」が今熱い!
「おうちクラウド」が今熱い!
 
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
 
Fluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターンFluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターン
 
不揮発メモリ(NVDIMM)とLinuxの対応動向について
不揮発メモリ(NVDIMM)とLinuxの対応動向について不揮発メモリ(NVDIMM)とLinuxの対応動向について
不揮発メモリ(NVDIMM)とLinuxの対応動向について
 
Consulを頑張って理解する
Consulを頑張って理解するConsulを頑張って理解する
Consulを頑張って理解する
 
[SAPPORO CEDEC] サービスの効果を高めるグリー内製ツールの技術と紹介
[SAPPORO CEDEC] サービスの効果を高めるグリー内製ツールの技術と紹介[SAPPORO CEDEC] サービスの効果を高めるグリー内製ツールの技術と紹介
[SAPPORO CEDEC] サービスの効果を高めるグリー内製ツールの技術と紹介
 
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
 
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
 
さいきんのMySQLに関する取り組み(仮)
さいきんのMySQLに関する取り組み(仮)さいきんのMySQLに関する取り組み(仮)
さいきんのMySQLに関する取り組み(仮)
 
サーバサイドの並行プログラミング〜かんたんマルチスレッドプログラミング〜
サーバサイドの並行プログラミング〜かんたんマルチスレッドプログラミング〜サーバサイドの並行プログラミング〜かんたんマルチスレッドプログラミング〜
サーバサイドの並行プログラミング〜かんたんマルチスレッドプログラミング〜
 
OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)
OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)
OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)
 
トランザクションの設計と進化
トランザクションの設計と進化トランザクションの設計と進化
トランザクションの設計と進化
 
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
 
Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門
 
ゼロからはじめるKVM超入門
ゼロからはじめるKVM超入門ゼロからはじめるKVM超入門
ゼロからはじめるKVM超入門
 
Ws2012フェールオーバークラスタリングdeep dive 130802
Ws2012フェールオーバークラスタリングdeep dive 130802Ws2012フェールオーバークラスタリングdeep dive 130802
Ws2012フェールオーバークラスタリングdeep dive 130802
 
DeNAオリジナル ゲーム専用プラットフォーム Sakashoについて
DeNAオリジナル ゲーム専用プラットフォーム SakashoについてDeNAオリジナル ゲーム専用プラットフォーム Sakashoについて
DeNAオリジナル ゲーム専用プラットフォーム Sakashoについて
 

Viewers also liked

横浜道場紹介 第2版
横浜道場紹介 第2版横浜道場紹介 第2版
横浜道場紹介 第2版
Takao Kimura
 
2012.03.24 Agile Samurai Dojo Gathering 講演資料
2012.03.24 Agile Samurai Dojo Gathering 講演資料2012.03.24 Agile Samurai Dojo Gathering 講演資料
2012.03.24 Agile Samurai Dojo Gathering 講演資料
Toshihiro Hirota
 

Viewers also liked (20)

Job schedulerを活用したoperations as codeの世界
Job schedulerを活用したoperations as codeの世界Job schedulerを活用したoperations as codeの世界
Job schedulerを活用したoperations as codeの世界
 
基礎から徹底解説!SoftLayerの使い方と活用方法
基礎から徹底解説!SoftLayerの使い方と活用方法基礎から徹底解説!SoftLayerの使い方と活用方法
基礎から徹底解説!SoftLayerの使い方と活用方法
 
JobSchedulerでのジョブの多重実行・排他制御
JobSchedulerでのジョブの多重実行・排他制御JobSchedulerでのジョブの多重実行・排他制御
JobSchedulerでのジョブの多重実行・排他制御
 
横浜道場紹介 第2版
横浜道場紹介 第2版横浜道場紹介 第2版
横浜道場紹介 第2版
 
2012.03.24 Agile Samurai Dojo Gathering 講演資料
2012.03.24 Agile Samurai Dojo Gathering 講演資料2012.03.24 Agile Samurai Dojo Gathering 講演資料
2012.03.24 Agile Samurai Dojo Gathering 講演資料
 
埼玉道場
埼玉道場埼玉道場
埼玉道場
 
SOS JobScheduler Overview (Japanese)
SOS JobScheduler Overview (Japanese)SOS JobScheduler Overview (Japanese)
SOS JobScheduler Overview (Japanese)
 
リクルートにおけるPaaS活用事例
リクルートにおけるPaaS活用事例リクルートにおけるPaaS活用事例
リクルートにおけるPaaS活用事例
 
Google app engine
Google app engineGoogle app engine
Google app engine
 
リクルートのWebサービスを支える共通インフラ「RAFTEL」
リクルートのWebサービスを支える共通インフラ「RAFTEL」リクルートのWebサービスを支える共通インフラ「RAFTEL」
リクルートのWebサービスを支える共通インフラ「RAFTEL」
 
Fragment の利用パターン
Fragment の利用パターンFragment の利用パターン
Fragment の利用パターン
 
Migr8.rb チュートリアル
Migr8.rb チュートリアルMigr8.rb チュートリアル
Migr8.rb チュートリアル
 
今すぐ使えるクラウドとPostgreSQL
今すぐ使えるクラウドとPostgreSQL今すぐ使えるクラウドとPostgreSQL
今すぐ使えるクラウドとPostgreSQL
 
HAWQをCDHで動かしてみた
HAWQをCDHで動かしてみたHAWQをCDHで動かしてみた
HAWQをCDHで動かしてみた
 
PostgreSQLアーキテクチャ入門
PostgreSQLアーキテクチャ入門PostgreSQLアーキテクチャ入門
PostgreSQLアーキテクチャ入門
 
Osc2015 hokkaido postgresql-semi-stuructured-datatype
Osc2015 hokkaido postgresql-semi-stuructured-datatypeOsc2015 hokkaido postgresql-semi-stuructured-datatype
Osc2015 hokkaido postgresql-semi-stuructured-datatype
 
Ivsctonightandday2016winter moringsession awsreinvent2016recap
Ivsctonightandday2016winter moringsession awsreinvent2016recapIvsctonightandday2016winter moringsession awsreinvent2016recap
Ivsctonightandday2016winter moringsession awsreinvent2016recap
 
初心者がAWSでWebサービスを始めるまで 〜たった3ステップでWebページは公開できる〜
初心者がAWSでWebサービスを始めるまで 〜たった3ステップでWebページは公開できる〜初心者がAWSでWebサービスを始めるまで 〜たった3ステップでWebページは公開できる〜
初心者がAWSでWebサービスを始めるまで 〜たった3ステップでWebページは公開できる〜
 
【自社プロダクト開発エンジニア募集中】エーピーコミュニケーションズ 先進開発グループ
【自社プロダクト開発エンジニア募集中】エーピーコミュニケーションズ 先進開発グループ【自社プロダクト開発エンジニア募集中】エーピーコミュニケーションズ 先進開発グループ
【自社プロダクト開発エンジニア募集中】エーピーコミュニケーションズ 先進開発グループ
 
レシピブログのサービス設計と今後の展望
レシピブログのサービス設計と今後の展望レシピブログのサービス設計と今後の展望
レシピブログのサービス設計と今後の展望
 

Similar to Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方

活クラウド AWSをどう利用するべきか
活クラウド AWSをどう利用するべきか活クラウド AWSをどう利用するべきか
活クラウド AWSをどう利用するべきか
Junichiro Ueno
 
OSSのオーケストレーションツール CloudConductor入門 ~インストールでのハマりどころ~
OSSのオーケストレーションツールCloudConductor入門 ~インストールでのハマりどころ~OSSのオーケストレーションツールCloudConductor入門 ~インストールでのハマりどころ~
OSSのオーケストレーションツール CloudConductor入門 ~インストールでのハマりどころ~
Yoshimi Tominaga
 
Intro jazuggirls 20120125
Intro jazuggirls 20120125Intro jazuggirls 20120125
Intro jazuggirls 20120125
Saori Ando
 

Similar to Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方 (20)

クラウド事業者に求めるビジネス要件
クラウド事業者に求めるビジネス要件クラウド事業者に求めるビジネス要件
クラウド事業者に求めるビジネス要件
 
Micro Service for Autonomous Infrastructure
Micro Service for Autonomous InfrastructureMicro Service for Autonomous Infrastructure
Micro Service for Autonomous Infrastructure
 
Azure Fundamental
Azure FundamentalAzure Fundamental
Azure Fundamental
 
【Cloud Week 2015@Hokkaido University】Dockerとインフラ運用自働化とIoT
【Cloud Week 2015@Hokkaido University】Dockerとインフラ運用自働化とIoT【Cloud Week 2015@Hokkaido University】Dockerとインフラ運用自働化とIoT
【Cloud Week 2015@Hokkaido University】Dockerとインフラ運用自働化とIoT
 
俺 と AWS Summit Tokyo 2017 DAY 1
俺 と AWS Summit Tokyo 2017 DAY 1俺 と AWS Summit Tokyo 2017 DAY 1
俺 と AWS Summit Tokyo 2017 DAY 1
 
Visual Studio と Microsoft Azure で変わる開発スタイル
Visual Studio と Microsoft Azure で変わる開発スタイルVisual Studio と Microsoft Azure で変わる開発スタイル
Visual Studio と Microsoft Azure で変わる開発スタイル
 
くまあず Nchikita 140628-2
くまあず Nchikita 140628-2くまあず Nchikita 140628-2
くまあず Nchikita 140628-2
 
OAuth Security Workshop 2017 #osw17
OAuth Security Workshop 2017 #osw17OAuth Security Workshop 2017 #osw17
OAuth Security Workshop 2017 #osw17
 
活クラウド AWSをどう利用するべきか
活クラウド AWSをどう利用するべきか活クラウド AWSをどう利用するべきか
活クラウド AWSをどう利用するべきか
 
Azure IoT/AI最前線
Azure IoT/AI最前線Azure IoT/AI最前線
Azure IoT/AI最前線
 
Ns study Azure IoTHub紹介
Ns study Azure IoTHub紹介Ns study Azure IoTHub紹介
Ns study Azure IoTHub紹介
 
OSSのオーケストレーションツール CloudConductor入門 ~インストールでのハマりどころ~
OSSのオーケストレーションツールCloudConductor入門 ~インストールでのハマりどころ~OSSのオーケストレーションツールCloudConductor入門 ~インストールでのハマりどころ~
OSSのオーケストレーションツール CloudConductor入門 ~インストールでのハマりどころ~
 
Intro jazuggirls 20120125
Intro jazuggirls 20120125Intro jazuggirls 20120125
Intro jazuggirls 20120125
 
Tech summitの歩き方 azure編
Tech summitの歩き方 azure編Tech summitの歩き方 azure編
Tech summitの歩き方 azure編
 
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatformJSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
 
SORACOM UG 東京 #8 | ソラコムが見てきたAWS re:invent 2017の話
SORACOM UG 東京 #8 | ソラコムが見てきたAWS re:invent 2017の話SORACOM UG 東京 #8 | ソラコムが見てきたAWS re:invent 2017の話
SORACOM UG 東京 #8 | ソラコムが見てきたAWS re:invent 2017の話
 
[PrimeCloud Controller / OSS MeetUp] CloudConductorのご紹介
[PrimeCloud Controller / OSS MeetUp] CloudConductorのご紹介[PrimeCloud Controller / OSS MeetUp] CloudConductorのご紹介
[PrimeCloud Controller / OSS MeetUp] CloudConductorのご紹介
 
開発サイクルを爆速にする!~ Azure DevOpsでアプリのビルド・デプロイを自動化 ~
開発サイクルを爆速にする!~ Azure DevOpsでアプリのビルド・デプロイを自動化 ~開発サイクルを爆速にする!~ Azure DevOpsでアプリのビルド・デプロイを自動化 ~
開発サイクルを爆速にする!~ Azure DevOpsでアプリのビルド・デプロイを自動化 ~
 
はじめてのAWS CLI
はじめてのAWS CLIはじめてのAWS CLI
はじめてのAWS CLI
 
2016-11-11 UMTP モデリングフォーラム2016 DDD実践のコツとazureによるモデル実装
2016-11-11 UMTP モデリングフォーラム2016 DDD実践のコツとazureによるモデル実装2016-11-11 UMTP モデリングフォーラム2016 DDD実践のコツとazureによるモデル実装
2016-11-11 UMTP モデリングフォーラム2016 DDD実践のコツとazureによるモデル実装
 

More from Yoshimi Tominaga (8)

Bot × 翻訳 次世代グローバルチャット
Bot × 翻訳 次世代グローバルチャットBot × 翻訳 次世代グローバルチャット
Bot × 翻訳 次世代グローバルチャット
 
OpenStack on Softlayer
OpenStack on SoftlayerOpenStack on Softlayer
OpenStack on Softlayer
 
Chef, Consul を使ったクラウドオーケストレーション
Chef, Consul を使ったクラウドオーケストレーションChef, Consul を使ったクラウドオーケストレーション
Chef, Consul を使ったクラウドオーケストレーション
 
Amazon Machine Learning Tutorial
Amazon Machine Learning TutorialAmazon Machine Learning Tutorial
Amazon Machine Learning Tutorial
 
Vagrantで即席クラウドストレージ
Vagrantで即席クラウドストレージVagrantで即席クラウドストレージ
Vagrantで即席クラウドストレージ
 
Tech-Circle#1 OpenStackハンズオン
Tech-Circle#1 OpenStackハンズオンTech-Circle#1 OpenStackハンズオン
Tech-Circle#1 OpenStackハンズオン
 
チケット駆動でテスト駆動なアプリケーション開発
チケット駆動でテスト駆動なアプリケーション開発チケット駆動でテスト駆動なアプリケーション開発
チケット駆動でテスト駆動なアプリケーション開発
 
統計解析言語Rを使ってみた
統計解析言語Rを使ってみた統計解析言語Rを使ってみた
統計解析言語Rを使ってみた
 

Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方