Slide 1

Slide 1 text

はてなのSRE組織2024 id:cohalz / @cohalz Road to SRE NEXT@福岡 1

Slide 2

Slide 2 text

自己紹介 ● こはる(@cohalz) ● 株式会社はてな SRE ○ ブックマーク・ブログ ○ SRE関連ワーキンググループのオーナー ● 福岡移住して1年半 ○ リモート勤務 2

Slide 3

Slide 3 text

今日話すこと ● 最近のはてなのSREの取り組み ● PlatformとEmbeddedと横断組織について ● これからについて 3

Slide 4

Slide 4 text

4 はてなについて

Slide 5

Slide 5 text

はてなについて ● 様々なサービスを運用しています ○ ブログ、ブックマーク、Mackerel、マンガ、カクヨム... ○ https://hatena.co.jp/information/product ● SREの採用枠はPlatformとEmbeddedの2つ 5

Slide 6

Slide 6 text

6 上: Embedded SRE 下: Platform SRE https://speakerdeck.com/masayoshi/developers-summit-2021 -summer?slide=21

Slide 7

Slide 7 text

7 はてなにおける SRE活動の歴史

Slide 8

Slide 8 text

2018年まで ● EC2/オンプレ環境をプロビジョニング ○ アプリケーション・DB ● サーバの構築・運用は全てインフラチームに ○ DevとOpsが別れていた ○ プロダクトの多様化・複雑化により見直すことに 8

Slide 9

Slide 9 text

2018年 ● 職種がSREに変更 ○ 以前はWebオペレーションエンジニア ● 開発チームにSREを配置しはじめる ○ Mackerel、ブックマーク ○ 開発チームで運用をできるようにしていく 9

Slide 10

Slide 10 text

2019年 ● SRE横串のワーキンググループ(サブ会)が発足 ● 多くのサービスがオンプレからAWS(EC2)へ ○ 合わせてOSやミドルウェアのバージョンも更新 ● AWSのマネージドサービスを使い始める ○ 新規サービスはECS/RDSも 10

Slide 11

Slide 11 text

2020年 ● 全社で本格的にSREをやっていく流れに ○ CTOからのメッセージを発信 ○ 各チームのプロデューサー向けに説明会を実施 ● SRE成熟度レベルや障害対応テンプレートの作成 ○ SLI/SLO運用の開始 ● チーム付きSREの採用が活発に ○ 半数以上のチームでSREが配置された 11

Slide 12

Slide 12 text

2021年 ● SREサブ会がSRE標準化委員会へ変更 ○ 構築・運用に便利な社内OSSやドキュメントの作成 ○ 社内の標準技術を作って提供していく ● 既存サービスをECSやRDSに移行し始める ○ ECSの構築・CI/CD用のモジュールを作成 12

Slide 13

Slide 13 text

2022年 ● ブックマーク・ブログなど主要サービスで ECS/RDSへの移行が完了 ● EKSを簡単に構築するためのモジュールを作成 ● 採用枠をEmbedded/Platform SREに変更 ○ 今までの取り組みでうまくいくのがわかってきた 13

Slide 14

Slide 14 text

2023年 ● オンプレから完全撤退完了 ● ECSのリリースフローを標準化し改善 ● AWS Organizationsの利用 ○ 開発チームが安心してクラウドを利用できるように ● ジュニアSREの採用が活発に 14

Slide 15

Slide 15 text

2024年 ● SRE標準化委員会のオーナーがcohalzに ● SRE研修資料の作成 ○ サービス構築 ○ 障害対応研修 ● アウトプットを増やしていく取り組み 15

Slide 16

Slide 16 text

16 採用枠について

Slide 17

Slide 17 text

17 上: Embedded SRE 下: Platform SRE https://speakerdeck.com/masayoshi/developers-summit-2021 -summer?slide=21

Slide 18

Slide 18 text

採用枠について ● Embedded/Platformどちらも職種としてはSRE ○ 評価項目なども同じ ● プロダクトの状況を見て何人開発チームに配属さ せるかを柔軟に変化させる ○ Embedded/Platform間での異動も行われる 18

Slide 19

Slide 19 text

19 Platform SRE

Slide 20

Slide 20 text

Platform SREについて ● 全社を見るSREチームのこと ○ 以前はいわゆるインフラ・運用チームだった ● プロビジョニングやオペレーションツールも作成 ● 各チームでSREが足りていないところのヘルプ ○ 各開発チームからの問い合わせ対応も 20

Slide 21

Slide 21 text

運用しつつやっていたこと ● オンプレ撤退 ○ 内部ツールのクラウド移行や解約など ● クラウド・SaaSのガバナンス強化 ○ セキュリティインシデントを防ぐ ○ 費用周りの集計や取りまとめも 21

Slide 22

Slide 22 text

Platform Engineeringっぽいことも ● 複数の開発チームが必要とする技術を用意 ● SaaSでは要件が満たせない物を自前で持つ ○ メール、フォワードプロキシ、Terraform基盤など ● 今後は開発者ポータルを作成してトイル削減を目 指す 22

Slide 23

Slide 23 text

23 Embedded SRE

Slide 24

Slide 24 text

Embedded SREについて ● 開発チームの一員としてSREを配置する戦略 ○ 各チームに1~3人配置する ● SRE文化の浸透、システムの改善を狙う ○ 開発チームの一員でチームの会議にも参加する ● 2018年頃からMackerel、ブックマークで開始 ○ 最初は異動から始まり、直接の採用は2020年頃から ○ うまく機能したので2022年に枠として新設 24

Slide 25

Slide 25 text

Embedded SREについて ● 現在、夜間休日のオンコールは担当しない ○ 今後どうなるかは未定 ● その人だけが運用するわけではない ○ チーム全体で運用できるよう「プロダクトオーナーシッ プ」を推進 ○ Platform SREとも協力することも 25

Slide 26

Slide 26 text

プロダクトオーナーシップ ● 開発から運用までをチーム内で完結させることを 目指す取り組み ○ ストリームアラインドなチームを目指す ○ チームで信頼性を制御し開発速度を向上させるため ● 2018年頃から各チームで実施 26

Slide 27

Slide 27 text

プロダクトオーナーシップ初期 (2018~2021) ● 障害対応の一次対応をチームで行える、を目指す ○ ペアオペ、ドキュメンテーションの実施 ○ ホストの入れ替え、監視設定などからできる人を増やす ● SREing文化の浸透 ○ SLI/SLOの説明などあるべき姿を説明する 27

Slide 28

Slide 28 text

プロダクトオーナーシップ後期(2021~) ● 開発から運用までの大半をチームで完結させる ○ 障害の一次対応だけではなく全てを行えるように ● コンテナ・マネージド移行を進める ● インフラ予算の予実管理もチームで行う 28

Slide 29

Slide 29 text

この体制によってもたらされたもの ● SREの概念は各チームに浸透した ○ 会話する機会が増えたことによるもの ● チームで技術選定ができるように ○ RIをどのくらい買うかとかもチームで判断 29

Slide 30

Slide 30 text

良かったことだけでもない ● Embedded SRE同士の関わりが薄い ○ 隣の開発チームと似たような技術スタックなのに知見を共 有できてない(再発明してしまう) ● 仕事が多くSREの推進は想定より進まなかった ○ Embedded SREが手薄なチームはより顕著 ● 同期を行う仕組みが必要になってきた 30

Slide 31

Slide 31 text

31 SREの横串組織について

Slide 32

Slide 32 text

SREの横串組織 ● 横串のワーキンググループを作れる制度がある ○ SREに関するサブ会は2019年に発足 ○ 他にはフロントエンド会、セキュリティ会など ● SRE関連の技術共有やドキュメンテーション、 ガイドラインの作成、ツールの作成など行う ○ 任意参加だが全社のSREの半数程度が参加 ○ 最初はSRE文化の浸透を目指す 32

