Upgrade to Pro — share decks privately, control downloads, hide ads and more …

おさえておきたいDevOpsのはじめかた #init_devops

おさえておきたいDevOpsのはじめかた #init_devops

TakashiAsanuma

July 19, 2013
Tweet

More Decks by TakashiAsanuma

Other Decks in Technology

Transcript

  1. 1
    Copyright(C) 2006-2011 ZIGExN Co., Ltd. All Rights Reserved.
    OVER the DIMENSION
    ͓͓͖͍͑ͯͨ͞
    ɹɹ%FW0QTͷ͸͡Ίํ
    ೥݄೔
    גࣜձࣾ͛͡Μ
    ઙপɹܟ !SNBDDIPK

    View Slide

  2. 2
    Copyright(C) 2006-2011 ZIGExN Co., Ltd. All Rights Reserved.
    OVER the DIMENSION
    会社・自己紹介
    ■株式会社じげん 
    バーティカルメディアと呼ばれる
    情報の網羅性・検索性と一括申込み
    ・応募の利便性にこだわった、
    比較検索型情報メディアを複数運営
    しています。

    ■浅沼 敬 
    Twitter @rmacchoj7

    Chefを書いたり、Jenkinsの設定を
    したり、fluentを仕込んだり、サイトの
    開発もしたり。インフラからアプリケー
    ションまで幅広くやっています。

    h"p://zigexn.co.jp/

    View Slide

  3. 3
    Copyright(C) 2006-2011 ZIGExN Co., Ltd. All Rights Reserved.
    OVER the DIMENSION
    今日のお話
    1.DevOpsを始めた動機、課題

    2.はじめるために準備したこと

    3.導入内容、事例

    4.はじめてからの課題

    View Slide

  4. 4
    Copyright(C) 2006-2011 ZIGExN Co., Ltd. All Rights Reserved.
    OVER the DIMENSION
    %FW0QTΛ͸͡Ίͨಈػɺվ୊
    ■20以上ある沢山のサービスの開発、運用

    ■開発者個人への依存度増加気味

    ■Rails、Rubyともに複数のバージョンが存在

    ■肝心なものほどレガシーになっていく

    ■サービスごとに微妙に異なるインフラ

    View Slide

  5. 5
    Copyright(C) 2006-2011 ZIGExN Co., Ltd. All Rights Reserved.
    OVER the DIMENSION
    このままでは、
        開発の速度は上がらない!
    %FW0QTΛ͸͡Ίͨಈػɺվ୊

    View Slide

  6. 6
    Copyright(C) 2006-2011 ZIGExN Co., Ltd. All Rights Reserved.
    OVER the DIMENSION
    ͸͡ΊΔͨΊʹ४උͨ͜͠ͱ
    ■課題と対策、ロードマップ作り

    ■Dev・Ops・インフラに分けての担当設定

    ■上記を全社、エンジニアにプレゼン
       〜全社会議で発表したらエンジニアから絶賛〜

    ■今日から使えますというインパクトある導入
       〜GitHub、今日から使えますとプレゼン時に発表、
                          またもエンジニアから絶賛〜

    ■モデルPJ作り
    〜新規PJなど導入に程よいPJを見つける、作る。
                        いきなり既存PJに挑戦しない〜

    View Slide

  7. 7
    Copyright(C) 2006-2011 ZIGExN Co., Ltd. All Rights Reserved.
    OVER the DIMENSION
    ಋೖ಺༰
    ■Git→GitHubへ
      Pullrequestでみんなが開発状況を見える化

    ■Rspec+Jenkins
      バージョンの壁を越えるため、テスト書こうぜ
      
    ■Chef solo+Vagrant+serverspec+Jenkins
      インフラもCIできるようにしよう

    View Slide

  8. 8
    Copyright(C) 2006-2011 ZIGExN Co., Ltd. All Rights Reserved.
    OVER the DIMENSION
    ಋೖࣄྫ
    ■Chef solo+Vagrant+serverspec+Jenkins
      (構築は、伊藤さんのこの記事を参考に
    http://d.hatena.ne.jp/naoya/20130520/1369054828)
    Pullerequest Pull  Request  Builder
    利用して2ヶ月弱ですが、これなしでの開発は考えられない
    ぐらい便利で楽しいです。

    View Slide

  9. 9
    Copyright(C) 2006-2011 ZIGExN Co., Ltd. All Rights Reserved.
    OVER the DIMENSION
    ಋೖࣄྫ
    ■Chef soloを利用する上で決めたルール
    -  recipeはソフトウェアごとに書く
    -  nodeは、ホストごとに書く
    〜どのnodeに何を入れたか記録にする
    -  roleにある程度の役割でrecipeをまとめる
    -  インストール完了をチェックするテストを書く
    -  Jenkinsでのテストは全レシピをつなげて実行
    する
    -  Jenkinsは物理サーバで用意
       Vagrant(VerturalBox)がVM上で動作できなかった

    View Slide

  10. 10
    Copyright(C) 2006-2011 ZIGExN Co., Ltd. All Rights Reserved.
    OVER the DIMENSION
    ͸͡Ί͔ͯΒͷ՝୊
    ■Pullrequestを受ける人が属人化する
      〜Pullrequest担当をローテンション

    ■Rspec、どこまで書くのか問題
      〜できるところから着々と

    ■Jenkinsの設定が手離れしない
    〜次の担当者を指名

    ■どこまで浸透しているのか
      〜進捗を見える化する

    ■経営からの質問に答える

    View Slide

  11. 11
    Copyright(C) 2006-2011 ZIGExN Co., Ltd. All Rights Reserved.
    OVER the DIMENSION
    ਐ௙؅ཧ༻ࢿྉʢ$..*Λࢀߟʹʣ
    L1 L2 L3 L4 L5 備考
    Pullrequest型開発  

    Rspec導入  
    Jenkins導入  
    Chef-­‐solo導入
    • 初期設定
    Level1
    • モデルPJ
    導入
    • 開発環境
    へ適用
    Level2
    • 本番PJ一
    部導入
    • 本番環境
    へ一部適

    Level3
    • メンバー
    全体適用
    • 運用ルー
    ル適用
    Level4
    本番全体
    運用
    メンバー全
    体運用
    Level5

    View Slide

  12. 12
    Copyright(C) 2006-2011 ZIGExN Co., Ltd. All Rights Reserved.
    OVER the DIMENSION
    ·ͱΊ
    ■課題、対策、ロードマップをしっかりと

    ■進捗、浸透度合いをチェックする

    ■はじめの属人化を許容しつつ、ローテーション
    しながら全員が理解・必要だと思えるように

    ■できるところから事例作りを着々と

    複雑性増加や技術的負債に目がくらむこともある
    が、将来のために躊躇なく改善を進めましょう!

    View Slide

  13. 13
    Copyright(C) 2006-2011 ZIGExN Co., Ltd. All Rights Reserved.
    OVER the DIMENSION
    ご清聴、ありがとうございました!

    View Slide