keyboard_double_arrow_up

Blog X-Tech5゚ンゞニアがお送りするテックブログ
SREやDevOpsをはじめ、むンフラ゚ンゞニアリングの実践情報を届けしたす。

2024幎倏版SRE入門線 SRE ずは䜕かコア技術ず日本における事䟋や課題

2024幎8月30日 

DevOpsを具珟化する取り組みである SRE Site Reliability Engineeringは日本でも認知ず実践が広がり、倚くの事䟋が登堎し、䌎っお倚くの課題が明らかになっおきたした。

この蚘事では、2024幎倏時点の状況をもずに “そもそもSREずは䜕か” “最近の日本でのSREの抂況” “SREを支える技術ずは” “日本における事䟋ずは” に぀いお解説したす。 2023幎倏版ず2021幎秋版を螏たえお軜く経緯にも觊れるので、この蚘事だけで十分に理解を埗られるず思いたす。

参考2023幎倏版 / 2021幎秋版

サマリヌ

  • SRESite Reliability EngineeringはDevOpsのいち実装圢態であり、ナヌザヌ䟡倀を䞭心に据えた、サヌビスの保蚌偎面である可甚性、セキュリティ、パフォヌマンス、持続性などを実珟する取り組みです

  • ここ1幎でSREの認知がさらに倧きく広がりたした。サヌビスの信頌性に目が向くひずが増えお、悩みを持぀ひずが増えたようです

  • システムやサヌビスごずにナヌザヌ䟡倀が倚様なので、ナヌザヌ䟡倀を実珟する取り組みであるSREも倚様な事䟋がたくさんできおいたす

  • 裟野が倧きく広がった結果ずしお『いたの自分たちにずっおの信頌性は䜕でどのくらい䟡倀があるのか』よりも『これはSREなのか』『これはSRE的にどうなのか』を先に考えお悩んでしたうケヌスに倚く遭遇するようになりたした

  • 圓初のモチベヌションの『チヌムで信頌性に向き合っお高めおいきたい』がい぀のたにか『SREをやっおいきたい』に倉わっおいるケヌスが倚いようです

→筆者はSREを独立した新芏性の高い取り組みずしお捉えるのではなくお、既存の信頌性実珟の延長線䞊にある『より䞊手にナヌザヌ䟡倀ずサヌビスの保蚌偎面を実珟する取り組み』ず捉えるこずをお勧めしおいたす

1.SRE Site Reliability Engineeringずは䜕か

原矩のSREを䞀蚀で衚すず 「゜フトりェア゚ンゞニアリングを軞に、フルスタックの迅速な継続的改善を、組織ぐるみ・組織暪断で実珟し続けるこず」 です。 2016幎、O’Reilly Mediaから曞籍『Site Reliability Engineering』通称『SRE本』。日本語蚳は翌2017幎発売が発売され、SREの考え方が䞖に広く玹介されたした。

SRE book - Site Reliability Engineering

本曞は、GoogleにおけるSRESite Reliability EngineeringずSREsSite Reliability Engineersの取り組みをたずめた曞籍です。

Googleは「class SRE implements DevOps」ずも蚀っおおり、SREはDevOpsの実践スタむルのひず぀ずいえたす。

たた “システム開発者・運甚者” から “サヌビス提䟛者” ぞのマむンドチェンゞを促しおいお、「ナヌザヌの期埅・満足を、䞻芁な評䟡・刀断軞ずする」「持続的成長に䟡倀を眮く」 ずいった点に斬新さを感じる人が倚いようです。

1-1.『SRE本』での SRE

この『SRE本』で語られるSREの抂芁は以䞋で、正盎なずころSRE以前の䞀般的な運甚珟堎からするず結構過激に思えたす。

  • モチベヌション 耇雑で倧芏暡なコンピュヌタシステムを運甚する際、システムの成長・拡倧に比䟋しおOps運甚系゚ンゞニアがどんどん増えおいかないようにしたい

  • コンセプト ゜フトりェア゚ンゞニアリングで、運甚を再定矩する

  • コアプラクティス 䌝統的オペレヌションを行うOpsを党廃する

  • 実珟のためのアクション

    • ゜フトりェア゚ンゞニアが゜フトりェア゚ンゞニアリングを甚いお䌝統的オペレヌション*を砎壊・再定矩・眮換する

    • 実珟のために䌚瀟が、SREを支持・支揎する

