みてねのSREが2018年に取り組んできたこと
これは、SRE Advent Calendar 2018、12日目の記事です。
子どもの写真・動画共有アプリ、「家族アルバム みてね」のSREをやっている清水です。みてねのSREが2018年に取り組んできたことについて少し書いてみたいと思います。
2018年9月に「みてねのMeetup #2 for サーバーサイド/SRE」というイベントで以下の発表をしました。
みてねSREチームの取り組み
このスライドにあるとおり、今年は様々な分野において改善を進めてきました。その後の取り組みについて少しだけ触れてみたいと思います。
SREとスクラム
みてねのSREチームは現状5名。日々のSREの仕事はスクラムでやっています。みてねでのスクラムについては、こちらも11月の「みてねのMeetup #3 ★4.7の価値創造を実現する開発プロセス」で発表がありました。
みてねのスクラム開発
SREについてもこのスライドのとおりにスクラムに取り組んでいます。他のチームに比べて、SREのバックログの粒度が大きくなりやすい傾向にあり、バックログやタスクの粒度には気を使っています。バックログはなるべく細分化してストーリーポイントの精度を高める、スプリントでの成果が見えやすくするよう心がけています。ちなみに、バックログは、Pivotal Tracker というツールで管理しています。
2018年はスクラムにおいてもいろいろと改善がされてきました、SREでのスクラムにおいては、まだまだ改善の余地がありそうです(きっといつまでも続く)。また、最近ではOKRを取り入れる試みも始めています(SREに限らず)。こちらも試行錯誤を繰り返しながら地道な改善を進めています。SREの組織やプロジェクトの運営について、SRE組織をもつ各社で情報交換してみたいところです(何社か集めての勉強会の企画を考えてます)。
AWSとの関わり
みてねのインフラはAWSを全面的に利用しているため、AWSの利用上の疑問や課題について、よりスピーディーに解決する必要があります。ミクシィグループでは、今年、AWSサポートの契約を「エンタープライズ」に切り替え、全社的にAWSによるサポートのレベルを最大化しました。
AWSにおける多くの課題はSREチームが主体となって解決に向けて取り組みます。SREチームだけで解決できないこと、時間がかかりそうなものについては、AWSサポートや弊社担当のソリューションアーキテクトの方に頼ることが多くあります。結果として下位のサポートに比べ短時間に解決することが増え、本当に取り組むべき課題に集中できるようになりました。
また、SREチームメンバーの多くはAWS re:Invent 2018へ参加し、最新情報を取り込むことはもちろん、AWSの技術者とのミーティング(EBCなど)を行い、より具体的な課題の相談やフィードバックをおこなってきました。様々な課題解決に結びつくネタを多く持ち帰ることができたので、次回も是非参加したいと思えるイベントでした。
サービスの根幹とも言えるAWSをより深く、安全に使うためにも、AWSと密にコミュニケーションを取ることはとても大事だと考えています。これはAWSに限った話ではありません。
コンテナ環境への移行
みてねではサービス初期から今に至るまでAWS OpsWorksを使ってきています。初期はそれほど大きな問題はなかったと思いますが、今使っているAWS OpsWorksでの環境は、今となっては古いバージョンのChefを前提としていることもあって(それだけではないが)、環境が故の課題が新たに生まれることが増えてきたため、現在はSREが中心となって、従来の環境からコンテナ環境に移行しつつあります。
開発環境の一部はすでにDockerベースのコンテナ環境に移行しています。本番やステージング環境、一部の開発環境では、Amazon EKSへの移行を検討しています(Amazon ECSも有用な選択肢であるため悩ましいところで、いろいろな場でよく議論されていますね)。2019年はAmazon EKSへの移行、それに関わるノウハウや知見を共有できたらと思っています。コンテナ関連の技術(特に低レイヤーな領域)は大好きなので、いろんなエンジニアと議論したいです。
海外ユーザーに向けた最適化
みてねは海外でのユーザーも増えているため、日本だけでなく、海外のユーザーがより快適に安心して使えるための工夫をすることがとても重要です。APIへのアクセスや画像・動画のアップロードをより快適にできるためのインフラ、アーキテクチャの改善を日々おこなっています。
2018年は比較的低コストで効果が高めな施策を実施してきました。特に、Amazon S3やCloudFrontの豊富な機能を最大限使い尽くすことをやってきました。AWS re:Invent 2018のEBCではそのあたりのフィードバックやさらなる改善にむけたディスカッションができました。来年さらにやるべき道筋も見えているので、海外での大成功を目指すべく改善を続けていきます。
おわりに
みてねでのSREの活動のその後について少しだけ書いてみました。私は、今のみてねのチームにジョインする前のチームからSREをやってきて、気づけばSREに関わって2年以上が経っていました。その間、SREに関するノウハウは各社アウトプットがより活発になってきている気がします。そして、各社のSREの実態が共有されることで、様々なことを学び、改善が進んでいるように思えます。これからも、SREで得た知見などは記事や登壇等でアウトプットしていきたいと思います。そして、みてねのより詳しいSREの実態については、近く発売される雑誌の特集に寄稿したので、発売された際にはぜひお読みください(詳細が公開されたら共有します!)。