Recommended
PDF
PDF
PDF
Travis CIで実現するPHPアプリの自動テスト
PDF
PDF
PDF
【PHPカンファレンス福岡】PHP 5.3 + CakePHP 1.3 → PHP 7 + CakePHP 3 移行を決めた話
PDF
PDF
クラウド上でのChef活用と ベストプラクティス v0.2.0
PDF
PDF
PPTX
PDF
PPTX
~Dockerfileの開発を劇的に楽にする~ Dockerfile開発環境 EDGE
PPTX
PDF
ReVIEW & CI - ChefでCI環境構築
PPTX
PDF
PPTX
巨大不明ビルドの継続的統合を目的とするビルドパイプラインを主軸とした作戦要綱
PDF
20130723 ecシステムにchefを導入してみた v1.0
PPTX
Multibranch Pipeline with Docker 入門編
PDF
PDF
Jenkinsの導入 vol.02 Bitbucketと連携する
PDF
入門 Chef Server #biglobetechtalk
PDF
PDF
PDF
PPTX
PDF
Powershellで始める.net プログラミング
PPTX
PDF
第2回 JAWS−UG 神戸 開発運用の現場でのChef活用
More Related Content
PDF
PDF
PDF
Travis CIで実現するPHPアプリの自動テスト
PDF
PDF
PDF
【PHPカンファレンス福岡】PHP 5.3 + CakePHP 1.3 → PHP 7 + CakePHP 3 移行を決めた話
PDF
PDF
クラウド上でのChef活用と ベストプラクティス v0.2.0
What's hot
PDF
PDF
PPTX
PDF
PPTX
~Dockerfileの開発を劇的に楽にする~ Dockerfile開発環境 EDGE
PPTX
PDF
ReVIEW & CI - ChefでCI環境構築
PPTX
PDF
PPTX
巨大不明ビルドの継続的統合を目的とするビルドパイプラインを主軸とした作戦要綱
PDF
20130723 ecシステムにchefを導入してみた v1.0
PPTX
Multibranch Pipeline with Docker 入門編
PDF
PDF
Jenkinsの導入 vol.02 Bitbucketと連携する
PDF
入門 Chef Server #biglobetechtalk
PDF
PDF
PDF
PPTX
PDF
Powershellで始める.net プログラミング
Similar to DevOpsを実現する為のChef実践テクニック Chef12対応版
PPTX
PDF
第2回 JAWS−UG 神戸 開発運用の現場でのChef活用
PPTX
春を先取り!OpsWorksとChef ではじめる恋色コーデ術! #pyfes 2013.03
PDF
Chef(Server)と AWS OpsWorks(tm)の比較
PPTX
Cloudstack user group meeting in osaka
PPTX
PDF
Using Chef for Infrastructure Automation of Ameba Pigg
PDF
Chefを利用した運用省力化とDevOpsの取り組みについて
PPTX
PDF
Chef+serverspec+werckerでインフラCIする話
PDF
「クラウド本気で始めました」なSIerのChef活用と実践~Chefアンチパターンとの戦い~
PDF
PDF
Chef+Vagrantでクラウド環境構築自動化ハッカソン 結果発表 #atithack
PPTX
PDF
PDF
PDF
PDF
PDF
大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (後編)
PDF
小規模SI案件で、 AWS + Chefを使ってみて
More from Yusuke Ando
PDF
PDF
Testing your app with Selenium on Travis CI
PDF
Shimokita.Unity Detonatorで爆発
PDF
Shimokita.Unity RigidbodyとColliderで衝突
PDF
PDF
PDF
Travis CIですぐに始める継続的インテグレーション
PDF
PDF
Shimokita.Unity パリの街をユニティちゃんが駆ける
PDF
PDF
PDF
PDF
Engine Yardで作る NetCommons3のクラウド環境
PDF
PDF
最近のCandyCane - PHP版Redmineでタスク管理を始めよう
PDF
PDF
PDF
PDF
PDF
DevOpsを実現する為のChef実践テクニック Chef12対応版 1. 2. 2!
自己紹介
• Engine Yard
• Twitter: yando
• GitHub: yandod
• PHPer
• RedmineのPHP移植
CandyCane
3. 4. 4!
Engine Yard
• 2006年創業
• AWS/Azure
• Terremark
• Chefを活用
• 自動構築
• 運用サービス
5. 5!
国内事例例
idobata.io
永和システムマネジメント様のコメント:
アプリケーション環境のカスタマイズ性が優れ、われわれのニーズに⾮非常に
マッチするプラットフォームです。また、AWS東京データセンターを利利⽤用で
きる点や、Engine Yardのサポート品質が⾮非常に⾼高く、安⼼心してidobata.ioを
稼働させることができています。
6. 6!
国内事例例
toreta.in
増井 雄⼀一郎郎様 (TORETA CTO) のコメント:
TORETAは、24時間365⽇日稼働し続ける必要がありました。
ただ、保守運⽤用の観点で深夜の緊急対応を⽇日本のスタッフで⾏行行う
ことは困難でした。Engine Yardのプレミアム サポートによる
24時間365⽇日体制の運⽤用⽀支援を得ることで、安⼼心してTORETAを
稼働し続けられています。
7. 7!
国内事例例
a2mato.com
セブンバイツ様のコメント:
Engine Yardを使うことでサーバー管理理の⼿手間を減らし、アプリケーション開
発に注⼒力力出来ています。Engine Yardの製品だけでなく、サポートが素晴らし
く、最適なサーバー構成・アプリケーションの軽量量化の際に⼒力力を貸していただ
いています。このサポートは同様のサービスベンダーには無い、素晴らしいサ
ービスだと思います。
8. 8!
国内事例例
svgn.biz
スタジオ・アルカナ様のコメント:
サービスの趣旨から、セキュリティレベルの⾼高いシステム環境が必要でした。
その点で、HIPAAやSOC2の遵守にも対応可能なEngine Yardは安⼼心して稼働
できる条件になりました。また、将来的にB to B向けのサービスを展開予定の
ため、システム環境を容易易に構築できる仕組みと、保守運⽤用を代⾏行行できるサー
ビスとして、Engine Yardは我々のニーズに⾮非常にマッチしていました。
9. 10. 11. 12. 13. 13!
DevOps
• 2009年6月 Velocity2009での講演
• 開発者と運用者の関係改善
• 変化に素早く対応する
14. 15. 16. 16!
組織の文化
• 尊重
• 信頼
• 失敗に対する健全な態度
• 相手を非難しない
ツール
• 自動化されたインフラ
• バージョン管理システム
の共有
• ワンステップによるビル
ドとデプロイ
• フィーチャーフラグ
• メトリクスの共有
• IRCとインスタントメッ
センジャーのbot
DevOps
17. 18. 19. 20. 21. 22. 23. 24. 24!
Chef
• 構成管理ツール
• Chef社の製品
• Ruby / Erlang
• 冪等性が特長
• 高い人気
25. 25!
主要なバージョン
• Chef 0.10.x
‒ 開発初期の 0.6 から継続していたバージョン
• Chef 11.x
‒ アーキテクチャとインストール方法が変更
• Chef 12.x
‒ 課金体系の変更、Chef SoloとClientの統合
26. 26!
課金体系
• Enterprise Chef (~Chef11)
‒ サブスクリプション方式の有償版
‒ OSSよりもリッチなWeb UI
• OpenSource Chef-Server
‒ 機能が大幅に強化され、Analyticsなどの機能が追加
• Chef Subscription
‒ サポートの提供
‒ レプリケーション、ハイアベイラビリティ
‒ ホスティング
Chef12~
27. 27!
採用事例
• Engine Yard
• Facebook
• Prezi
• サイバーエージェント
• グリー
28. 29. 30. 31. 31!
ローカルモードとChef-Zero
• Chef Clientと通信するAPIを提供
• データを保存しないChef Server
• 元々はテスト用に開発された
• 現在はローカルモードに採用
• http://qiita.com/sawanoboly/items/
4f363909615d8a76e9e5
Chef12~
32. 32!
基本的な流れ
• 対象ノードへのChefのインストール
• クックブック(レシピ)を書く
• クックブック(レシピ)を送る
• Chefクライアント、Chef Soloの実行
33. 33!
インストール
• 現在のChefは必要なRubyなどを同梱
• /opt/chef 配下にインストールされる
• ChefにさらにGemを追加する際は注意
34. 34!
クックブック
package apache2 do!
action :install!
end!
!
service apache2 do!
action :start!
end
apache2のインストール
apache2のサービス化
35. 35!
apt-get / シェルスクリプトとの違い
• 単純なパッケージ導入以上の処理が可能
• ohaiを使ったノード情報の取得
• 設定ファイルの動的な生成
• 繰り返し実行可能 → 冪等性・収束
36. 36!
Chef / Chef Soloの実行
• Chef Clientのcronからの実行
• デーモン化も一応可能
• why run (dry run)も可能
• knife-solo ※ローカルモードに対応予定
• なるべく頻繁に実行するのが望ましい
(15分~30分)
• 実行結果をハンドラで通知
37. 38. 39. 39!
Chefの内部動作
• クックブックが実行される順序
• ファイルなどの変更タイミング
• 上から順番に実行されない
• リソースコレクションと収束
40. 41. 42. 43. 43!
クックブックのCIは欠かせない
• Infrastructure as Code
• テストのないコードはレガシーコード
• クックブックが常に健全である事を担保
• 単体テストを行う
• 単体テストを継続的に実行する (CI)
44. 44!
クックブックのテストに使うツール
• Berkshelf / librarian-chef
クックブックの収集
• foodcritic
クックブックの規約チェック
• Test-kitchen
クックブックの単体テスト
• Severspec
サーバーの状態の単体テスト
45. 45!
テストスイートの構成
クックブック クックブック
Test Kitchen
CI環境 Jenkins / Travis CI / Circle CI
仮想マシン
Vagrant
Docker
VirtualBox
LXC
VMWare
Amazon EC2
Azure
FoodCritic Serverspec
Berkshelf / librarian-chef
Chef Solo
Chef Client
Chef Zero
46. 47. 48. 49. 49!
皆様に提案
• クックブックを書こう
• クックブックをテストしよう
• コミュニティに登録しよう
• オープンソースのフローでコード改善
50. 51. 52. 53. 54.