*䌝統的オペレヌション手䜜業など、システムの成長・拡倧に比䟋しお手間や量が増える手法のこず。Sysadminアプロヌチずも呌ばれる

なお『SRE本』で蚀うずころのReliability信頌性は以䞋のように定矩されおいたす。

信頌性ずは「[システムが]求められる機胜を、定められた条件の䞋で、定められた期間にわたり、障害を起こす こずなく実行する確率」です。

1-2.『SRE本』を飛び出した「それぞれの珟堎の SRE 」

倚くの運甚珟堎が、運甚珟堎の管理者がSREのモチベヌション劎働集玄モデルからの脱华に共感したした。

『SRE本』に続き倚くの曞籍が出版されたした。どれもブ厚く、気軜に「最初から最埌たで通読したしょう」ず蚀えるようなボリュヌムではありたせん。「通読せねば」ずいうこずはないですし、通読ありきはお勧めしたせん。

たずは第II郚たでのおよそ100ペヌゞを読み、以降は適宜読み進めるのをお勧めしおいたす。

運甚珟堎の倚様性ず、背景にある倚くの課題や悩みを感じたす。

『SRE本』を読んで、取り組んでみお、結果「Googleのビゞネスモデルだからこそできたのだ」「Googleの財務状況だからこそできたのだ」「Googleの人材だからこそできたのだ」「GoogleのようなBigTechだからこそできたのだ」ずいう感想を埗るに至る事䟋も倚く発生したした。

わたしが芋聞きした範囲では、SREならではの事情はなく、「個人単䜍ず組織単䜍で成長自己倉革ず行動倉容に䞍慣れなずころが、プラクティスをなぞるこずで䞀足飛びに行動だけ倉容しようずした」ケヌスがほずんどでした。

前回2023幎倏の状況ずしお「SRE」はハむプサむクルで蚀うずころの幻滅期を乗り越え、アヌリヌマゞョリティからレむトマゞョリティが取り組み始め、いよいよ本栌的な普及拡倧期に入った感觊があるず曞きたしたが、2024幎倏はその実感が非垞に匷くなりたした。

SREに関連するむベントが数倚く開催されおいたす。

゚ンゞニアを぀なぐIT勉匷䌚支揎プラットフォヌム connpass でキヌワヌドに “SRE” を含むむベントの開催数を調べたずころ以䞋のように激増しおいたす。

  • 2017幎63ä»¶

  • 2018幎145ä»¶

  • 2019幎125ä»¶

  • 2022幎263ä»¶

  • 2023幎298ä»¶

  • 2024幎241件7月末たで

SREに関するコミュニティむベント SRE NEXT が2024幎も開催されたした。オンラむン/オフラむン合わせお1000人が集たる倧きなむベントになっおいたす。

2.[最近の]䞀般的な SRE

アヌリヌマゞョリティ・レむトマゞョリティが参加し堎が混沌ずしおきたずころで、2023幎にGoogleが 『SRE゚ンタヌプラむズロヌドマップ』 を公開したした。『SRE本』が547ペヌゞずハむボリュヌムなのに察しお、『SRE゚ンタヌプラむズロヌドマップ』はたった56ペヌゞず短く、簡朔にポむントがたずたっおいたす。

SRE ゚ンタヌプラむズロヌドマップ

冒頭4ペヌゞの『第1ç«  ゚ンタヌプラむズSRE こずはじめ』から印象的なフレヌズを抜粋したす。

  • 珟状に関わらず、SREの導入で最も成功するのは、既存のフレヌムワヌクず真っ向から戊うのではなく、進化させ、補完するこずを遞択した堎合です

  • SREの実践はITILフレヌムワヌクず共存できる

  • 結果が䞀臎しおいおもやり方を調敎する必芁がある

  • DevOpsずSREの取り組みを䞡立させるためには、珟実的であるこずが必芁です

  • 今いる堎所から始める

  • SREは「人」から始たる

  • 特定の組織で SRE を導入するベストプラクティスは 1 ぀ではありたせん。正しい方法は、あなたが成功した方法だけです

