こんにちは、yassanです。
今回は「SREって何?【サイトリライアビリティエンジニアリング・エンジニア】」を紹介します。
トレンド?というほど流行しているかは微妙ですが、じわじわと認知度を高めているSREという考え方について、調べたことをまとめてみました。
「SREが何か分からないから知りたい」「SREエンジニアの仕事が知りたい」と言った疑問を解消できる記事になると思います。
※本記事では、“SRE”は概念・役割のことを指し、“SREエンジニア”はSREを担当するエンジニアのことを指すこととします。
※まだ勉強中ですので、またわかったことが増えたら更新します
SREって何?
SRE(Site Reliability Engineering)は、一言で言うと「Webサイトの信頼性を向上をするための方法論」です。
具体的には、システム管理やサービス運用の取り組みや方法論です。
ちなみに、信頼性(Reliability)とは、故障や障害の発生しにくさのことです。
MTBF(Mean Time Between Failure 平均故障間隔)が長いシステムが、信頼性の高いシステムと言えます。
SREはこの信頼性を向上させるためにある、というわけですね。
SREと似たような概念?にDevOpsがあります。
DevOpsはソフトウェア開発手法の一つです。
DevelopmentとOperationのそれぞれの担当者が連携して行う開発手法のことを指します。
Google先生曰く、“class SRE implements DevOps”とおっしゃっています。
その名の通りオブジェクト指向的に解釈をすると、SREはDevOpsを実装したクラスオブジェクトという感じになります。
では、SREエンジニアは何でしょうか。
SREエンジニアは、ITインフラエンジニアとは異なり、ソフトウェアエンジニアに該当します。
信頼性を向上させるのに、なぜソフトウェアエンジニアなのでしょうか。
というのも、SREエンジニアの主たる業務はソフトウェア開発であり、運用の工数は全体の半分以下だからです。
SREエンジニアの仕事は、実際にシステムを運用するというよりも、運用のソフトウェア代替化・自動化やインフラ整備ということになります。
SREエンジニアの需要
最近、AWSなどのパブリッククラウドの登場によってなのか、アジャイル開発やDevOpsが流行しています。
それに伴い、SREエンジニアの需要も高まっている様子です。
しかしながら、SREエンジニアは大人数必要というわけではないみたいです。
SREエンジニアというポジションは、組織内で重要とされていますが、人数は最小限に抑えたいといことですね
また、SREエンジニアは、インフラエンジニアからのスペシャリスト系統のキャリアパスの一つになると思います。
参考に文献
ご存知の方も多いと思いますが、参考になる書籍は「SRE サイトリライアビリティエンジニアリング ―Googleの信頼性を支えるエンジニアリングチーム」です。
元々、SREという単語自体Googleが作り出した言葉ですからね。
ちなみに、もう少し実戦よりの「サイトリライアビリティワークブック ―SREの実践方法」が今度発売するみたいです。
楽しみですね。
僕はお金がないので中古が出回ったら買います。すいません
まとめ
いかがでしたでしょうか。
SREやSREエンジニアについて、少しでも理解ができたなら幸いです。
ここまで読んでいただき、ありがとうございました。