Slide 1

Slide 1 text

マイクロサービスとSREの役割 @kenjiszk FiNC SRE Team

Slide 2

Slide 2 text

About me @kenjiszk SRE Team Manager Join Finc from Jun, 2015. Infrastructure (AWS, Azure) Development (Ruby on Rails) Info System Dept.

Slide 3

Slide 3 text

Agenda •  What is Microservices? •  What is SRE? •  Microservices x SRE •  SRE in FiNC

Slide 4

Slide 4 text

What is Microservices? http://dev.otto.de/2014/07/29/scaling-with-microservices-and-vertical-decomposition/

Slide 5

Slide 5 text

Conway’s Law システムを設計するあらゆる組織は、 必ずその組織のコミュニケーション構造に 倣った構造を持つ設計を⽣み出す from マイクロサービスアーキテクチャ

Slide 6

Slide 6 text

Microservices x Conway’s Law マイクロサービスの分け⽅と組織の分け⽅が⼀致する

Slide 7

Slide 7 text

What is SRE? Site Reliability Engineering サイト信頼性エンジニアリング? -  Infrastructure (as a Code) -  Application Performance -  CI -  Deploy -  Security -  Sandbox Environments -  Logging, Analyzing

Slide 8

Slide 8 text

SRE in Microservices こうなりがち?? SRE Team

Slide 9

Slide 9 text

Microservices x SRE SRE的に⾟くなってくる点 –  サーバーの種類が多い(数が多いよりも⼤変) –  開発陣がアグレッシプ(microservicesの利点) –  Microserviceは増える –  SREリソースネックな未来が⾒える

Slide 10

Slide 10 text

Microserviceは増える 0 2 4 6 8 10 12 14 16 18 20

Slide 11

Slide 11 text

SREリソースネックな未来

Slide 12

Slide 12 text

理想型?

Slide 13

Slide 13 text

問題点 ⼈的リソース - そもそも全チームにはれるほどSREいない 知識・技術の共有 - 共通の財産とした⽅が都合良いものは多い - サーバーリソース - CI, Deploy, Auto Scale

Slide 14

Slide 14 text

対策案 ⼈的リソース -  SRE業務が出来る⼈材を育ててみることに -  開発チームに任せてみる 知識・技術の共有 -  サービスとして切り出せるものはコード化して 切り出す -  インフラコンポーネントもMicroserviceに

Slide 15

Slide 15 text

SRE in Microservices SRE Team

Slide 16

Slide 16 text

インターンCの場合 Railsを始めて1年くらい Railsもうつまらないとかいって調⼦乗っ ているところを⾒つける 興味を惹きそうな⾔葉をささやく ansibleってしってる? spot instanceとか今のシステムで使える と良いんだけどな〜

Slide 17

Slide 17 text

インターンCの結果 こんな仕事をしてくれるようになった

Slide 18

Slide 18 text

新卒Sの場合 プロジェクトを⼀つまかされて調⼦ 乗っている 障害が起きた時に颯爽と現れて解決し てあげる あー、これはAWSの仕様とか分かって ないとちょっと切り分け難しいわ

Slide 19

Slide 19 text

新卒Sの結果 Terraformで全台管理出来る基盤を 作ってくれた

Slide 20

Slide 20 text

Summary SRE in FiNC 開発/SREの壁をどんどん取り払っていく –  教育コストはかかる –  いい感じに興味を持たせるのが⼤事 SREはもちろんコードも書く –  パフォーマンス改善のpull req –  認証基盤AppはSRE持ちで開発している –  開発側の気持ちも分かる

Slide 21

Slide 21 text

Problems SREが責任を持って守るラインは当然ある -  セキュリティ -  DBのpassword -  各種access token -  本番login権限管理 -  コスト管理 -  スケール -  新技術の取り⼊れなど 本質的にReliabilityの部分