Slide 33

Slide 33 text

SREingの説明会を実施 ● プロデューサー・ディレクター・テックリード向 けにSREingの概念を説明する会を実施 ● テックリードにはSLI/SLO運用やシステムのヒア リングも実施 33

Slide 34

Slide 34 text

https://speakerdeck.com/masayoshi/developers-summi t-2021-summer?slide=13 34

Slide 35

Slide 35 text

サブ会からSRE標準化委員会へ ● 2021年にSREサブ会から名称変更 ● 動くツールをチームに提供していく場に ○ 共有やドキュメンテーションよりもさらに便利な物を提供 ○ 標準として基本は使って欲しいという立ち位置に 35

Slide 36

Slide 36 text

サブ会・委員会での成果物(一部) ● SRE成熟度レベルというチェックリスト ● 障害対応と振り返りのためのドキュメント ● 監視設定周りのガイドライン ● ECS/EKSの環境を構築するためのモジュール ● 障害履歴から分析するツール ● MySQLアップグレードのためのツール 36

Slide 37

Slide 37 text

37 これからについて

Slide 38

Slide 38 text

SRE標準化委員会のこれから ● 採用、育成 ● アウトプット ● 運用の改善 38

Slide 39

Slide 39 text

採用の難しさ ● Embedded SREの採用が難しい ○ 1~3名のチームで仕事する即戦力が求められる ● 最近はまずPlatform SREとして周りと働き、そ の後Embedded SREチームにという流れに ○ SRE用の研修を受けてもらう 39

Slide 40

Slide 40 text

育成用のSRE研修資料 ● はてな固有の技術やフローを学ぶ ● 構築研修 ○ はてなで使われる技術のサブセットで構築 ○ AWS/GitHub Actions/Terraform/ecspresso/… ● 障害対応研修 ○ 各チームの過去の障害を元に追体験してもらう 40

Slide 41

Slide 41 text

アウトプットを増やす ● 登壇やブログで採用・育成に繋げる ● 今年からSRE連載を開始 ○ https://developer.hatenastaff.com/archive/category/SRE 41

Slide 42

Slide 42 text

運用の改善 ● 構築に関してはモジュールを作成し導入も進んだ ● 監視周りやSLO運用などもっと健全にやっていく ○ カヤックさんがいくつかツールを作っているので検証 ○ 今後は自分たちでも作っていく 42

Slide 43

Slide 43 text

Platform SREに求められていくもの ● 技術力、主にコードを書く能力も上げていく ○ 全てをSaaSでが難しくなってきた(円安...) ○ 運用だけでなくコードを書くことが正解になるように ● クラウドの知識 ○ 主にセキュリティなど ● よりPlatform Engineeringをやっていく 43

Slide 44

Slide 44 text

Embedded SREに求められていくもの ● 開発速度の向上 ○ アプリケーションのコードに手を加える ○ 開発プロセスの改善 ● うまくいった取り組みを輸出していく ○ チーム外だけでなく社外にも 44

Slide 45

Slide 45 text

まとめ ● SREのやることは日々変化しています ○ レガシーからの撤退も進みようやくスタートラインに ● SRE文化は社内に浸透したと言って良い ○ SLI/SLOといった用語は非エンジニアにも通じるように ● 今後はより技術を持って改善していくのでは 45

Slide 46

Slide 46 text

参考になる資料 ● はてなの技術組織2021 ○ CTOからのメッセージ ● Mackerel開発チームのリードSREが考える働き 方と組織作り ○ SLO運用についてや歴史など 46

Slide 47

Slide 47 text

インターンやります! ● はてなインターン2024 で検索 ● Platform SREのチーム も募集あり ● 応募締め切りは2024年 6月10日(月)12:00 47