Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
はてなのSRE組織2024 / Road to SRE NEXT@福岡
Search
cohalz
May 24, 2024
Technology
2
1.5k
はてなのSRE組織2024 / Road to SRE NEXT@福岡
https://sre-lounge.connpass.com/event/314694/
の発表資料です
cohalz
May 24, 2024
Tweet
Share
More Decks by cohalz
See All by cohalz
SREのキャリア、 あるいは生態 / #ya8
cohalz
11
1.5k
カンファレンスのボランティアスタッフって何やるの? / DAIMYO Meetup #4
cohalz
0
110
小さなものでも Step Functions / Serverless Meetup Fukuoka Re:boot
cohalz
0
140
ECSのCI/CD改善と標準化の取り組み / JAWS FESTA 2023 in Kyushu
cohalz
8
6.2k
ecspressoへの貢献を振り返る / JAWS-UG コンテナ支部 #24 ecspresso MeetUp
cohalz
1
5.9k
はてなフォトライフをECSに移行した話 / Hatena Engineer Seminar #20
cohalz
1
18k
SREの異動と働き方 〜はてなブログ編〜 / Hatena Engineer Seminar #13
cohalz
0
2.3k
Envoy.なんか / Kyoto.なんか #5
cohalz
1
160
CDKを用いたモダンなECSクラスタの構築と運用 / AWS Cloud Development Kit -CDK- Meetup
cohalz
6
3.2k
Other Decks in Technology
See All in Technology
誰も全体を知らない ~ ロールの垣根を超えて引き上げる開発生産性 / Boosting Development Productivity Across Roles
kakehashi
1
230
iOS/Androidで同じUI体験をネ イティブで作成する際に気をつ けたい落とし穴
fumiyasac0921
1
110
Adopting Jetpack Compose in Your Existing Project - GDG DevFest Bangkok 2024
akexorcist
0
110
OS 標準のデザインシステムを超えて - より柔軟な Flutter テーマ管理 | FlutterKaigi 2024
ronnnnn
0
160
OCI Network Firewall 概要
oracle4engineer
PRO
0
4.1k
Lambda10周年!Lambdaは何をもたらしたか
smt7174
2
110
ドメイン名の終活について - JPAAWG 7th -
mikit
33
20k
Terraform Stacks入門 #HashiTalks
msato
0
360
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
3.2k
エンジニア人生の拡張性を高める 「探索型キャリア設計」の提案
tenshoku_draft
1
130
Application Development WG Intro at AppDeveloperCon
salaboy
0
190
AWS Lambda のトラブルシュートをしていて思うこと
kazzpapa3
2
180
Featured
See All Featured
The Language of Interfaces
destraynor
154
24k
Making the Leap to Tech Lead
cromwellryan
133
8.9k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
840
The World Runs on Bad Software
bkeepers
PRO
65
11k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
Why Our Code Smells
bkeepers
PRO
334
57k
Optimising Largest Contentful Paint
csswizardry
33
2.9k
What's new in Ruby 2.0
geeforr
343
31k
Speed Design
sergeychernyshev
25
620
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
27
4.3k
Transcript
はてなのSRE組織2024 id:cohalz / @cohalz Road to SRE NEXT@福岡 1
自己紹介 • こはる(@cohalz) • 株式会社はてな SRE ◦ ブックマーク・ブログ ◦ SRE関連ワーキンググループのオーナー
• 福岡移住して1年半 ◦ リモート勤務 2
今日話すこと • 最近のはてなのSREの取り組み • PlatformとEmbeddedと横断組織について • これからについて 3
4 はてなについて
はてなについて • 様々なサービスを運用しています ◦ ブログ、ブックマーク、Mackerel、マンガ、カクヨム... ◦ https://hatena.co.jp/information/product • SREの採用枠はPlatformとEmbeddedの2つ 5
6 上: Embedded SRE 下: Platform SRE https://speakerdeck.com/masayoshi/developers-summit-2021 -summer?slide=21
7 はてなにおける SRE活動の歴史
2018年まで • EC2/オンプレ環境をプロビジョニング ◦ アプリケーション・DB • サーバの構築・運用は全てインフラチームに ◦ DevとOpsが別れていた ◦
プロダクトの多様化・複雑化により見直すことに 8
2018年 • 職種がSREに変更 ◦ 以前はWebオペレーションエンジニア • 開発チームにSREを配置しはじめる ◦ Mackerel、ブックマーク ◦
開発チームで運用をできるようにしていく 9
2019年 • SRE横串のワーキンググループ(サブ会)が発足 • 多くのサービスがオンプレからAWS(EC2)へ ◦ 合わせてOSやミドルウェアのバージョンも更新 • AWSのマネージドサービスを使い始める ◦
新規サービスはECS/RDSも 10
2020年 • 全社で本格的にSREをやっていく流れに ◦ CTOからのメッセージを発信 ◦ 各チームのプロデューサー向けに説明会を実施 • SRE成熟度レベルや障害対応テンプレートの作成 ◦
SLI/SLO運用の開始 • チーム付きSREの採用が活発に ◦ 半数以上のチームでSREが配置された 11
2021年 • SREサブ会がSRE標準化委員会へ変更 ◦ 構築・運用に便利な社内OSSやドキュメントの作成 ◦ 社内の標準技術を作って提供していく • 既存サービスをECSやRDSに移行し始める ◦
ECSの構築・CI/CD用のモジュールを作成 12
2022年 • ブックマーク・ブログなど主要サービスで ECS/RDSへの移行が完了 • EKSを簡単に構築するためのモジュールを作成 • 採用枠をEmbedded/Platform SREに変更 ◦
今までの取り組みでうまくいくのがわかってきた 13
2023年 • オンプレから完全撤退完了 • ECSのリリースフローを標準化し改善 • AWS Organizationsの利用 ◦ 開発チームが安心してクラウドを利用できるように
• ジュニアSREの採用が活発に 14
2024年 • SRE標準化委員会のオーナーがcohalzに • SRE研修資料の作成 ◦ サービス構築 ◦ 障害対応研修 •
アウトプットを増やしていく取り組み 15
16 採用枠について
17 上: Embedded SRE 下: Platform SRE https://speakerdeck.com/masayoshi/developers-summit-2021 -summer?slide=21
採用枠について • Embedded/Platformどちらも職種としてはSRE ◦ 評価項目なども同じ • プロダクトの状況を見て何人開発チームに配属さ せるかを柔軟に変化させる ◦ Embedded/Platform間での異動も行われる
18
19 Platform SRE
Platform SREについて • 全社を見るSREチームのこと ◦ 以前はいわゆるインフラ・運用チームだった • プロビジョニングやオペレーションツールも作成 • 各チームでSREが足りていないところのヘルプ
◦ 各開発チームからの問い合わせ対応も 20
運用しつつやっていたこと • オンプレ撤退 ◦ 内部ツールのクラウド移行や解約など • クラウド・SaaSのガバナンス強化 ◦ セキュリティインシデントを防ぐ ◦
費用周りの集計や取りまとめも 21
Platform Engineeringっぽいことも • 複数の開発チームが必要とする技術を用意 • SaaSでは要件が満たせない物を自前で持つ ◦ メール、フォワードプロキシ、Terraform基盤など • 今後は開発者ポータルを作成してトイル削減を目
指す 22
23 Embedded SRE
Embedded SREについて • 開発チームの一員としてSREを配置する戦略 ◦ 各チームに1~3人配置する • SRE文化の浸透、システムの改善を狙う ◦ 開発チームの一員でチームの会議にも参加する
• 2018年頃からMackerel、ブックマークで開始 ◦ 最初は異動から始まり、直接の採用は2020年頃から ◦ うまく機能したので2022年に枠として新設 24
Embedded SREについて • 現在、夜間休日のオンコールは担当しない ◦ 今後どうなるかは未定 • その人だけが運用するわけではない ◦ チーム全体で運用できるよう「プロダクトオーナーシッ
プ」を推進 ◦ Platform SREとも協力することも 25
プロダクトオーナーシップ • 開発から運用までをチーム内で完結させることを 目指す取り組み ◦ ストリームアラインドなチームを目指す ◦ チームで信頼性を制御し開発速度を向上させるため • 2018年頃から各チームで実施
26
プロダクトオーナーシップ初期 (2018~2021) • 障害対応の一次対応をチームで行える、を目指す ◦ ペアオペ、ドキュメンテーションの実施 ◦ ホストの入れ替え、監視設定などからできる人を増やす • SREing文化の浸透
◦ SLI/SLOの説明などあるべき姿を説明する 27
プロダクトオーナーシップ後期(2021~) • 開発から運用までの大半をチームで完結させる ◦ 障害の一次対応だけではなく全てを行えるように • コンテナ・マネージド移行を進める • インフラ予算の予実管理もチームで行う 28
この体制によってもたらされたもの • SREの概念は各チームに浸透した ◦ 会話する機会が増えたことによるもの • チームで技術選定ができるように ◦ RIをどのくらい買うかとかもチームで判断 29
良かったことだけでもない • Embedded SRE同士の関わりが薄い ◦ 隣の開発チームと似たような技術スタックなのに知見を共 有できてない(再発明してしまう) • 仕事が多くSREの推進は想定より進まなかった ◦
Embedded SREが手薄なチームはより顕著 • 同期を行う仕組みが必要になってきた 30
31 SREの横串組織について
SREの横串組織 • 横串のワーキンググループを作れる制度がある ◦ SREに関するサブ会は2019年に発足 ◦ 他にはフロントエンド会、セキュリティ会など • SRE関連の技術共有やドキュメンテーション、 ガイドラインの作成、ツールの作成など行う
◦ 任意参加だが全社のSREの半数程度が参加 ◦ 最初はSRE文化の浸透を目指す 32
SREingの説明会を実施 • プロデューサー・ディレクター・テックリード向 けにSREingの概念を説明する会を実施 • テックリードにはSLI/SLO運用やシステムのヒア リングも実施 33
https://speakerdeck.com/masayoshi/developers-summi t-2021-summer?slide=13 34
サブ会からSRE標準化委員会へ • 2021年にSREサブ会から名称変更 • 動くツールをチームに提供していく場に ◦ 共有やドキュメンテーションよりもさらに便利な物を提供 ◦ 標準として基本は使って欲しいという立ち位置に 35
サブ会・委員会での成果物(一部) • SRE成熟度レベルというチェックリスト • 障害対応と振り返りのためのドキュメント • 監視設定周りのガイドライン • ECS/EKSの環境を構築するためのモジュール •
障害履歴から分析するツール • MySQLアップグレードのためのツール 36
37 これからについて
SRE標準化委員会のこれから • 採用、育成 • アウトプット • 運用の改善 38
採用の難しさ • Embedded SREの採用が難しい ◦ 1~3名のチームで仕事する即戦力が求められる • 最近はまずPlatform SREとして周りと働き、そ の後Embedded
SREチームにという流れに ◦ SRE用の研修を受けてもらう 39
育成用のSRE研修資料 • はてな固有の技術やフローを学ぶ • 構築研修 ◦ はてなで使われる技術のサブセットで構築 ◦ AWS/GitHub Actions/Terraform/ecspresso/…
• 障害対応研修 ◦ 各チームの過去の障害を元に追体験してもらう 40
アウトプットを増やす • 登壇やブログで採用・育成に繋げる • 今年からSRE連載を開始 ◦ https://developer.hatenastaff.com/archive/category/SRE 41
運用の改善 • 構築に関してはモジュールを作成し導入も進んだ • 監視周りやSLO運用などもっと健全にやっていく ◦ カヤックさんがいくつかツールを作っているので検証 ◦ 今後は自分たちでも作っていく 42
Platform SREに求められていくもの • 技術力、主にコードを書く能力も上げていく ◦ 全てをSaaSでが難しくなってきた(円安...) ◦ 運用だけでなくコードを書くことが正解になるように • クラウドの知識
◦ 主にセキュリティなど • よりPlatform Engineeringをやっていく 43
Embedded SREに求められていくもの • 開発速度の向上 ◦ アプリケーションのコードに手を加える ◦ 開発プロセスの改善 • うまくいった取り組みを輸出していく
◦ チーム外だけでなく社外にも 44
まとめ • SREのやることは日々変化しています ◦ レガシーからの撤退も進みようやくスタートラインに • SRE文化は社内に浸透したと言って良い ◦ SLI/SLOといった用語は非エンジニアにも通じるように •
今後はより技術を持って改善していくのでは 45
参考になる資料 • はてなの技術組織2021 ◦ CTOからのメッセージ • Mackerel開発チームのリードSREが考える働き 方と組織作り ◦ SLO運用についてや歴史など
46
インターンやります! • はてなインターン2024 で検索 • Platform SREのチーム も募集あり • 応募締め切りは2024年
6月10日(月)12:00 47