SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

【デブサミ2019夏】セッションレポート(AD)

強いインフラチームをどう作る? Infrastructure as Code徹底活用術【デブサミ2019夏】

【A-5】Infrastructure as Codeでインフラチームはもっと強くなる ~ぼくのかんがえたさいきょうのいんふらちーむ~

  • このエントリーをはてなブックマークに追加

より価値の高い仕事に人間がフォーカスできるように

 左近充氏は、インフラチームが行っている他のプラクティスについても解説する。まずはコーディングについて。少人数ということを活かし、ブロードリーフではモブプログラミングを採用している。

 モブプログラミングとは、チーム全体が同じ場所に集まり、同じコンピュータを使って作業をするソフトウェア開発のアプローチだ。ブロードリーフでは東京、札幌、福岡とそれぞれの拠点が離れているため、音声のやり取りにGoogleハングアウトを、ソースコードの共有のためにVisual Studio LiveShareを使用している。

 モブプログラミングの利点として、左近充氏は「プログラムの品質が向上すること」を挙げる。リアルタイムで他のメンバーに見られていることで、「より良いコードを書かなければ」という意識が生まれるためだ。作業中に全員のレビューを受けているのと同じ状態になるため、別途レビューをする必要もなくなる。教える方も教えられる方も学ぶことが多く、チーム全体のスキルも上がる。

 また、開発スピードを落とさないための工夫も存在している。ブロードリーフでは、本番環境以外はインフラチームのメンバー以外でもクラウドリソースを触ることができる。ベストプラクティスとしては、すべてのインフラ変更を厳密にIaC管理するべきだが、現実的にはその運用は難しいためだ。だが、この方法には課題がある。Terraformは状態を保持しているため、手作業でクラウドリソースを修正した場合には設定の差分が出てしまうのだ。

 ブロードリーフではその課題を、既存のインフラリソースからTerraformのコードを生成してくれるTerraformingやTerraformerなどを用いて解消している。さらに、現環境とIaCの差分を自動的にSlack通知してくれるSlack Botも存在している。通知内容を確認することで、こまめにIaCをメンテナンスできる仕組みが確立されているのだ。

 「なるべくマネージドサービスを使い、環境やツールを自作しない」という方針も徹底しているという。何かを自作すると、バージョンアップ対応や脆弱性対応など必ずその後のメンテナンスが必要になってしまうためだ。マネージドサービスを使うことで、運用工数を最小化できる。

 また、「チームメンバーが思い思いにCronJobを仕掛けると、どのサーバーで何が動いているかわからなくなる」という課題を解決するために、OSSのジョブ管理ツールであるRundeckを導入したという。RundeckはGUIやAPIを介してジョブの作成や実行、管理、スケジューリングを行える。多種多様なプラグインも存在しており、機能拡張も容易だ。

 さらに、適切な運用を行うため、アラート通知の見直しも行った。以前は、ありとあらゆるアラートをすべてメールで通知していたそうだ。その結果、「朝起きると70、80件もメールが来ていたが、ひたすらアーカイブしてみると結局どれもサービス影響はなかった」という事態が多発していたという。まさにメール地獄である。

 監視において重要なのは「本当に必要な情報だけを通知すること」だ。狼少年のようなアラートは、必ず無視されるようになってしまう。人が対応する必要のない異変については、データを収集するのみで通知はしないというルールを徹底すべきなのだ。

 最後に、左近充氏はセッションをこう総括した。

 「IaCはあくまで『手段』です。ツールで解決できることはツールでやって、人間がより価値のある仕事にフォーカスできるようにすることが目的です。例えば、先端技術の検証・導入、ミドルウェア・クラウドの理解向上、可用性・信頼性の向上、コスト削減などに時間を割くべきです。

 そうすれば、さらに業務を効率化して、できることを増やして強くなり続けることができます。IaCを使って不要な心配や失敗をなくして、必要な失敗だけをしてチャレンジし続けられるチーム。これこそ、『ぼくのかんがえたさいきょうのいんふらちーむ』となります」

お問い合わせ

 株式会社ブロードリーフ

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
【デブサミ2019夏】セッションレポート連載記事一覧

もっと読む

この記事の著者

CodeZine編集部(コードジンヘンシュウブ)

CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/11646 2019/08/07 12:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング