Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Infrastructure as codeのススメ

3,433 views

Published on

オープンセミナー広島の懇親会でのLTで「Infrastructure as Code」のプレゼンをしました。

Published in: Technology
  • Dating for everyone is here: ❶❶❶ http://bit.ly/2Q98JRS ❶❶❶
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Sex in your area is here: ❤❤❤ http://bit.ly/2Q98JRS ❤❤❤
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download Full EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download doc Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

Infrastructure as codeのススメ

  1. 1. Infrastructure as Codeのススメ 自己紹介 @kanjihtmt 最近開発に関われてませんがbaserCMSユーザ会 の人です 最近はサーバよりフロントエンドの方が興味ある
  2. 2. 僕のプロビジョニングツールの変遷 自動化も重要だが「Infrastructure as Code」 という考え方・アプローチが気に入った これでサーバの秘伝のタレが無くなる! サーバ環境を抽象化できる! サーバをコードで制御ってカッコイイ!
  3. 3. Chef やっぱChefでしょう 内部DSL ユーザも多く、エコシステムが成熟している感 (去年の話ですが)今、すげえ流行ってる! だが...挫折してしまった。 学習コスト高い knife, berkshelf? 色々ありすぎでわけわからん! Windowsにknife soloがインストールできない 開発のスピードが早すぎて覚えてもすぐ変わる
  4. 4. Ansible 長所 たしかにシンプルで使いやすい! もうこれでいいじゃん!って一時はそう思った 短所(あくまで主観です) ほとんどシェルスクリプト playbookを作った俺はわかるが他人には?感 Infrastructure as Codeをフルに実現してない感 気に入らない!軽量なChefが欲しい!
  5. 5. Itamae あった!これが求めてたもの! Itamaeとは Cookpadの荒井良太さん作 Serverspecの宮下剛輔さんも開発に参加 Cookpadではプロダクションで使っているらしい 表現力はそのままLightweightなChef Chefのわけわからんのが失くなってる cookbooksもrolesも無いレシピのみ!シンプル!
  6. 6. 使い方(1) - レシピを書く# Apacheのインストールとサービスの有効と起動 package "httpd" do action :install end service "httpd" do action [ :enable, :start ] end # Apacheの設定ファイルの編集 template "httpd.conf" do path "/etc/httpd/conf/httpd.conf" source "./templates/httpd.conf.erb" mode "0644" notifies :reload, 'service[httpd]' end
  7. 7. 使い方(2) - sshで実行 リモートサーバにRubyを入れる必要なし! $ vagrant up $ itamae ssh -h 192.168.33.1 -p 22 -u vagrant recipe.rb これで終わり! レシピをまとめたければRakeに書けばいい 機能が足りなければコードを書けばいい! Rubyってそういうもんじゃん!
  8. 8. いまはプロビジョニングツールは 別になんでもいい(今ココ!) 理由:大人になったというわけではなく Severspecを知ったから! Severspecとは? インフラのテスト テスト駆動インフラという新しい考えを もたらした インフラをCI出来る
  9. 9. Serverspecのコード さっきのItameのApacheのレシピをテストしてみる! require 'spec_helper' # Apacheのインストールチェック describe package('httpd'), :if => os[:family] == 'redhat' do it { should be_installed } end # Apacheのサービスの有効と起動をチェック describe service('httpd'), :if => os[:family] == 'redhat' do it { should be_enabled } it { should be_running } end # 80ポートでリッスンしているかをチェック describe port(80) do it { should be_listening } end
  10. 10. なんでインフラにテストがいるのか? プロビジョニングで自動化しても本当に反映されてい るか分からない 1台だと手動で目視で確認でよいかもしれないが複数 台は辛い! テストコードはドキュメント! 品質や開発をドライブするためにTDDをすることはよ くある話。テストコードって動くドキュメントの側面 もある。これは過小評価され見落とされがちなテスト の効果。 CIで定期実行すればいい。他人が勝手にsshで直接手動 で変更してしまって想定どうりの状態でないことが起 こる可能性もあります。
  11. 11. まとめ 好きなプロビジョニングツールを使おう! 宗教論争をやめよう! そのかわりサーバのテスト書いてね! Chefディスっちゃったけど、良いツール! 僕はサーバを何十台も管理していないから軽量なもの が欲しいだけで、大規模なら僕もChef使うと思います ご清聴ありがとうございました。m(_ _)m

×