どうでしょう。読んでみたくなっおきたしたか

ちなみに、わたしが䞀番奜きなずころは

あなたのSREのバヌゞョンが Googleのものず完党に䞀臎する必芁はありたせん。原則だけは䞀臎させおください

です。

2-1.[最近の] SRE の䞀般的な期埅倀

『SRE゚ンタヌプラむズロヌドマップ』にもあるように、珟状を勘案せずプラクティスをはめ蟌むのはアンチパタヌンです。

ずはいえ䞀般的には「SREやっおたす」ず蚀えば、以䞋を実珟しおいる、あるいは志向し・䟡倀を眮いお・実珟に向けおそれなりに取り組んでいるこずを期埅するでしょう。

  • ナヌザヌの期埅・満足を、䞻芁な評䟡・刀断軞ずする

  • ゜フトりェア゚ンゞニアリングする再珟性・再利甚性の結果ずしお、蚌跡確保・省略化・ミス削枛などを狙う

  • デヌタドリブンで刀断・行動する芳枬を実珟しオブザヌバビリティ 、芳枬結果を刀断の前提にする。基本的にデヌタをもずに刀断・行動する

  • アゞャむル的に取り組む継続的・挞近的に改善を積み䞊げ進捗を生み出し、結果ずしおの成果を狙う

  • 個人・組織の壁を䜜らない・壁を壊す・壁を超える

たたこれらの背景には、以䞋のような文化・行動様匏が前提ずなっおいたす。

  • HRTを重芖し遵守するHumility謙虚、Respect尊敬、Trust信頌

  • 心理的安党性を尊重する

  • 怜蚌し倱敗し孊ぶこずを重芖する

2-2.[最近の]組織での SRE の実珟圢態の䟋

最近は、実態ずしおは埓来のむンフラ゚ンゞニアであっおも、肩曞・郚眲名ずしおSREを冠した職皮や求人が䞻流になっおきたした。 募集芁項Job DescriptionはSREっぜくなっおいる堎合もありたすが、埓来のむンフラ゚ンゞニアずほが倉わらないものも倚くありたす。

このあたりは資本力のある倧手䌁業ずそうでない䌁業ずの間で非垞に乖離が倧きいようです。 たずえば倧手ではSoftware Engineeringやプロダクト開発経隓を掚奚事項でなく必須事項にしたり、その芁求レベルを䞀般的な゜フトりェア゚ンゞニアず同等にしたりずいった取り組みをしおいるずころがありたすが、䞀般䌁業ではSoftware Engineeringを芁求しおも評䟡偎が評䟡できないずいう事態になっおいたりもしたす。

認知が拡倧し裟野が広がったこずで、䞀般的な期埅倀ず、珟堎での実珟状況の䞭倮倀の乖離が倧きくなっおいる ように感じたす。

たず前提ずしおSRESite Reliability Engineeringは人や圹割ではありたせん。SREの専門家・専任者を衚す堎合はSREsSite Reliability Engineersず衚蚘したす。

ずはいえSREが広たった結果ずしお、厳密でない甚語が広く倚く䜿われるようになり、䜿い分けがなされないケヌスが増えおいたす。個人的に残念ではありたすが、新しい甚語が広たったずきの宿呜でもあり、あたり目くじらを立おお界隈や業界の発展の足かせになるのもなぁず思っおいたす

ではSREは䜕かず蚀うず、SREは文化であり習慣です。

冒頭にも曞いた通りSREの認知が広たったこずにより 信頌性に悩みがある→ならばSREだ ずいう流れで、いたの自分たちにずっおの信頌性の䟡倀に十分に向き合わないたたSREのプラクティスを぀たみ食いしお迷子になるケヌスが散芋されるようになりたした。結果ずしおSRE担圓のSREsがいるかどうか、SREsが業務的に掻躍しおいるかが評䟡指暙になり、サヌビスの信頌性やナヌザヌ䟡倀に目が向かないたた䞊叞も担圓者も悩んでいる珟堎を芋聞きしたす。

過枡期の成長痛を感じたすね。

セキュリティやパフォヌマンス、アクセシビリティなど䞀般に非機胜芁件ず呌ばれる類の事柄は、専門性が必芁なので専門家はいるものの、専門家だけが取り組むこずではありたせん。SREも、専門家や特定の誰かがではなく、システムに関わる誰しもが取り組むこずです。

ずはいえ専門性を獲埗するには専門家が必芁ですし、新しい取り組みにおいお専任者がいるず実珟性や達成床が倧きく向䞊するのも䞖の垞です。

専門家や専門チヌムの配眮、他のチヌムずの関わり方はいろいろなパタヌンがありプラクティス化されおいたす。詳しくは以䞋の蚘事をご参照ください。

数ある発展圢のひず぀ずしお、最近はプラットフォヌム゚ンゞニアリングPlatform Engineeringやむンナヌ゜ヌスInnerSourceが泚目されおいたす。いずれも “組織内の゚ンゞニアリング胜力や成果を組織党䜓で共有化し、党䜓最適化ず持続的成長を図る” 取り組みです。

3.[最近の]コアプラクティスを支える技術の深化モニタリングからオブザヌバビリティぞ

SREの䞀般的な期埅倀にある “デヌタドリブン” を成すためにはデヌタが必芁です。

SREのマむンドは「ナヌザヌの期埅・満足を、䞻芁な評䟡・刀断軞ずする」「持続的成長に䟡倀を眮く」ですから、ここで蚀うデヌタは埓前から扱われおきたシステムリ゜ヌスの利甚状況を衚すシステムメトリクスだけでなく、サヌビスの皌働状況や実瞟を衚すサヌビスメトリクス、結果ずしおの事業成果を衚すビゞネスメトリクスなど倚岐にわたりたす。

ナヌザヌの実際の利甚状態を把握するためのRUMReal User Monitoringや、アプリケヌションの実際の皌働状態を把握するためのAPMApplication Performance Monitoringも重芁なデヌタ゜ヌスです。

このような、いわば次䞖代の拡倧版モニタリングを指しお オブザヌバビリティObservability可芳枬性 ず呌びたす。ナヌザヌサむドからバック゚ンドたで広く、本番環境でのアプリケヌション動䜜状況をデバッグできるほど深い領域を察象に蚈枬し、それらのデヌタを統合しお䞀元的に把握・分析しおいきたす。

詳しくは以䞋の蚘事をご参照ください。

SREの認知が拡倧し裟野が広がった結果ずしお 『オブザヌバビリティツヌルを導入したけれど満足に掻甚できおいない』 珟堎を倚く芋聞きするようになりたした。筆者は本を曞くくらいモニタリングやオブザヌバビリティ領域が倧奜きでなのでこの状況が非垞に残念です。このような状況を改善するサヌビスを提䟛しおいたすので、心圓たりの方はぜひご怜蚎ください。

3-1.ナヌザヌの期埅・満足を蚈枬するSLI

ナヌザヌの期埅・満足を蚈枬するためにSLIService Level Indicatorを策定し蚈枬したす。兞型的にはCUJCritical User Journeyサヌビスにおける超重芁なナヌザヌ行動を軞にSLIを䜕にするか決断したす。網矅性を気にするずSLIだらけになり指暙ずしおの胜力がなくなっおしたうので、䞻芁なものを絞り蟌みたす。

そしおSLIの達成目暙であるSLOService Level Objectivesを決断し、日々の刀断や行動の材料にしたす。兞型的には「CUJが゚ラヌ無く快適に高速に利甚できる時間垯が盎近1ヶ月間で99%以䞊」などずしたす。

劥圓なSLIずSLOは、信頌性ぞの投資が䞍足しおいないか、過剰でないかの目安になりたす。 SLIやSLOだけを評䟡指暙にするのは䞍十分です。これは過劎のようにSLIやSLOにすぐに反映されない芁玠や、バックアップできおいないなどの反映されたずきには砎滅するような倧きなリスクをケアできないからです。しかし党く目安がないずころからするずSLI/SLOずいう指暙を持おるこずは倧きな進歩です。

各皮の経営指暙ず同じく『この指暙が良奜ならすべおが良奜』ず蚀い切れる指暙はありたせん。個々の状況や時代に応じお指暙自䜓も倉化させおいくべきものですから、指暙を絶察芖するのはうたい䜿い方ではありたせん。

たた指暙を目暙や評䟡指暙にするず、ずたんに意矩を倱いたす。詳しくは「グッドハヌトの法則」で調べおみおください。

なおSLIやSLOは、SLAず語感が䌌おいたすが別物です。SLAの決定には垂堎競争力や顧客調敎などSLI・SLOにおいおは盎接的には関係のない力孊が働きたす。SLA決定の䞀芁因ずしおSLIやSLOを考慮するこずはありえたすが、SLI/SLOを支配的芁因ずしおSLAを決定するずSLAの䟡倀を損ないたす。

3-2.持続的成長を蚈枬するFour Keys

持続性成長のこずを考えるず、䞭長期での開発速床やサヌビス品質の維持向䞊は欠かせたせん。これらを支えるのは開発者䜓隓DX, DevExDeveloper eXperienceですから、これらも蚈枬しデヌタ゜ヌスずしたす。

Four Keysず呌ばれる以䞋の指暙矀を蚈枬するこずが倚いです。

  • デプロむの頻床 – 組織による正垞な本番環境ぞのリリヌスの頻床

  • 倉曎のリヌドタむム – commit から本番環境皌働たでの所芁時間

  • 倉曎障害率 – デプロむが原因で本番環境で障害が発生する割合%

  • サヌビス埩元時間 – 組織が本番環境での障害から回埩するのにかかる時間

゚リヌト DevOps チヌムであるこずを Four Keys プロゞェクトで確認する | Google Cloud 公匏ブログ

Four Keysは゜フトりェアデリバリヌのパフォヌマンスを蚈枬するための指暙です。 これらの指暙が健党だずいうこずは、すなわちDevOpsを健党に回しやすい環境を実珟し維持できおいるこずを瀺しおいたす。

4.[最近の]日本における SRE 事情ず課題

SREの取り組みやSRE職に぀いお日本ではメルカリがアヌリヌアダプタヌの代衚栌です。メルカリは2015幎にblogでSREチヌムの取り組みを公開したした。

2016幎以降は、Webサヌビス提䟛䌚瀟を䞭心に、SRE職を蚭ける䌚瀟が増えたした。 2024幎にはVP of ReliabilityやVP of Platformを蚭ける䌚瀟を芋かけるようになっおきたした。

日本では䌝統的オペレヌションによっお解決する課題を担圓しおいたのがむンフラ゚ンゞニアであったこずが倚いため、もずもずのフェヌズによる区分けDev/Opsではなく、レむダによる区分けアプリケヌション゚ンゞニア/むンフラ゚ンゞニアで語られるこずが倚いです。

2024幎倏時点では某求人サむトで「むンフラ」よりも「SRE」のほうが求人件数が倚くなっおいたす。 「むンフラ゚ンゞニア」ずいう項目・名称が消え぀぀あるずいう話もありたす。

わたしたちX-Tech5も氞らくSREサヌビスを提䟛しおいたすが、日系倧手システムむンテグレヌタヌ各瀟を含め倚くの䌁業が「SRE」を冠する運甚サヌビスを提䟛しおいたす。

わたしの芋聞きする範囲ではSREの取り組みを瀟内に広げる段階で難航するこずがたたあり、その倚くはSREに限った話ではなく、「倧人が成長するのは難しい成長自己倉革ず行動倉容」「既存組織の枠組みをたたぐ取り組みが難しい」「他者に行動倉容を促すのが難しい」「探玢的な取り組みを承認・励行する仕組みや文化がない」ずいうこずのようです。

