More Related Content Similar to Aizu.LT::Tokyo #4 (20) Aizu.LT::Tokyo #41. 環境構築自動化ツール
Chef を試してみた
Aizu.LT kanagawaWithIndex:1
2013/3/30 at uPhyca inc.
Taku Unno
DWANGO Co,. Ltd
boscoworks@gmail.com
2. Profile
海野 拓 (Taku Unno)
2004-2008 会津大学 (画像処理学講座)
2008-2012 Yahoo!JAPAN
Yahoo!バラエティ、Yahoo!ニュース、Yahoo!ロコ
2012/4-Now Dwango
RCP、許諾楽曲開発、NicoSound、マーケティング
Mail: boscoworks@gmail.com
Facebook: http://on.fb.me/yDZ2XO
6. 開発マイルストーン
PDCA サイクル
Plan, Do, Check, Act
企画・設計
開発・テスト
リリース
性能評価・マーケティング
改善
今日はリリースの話です
7. How to deploy?
独自シェルスクリプト
SCP
svn switch
rake
kickstart
Puppet
yinst
14. 構成要素
Cookbook (ソフトウェアを構築するための手順ひとま
とめ)
Recipe (実行内容を記述するスクリプト)
Attribute (変数の定義)
Template (テンプレートファイル)
Resource (処理の抽象化)
Role (Recipeを組み合わせて役割として定義)
Node (管理対象のクライアントマシン)
16. chef.json
{
"run_list": [
"recipe[php::php]",
"recipe[php::apache]",
"recipe[php::phpunit]”
]
}
19. OSによる条件分岐
package "php5-cli" do
case node[:platform]
when "ubuntu"
package_name "php5-cli"
when "centos"
package_name "php53"
end
action :install
not_if "which php"
end
24. Attribute を Template で使う
Template
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName <%= node[:server_name] %>
DocumentRoot /home/boscoworks/public
…
26. Attribute を Recipe で使う
Recipe
execute "tar" do
command "tar jxvf /tmp/httpd-#{node.httpd_version}.tar.bz2 -C /tmp/"
only_if do
File.exists?("/tmp/httpd-#{node.httpd_version}.tar.bz2")
end
…
29. 参考文献
Chef wiki
http://wiki.opscode.com/display/chef/Home
Opscode Community
http://community.opscode.com/cookbooks
日本Chefユーザー会
https://www.facebook.com/japan.chef.users.group
Chef でサーバ管理を楽チンにしよう!
http://jp.rubyist.net/magazine/?0035-ChefInDECOLOG
Chef を試してみた
http://higelog.brassworks.jp/?p=643
ChefでCookbookを作るときのちょっとしたコツ 9選
http://heartbeats.jp/hbblog/2013/01/chef-cookbook-tips.html
chef-soloで環境設定
http://tdoc.info/blog/2012/05/08/chef_solo.html
30. ご清聴ありがとうございまし
た
Taku Unno
DWANGO Co,. Ltd
boscoworks@gmail.com
http://on.fb.me/yDZ2XO