DevOps Advent Calendar 2018 1日目です。
DevOps って何ぞや
アドベントカレンダーやるにあたり、初心に戻ってDevOpsって何ってところを見てみたいと思います。
最初聞いた時、デブが運用やる話?って思ったのは秘密です。
DevOps という考え方の出現
DevOpsとは何か? そのツールと組織文化、アジャイルとの違い
ぐぐってみたら、このサイトを発見して、元々 flickr の人が考えたものだったらしいということを知りました。
とりあえず、最初の考え方って重要ですよね。
読んでもらえるとわかるのですが(手抜き)、Dev(開発)とOps(運用)が愛し合うってことですね(違

引用:10+ Deploys Per Day_ Dev and Ops Cooperation at Flickr Presentation
反発しあって、責任を押し付けあっていた、開発と運用が協力しあうことを目標として、そのためのツールや文化について言われています。
ツール
1. Automated infrastructure
自動化されたインフラストラクチャということで、Ansible とか Terraform とか chef とかなんとか使って構築の自動化するってことですね。
特定の人にしかできない秘伝のたれ的なことをやめましょうってことなのかな。
2. Shared version control
共有化されたバージョン管理ということで、Git とか SVN とか Mercurial とかなんとか使って、きちんとバージョンを管理しましょうと。
誰のせいとかじゃなくて、どういうリリースをしたから不具合出たってことをはっきりさせようってことかな。
3. One step build and deploy
1手順でのビルドとデプロイということで、Jenkins や CircleCi とか travis とか Google Cloud Builder とか使って、さくっとビルド&デプロイしましょうと。
コマンドラインを何行もポチポチ打って、ビルドとかデプロイするんじゃねーよと(心が痛い・・・)
4. Feature flags
機能フラグということで、コンフィグファイルなどで、機能をオンオフにできるってことでいいんだと思います。
結構埋め込み式のやつとか見かけますから、オンオフできる方が便利ですよね。
でも、そうするとソースの肥大化とかしないのかな?とか別の心配事項は出てきますけど。
5. Shared metrics
メトリックの共有化ということで、計測して計測して、そして、計測しましょうってことですかね。
計測された数値で見ることによって、どこがどう悪いのか、とかがわかるわけですよね。
お前が悪いとか、責任のなすりあいにならなくて、問題あるとこ直すだけでよいってことになります。
6. IRC and IM robots
IRCとIMボットということで、IRCは最近あまり使われないですけど、slack とか chatwork とか何なら Line でもいいと思います。
そういうとこに、ビルドしたよとか、問題発生したよ、とか自動で流せるようにするわけですね。
最近の開発だと、slack が色々と連携しやすいのもあって、よく使われてるのを見ますが、そこは会社の文化もあるので、好き好きですね。
文化
1. Respect
尊敬ということで、お互いを尊重しましょうと。
けなしあう相手ではないので、尊重して協力してやってきましょうということですかね。
ラブ&ピースです。
2. Trust
信頼ということで、お互いのやることを信頼しようということでしょうか。
ビジネスを成功させるためにみんながベストを尽くすという点は共通してるので。
3. Healthy attitude about failure
失敗に対する健全な態度ということで、失敗は起こるものだと考えましょうってことですかね。
何も失敗せずリリースできればいいですけど、何1つ不具合ないとかの方が珍しいですから、失敗はあるものだと考えて、それを責めたりしないようにしましょうと。
4. Avoiding Blame
非難を避けるということで、3とちょっとかぶる感じもありますけど、問題が発生したときに失敗を探すのではなく、問題点を見つけることに注力しろってことですかね。
誰が失敗したとか言ってたら余計な段階を踏むことになるので、問題点を見つけて、それを解決する、というシンプルな方にしましょうと。
まぁ、誰が悪いとか責任のなすりつけあいはよくある話ですね・・・
終わりに
細かい話は参照したところを読んでいただけるといいと思いますし、より細かくわかりやすく説明されてます(他力本願)
日本の場合、ツールの方ばかりに目が行って、文化の方はなおざりになるパターンが多いような気もします。
文化も含めての DevOps だと思うので、そのあたり気にかけていきたいものですね。
なんとなく、デブが Ops やるって何だろうと初心に戻る感じで、原点探しをしてみました。
そういう flickr さんは無料版がずいぶんと縮小したようなので、残念な感じではありますが・・・