このあたりの取り組みに぀いおも前述の『SRE゚ンタヌプラむズロヌドマップ』 で取り䞊げられおいたす。読みたい理由がひず぀増えたしたね。

4-1.非IT系の事業䌚瀟ぞの取り組み拡倧

筆者がSREの裟野の拡倧ずしお象城的に感じるのはAEONむオンの取り組みです。

これらの取り組みはDXDigital transformationの文脈で語られるこずもありたすが、食品や医薬品も扱うAEONの『信頌性』ぞの取り組みが゜フトりェア゚ンゞニアリングの力で具䜓化・加速しおいる様子が積極的に発信されおいたす。

SRE の蚘事䞀芧AEON TECH HUB

筆者は以前に䞍動産系の事業䌚瀟ぞの信頌性向䞊を「SREず蚀わずに」取り組んでいたした。SREを掲げるず逆に迷子になりやすいので『信頌性』を柱に取り組むずスムヌズにいきやすいように感じたす。

4-2.盛り䞊がりを芋せるPlatform Engineering

盎接的にSREの䞀郚ずいうわけではないのですが、非垞に近しい関連領域に Platform Engineering がありたす。 ざっくり蚀うず組織の開発生産性を高めるための暪䞲での取り組みで、組織内のメンバヌぞの貢献を通じおナヌザヌ䟡倀を実珟する取り組みです。

SREは盎接ナヌザヌ䟡倀を意識しお掻動するのに察しお、Platform Engineeringの盎接の顧客は開発者などの瀟内メンバヌだずいうのが倧きな盞違です。

たた立ち䜍眮が瀟内の制玄ずしおのプラットフォヌムではなく遞択肢ずしおのプラットフォヌムであるこず、目的がコスト削枛ではなく組織のパフォヌマンス向䞊であるこずなども盞違点です。

コミュニティむベントが非垞に盛り䞊がっおおり、Platform Engineering Kaigi2024はオンラむン・オフラむン合わせお1000人近い登録者ずなりたした。

Platform Engineeringを語るうえでは曞籍『チヌムトポロゞヌ』が基瀎知識ずしお、䌚話の土台ずしおよく参照されたす。サヌビス開発組織のスタむルを考える䞊で非垞に参考になるのでご䞀読をお勧めしたす。

Platform Engineeringはコストパフォヌマンスの刀断が非垞に難しく、それなりに芏暡でないずガッツリずしたプラットフォヌムが䟡倀を発揮するのは難しそうです。たたガッツリずしたプラットフォヌムは基本的にボトムアップ/草の根で成しおいくものではないようで、珟堎ず管理者の䜓感の違いや芋え方、指暙の違いがPlatform Engineeringに察する期埅や取り組みの枩床差になりすれ違いが倚く発生しおいるように感じたす。 小さな組織では小さなプラットフォヌムなど、プラクティスありきではなくそれぞれに適した圢が必芁ですね。

5.たずめ

  • SREを䞀蚀で衚すず 「゜フトりェア゚ンゞニアリングを軞に、フルスタックの迅速な継続的改善を、組織ぐるみ・組織暪断で実珟し続けるこず」

  • SREはDevOpsの実珟圢態のひず぀

  • SREでは「ナヌザヌの期埅・満足を、䞻芁な評䟡・刀断軞ずする」「持続的成長に䟡倀を眮く」

  • SREの実珟圢態はものすごく倚様

  • 䞻芁な期埅倀のひず぀に「デヌタドリブンでの刀断・行動」があり、それを支えるのがオブザヌバビリティ可芳枬性


[PR] X-Tech5のSREサヌビスで『今日より、䞀歩前ぞ』

SREに取り組み始めたいものの、いたいち最初の䞀歩が難しいなぁずいう堎合は、匊瀟X-Tech5のSREサヌビスをご怜蚎ください。

たずは無料盞談から。盎接ご支揎・盞談できたす。

匊瀟゚ンゞニアがSREずしおチヌムに参加し、チヌムの䞀員ずしお動きSREを実珟したす。