CUEBiC TEC BLOG

キュービックTECチームの技術ネタを投稿しております。

キュービックで働くSREについて紹介します~Part1~

概要

こんにちは、キュービックでSREをやっているYuhta28です。キュービック内のテック技術について発信します。

SREという職種はGoogleが最初に提唱し、2016年あたりから日本でも徐々にその名前が知られるようになりました。SREについて紹介した書籍やWeb記事も増え始めITエンジニアの中では知名度も上がってきたと思います。
一方、エンジニア以外にはまだ馴染みの薄い職種であり、弊社のビジネス部門からも時々SREってなんですか?という会話も聞こえてきます。SREは企業ごとに求められる役割が異なりこれと断定することが難しいです。私も他社さんのSRE業務に務めているエンジニアと情報交換する場合はどの領域に力を入れているか話を聞くのを楽しみにしています。

キュービックでのSREはどのような活動をしているかについて紹介いたします。

www.oreilly.co.jp

対象読者

  • SREについて知りたい
  • キュービックで働いているSREがどのような取り組みをしているか知りたい

一般的なSREについて

弊社のSRE活動についてお話する前にまずSREとはどのようなものかについて説明いたします。SRE(Site Reliability Engineering)とはサービスの信頼性を高めることを目的とするエンジニアです。言葉自体は新しいかも知れませんが、サービス運用に力を入れること自体は昔からありましたしインフラエンジニアが担当している部分でもありました。
インフラエンジニアとSREについて違いは何かという問いが挙げられます。他社さんのブログの紹介になりますが、インフラエンジニアはインフラの設計・構築を主担当としていることに対してSREはサービスやサイトの信頼性を高めることを目的としています。

sreake.com

では信頼性を高めるとはどのようなものでしょうか?人によって様々な意見がありますが私が考える信頼性を高めるものとしていくつか例示します。

  • パフォーマンス・チューニング
  • モニタリング改善
  • 自動化
  • デプロイ改善

サービスのパフォーマンスを改善することもあり場合によってはSREがアプリケーションのコード修正を担当するというケースもあります。そもそもどこを改善すればいいのかエンジニアが気づいていない課題を見つけるためにモニタリング改善を実施し、アラートが置きてからトラブルシューティングをするのではなく計測してシステム異常の兆候がみられたら異常が起きる前に修正できるようにすることもSREの役割になります。

キュービックでのSREについて

一般的なSREについての概要を説明したあとで弊社のSREについての紹介に移ります。
キュービックのSREの主な役割は以下のとおりです。

弊社は比較メディアを中心としたデジタルメディアを展開しています。WordPressを活用してメディアを構築しており、インフラ部分はAWSでサーバー構築しております。 WordPressは定期的にプラグイン脆弱性が報告されていますのでプラグインやテーマに対してセキュリティスキャンを定期的に実施し、必要があれば最新化して脆弱性脅威をなくしてます。またWordPressのテーマ開発を担当するフロントエンドチームの効率的なデプロイを実現するためにAWS CodePipeline1によるCI/CDなどもSREチームが構築しました。
画像のようにデプロイが完了されたらSlackの特定チャンネルに成否結果通知が飛んできますのでデプロイ結果を待つ必要がなくエンジニアの待ち時間を減らすなど開発体験向上に取り組んでいます。

Slack通知

モニタリング改善

昨年私が取り組んだタスクの一つにモニタリング基盤の改善作業がありました。私がキュービックに入社した段階ではホスト監視、メトリクス監視は株式会社はてな2が開発しているMackerel3を活用していましたが、ログについては特に監視も収集もしておらず、各種サーバー内に生成される生のログを直接見るという運用をしていました。なにかメディアに障害があるたびにどのサーバーか確認して、SSH接続してどこそこのログを確認するという運用は負担が大きかったのでまずは一箇所に収集できるように簡単に始められるAmazon CloudWatch Logs4にログを集約させることから始めました。

ログを見る文化が出来上がったら今度はホスト、メトリクス、ログ情報を一元管理できるようにしてモニタリング運用を進めるための基盤作りに着手しました。途中紆余曲折ありましたが、弊社ではDatadogを使ってモニタリング基盤を運用しています。このあたりの詳細は以前書いたブログ記事も御覧ください。

cuebic.hatenablog.com

まとめ

このように弊社のメディアが皆様に安心してお見せできるようにインフラ基盤の改善を頑張っているのがキュービックのSREになります。直接サービスを作るということは少ないですが、障害発生時に率先して動き、サービスを支えることで会社に貢献しています。
私が入社したときは私含めて4人のチームでしたが現在は倍の8人が所属するチームとなりました。こんなSREチームと一緒にエンジョイしてくれるエンジニアがいらっしゃいましたらぜひコーポレートサイトの採用ページをのぞいてみてください!
一緒に良いサービス作りましょう!

参考文献

cloud.google.com

sreake.com