Upgrade to Pro — share decks privately, control downloads, hide ads and more …

第34回 中国地方DB勉強会 in 広島_Why DBRE?

tomo
May 25, 2024

第34回 中国地方DB勉強会 in 広島_Why DBRE?

第34回 中国地方DB勉強会 in 広島にてお話させていただきました「Why DBRE?」の資料です。
イベントURL:https://dbstudychugoku.connpass.com/event/316403/

tomo

May 25, 2024
Tweet

More Decks by tomo

Other Decks in Technology

Transcript

  1. 名前:tomo(@tomomo1015) 職歴 • 新卒でSIerに1X年、PM&DBAに従事 • 事業会社にてSRE&DBREを3年 • 2024年2月から別事業会社でPdM見習い DB •

    まいえすきゅーえりたい • ぽすぐれしはじめた • おらくるってる すき • 家族とおでかけ、特に娘とデート • ポケモンのミミッキュ この資料を書いた人
  2. SREとは • SREが生まれた背景は? ◦ SRE本には「運用チームと開発チームの対立」があった ▪ 好きなものを好きなタイミングでローンチしたい →わかる ▪ 一旦動いたシステムは変更したくない →わかる •

    チーム目標が対立しがち • SREとは? ◦ 「ソフトウェアエンジニアに運用チームの設計を依頼したときにあがる もの」という記述 ▪ これが正解ではなく、あくまで「GoogleのSRE」でのお話
  3. 事業目標 実施施策 データの 密結合 マイクロ サービス サイト 不安定 SRE コストを

    減らす クラウド移 行 考え方のステップ(例) 課題 手段
  4. 事業目標 どうすれば 達成できる? データの 密結合 マイクロ サービス サイト 不安定 SRE

    コストを 減らす クラウド移 行 考え方のステップ(例) 課題 手段 課題に対し 実施手段は様々 サイトが不安定な状態に対し 実施する施策は 設備増強かもしれない コスト削減は ソフトウェアの棚卸が 最善案かもしれない
  5. 事業目標 実施施策 データの 密結合 マイクロ サービス サイト 不安定 SRE コストを

    減らす クラウド移 行 考え方のステップ(例) 課題 手段 課題や手段は 事業目標と実施施策 に大きく依存する
  6. あなたの考えるSREとは? • SREという職位、部署がすること ◦ SREの技術を実施する組織にたいし、企業が実現したことは様々 ▪ だからSRE憲章を作るということが大事 • SRE本に書いてあることが100点できなくていい •

    今の事業目標、実施施策に対し、SREという方法の中で 最も 実施すべき手段を定めて実施すればいい 他社と比較する必要は全くない ツールもモダンじゃなくていい 課題に対しSREの手法で何を成し得たかが 一番大事!!
  7. データ 死守 周囲を 巻き込む Toil撲滅 脱ペット 分業廃止 DBREの指針 全てではないですが 多くの場合ここが

    DBAとDBREの違いに なるかなと思っています 全てではないですが 多くの場合ここが DBAとDBREの違いに なるかなと思っています 全てではないですが 多くの場合ここが DBAとDBREの違いに なるかなと思っています
  8. DBAとDBREの違い • 具体的な例 ◦ ペットになっている原因を探して解消 する ▪ 例えばメモリ逼迫が頻繁に発生するので あれば、その問題を解決する、予兆検知 できるようにする

    ◦ YugabyteDB等の技術的に可能に する ▪ ただし運用負荷など別課題が発生する可 能性もあるので、慎重な判断が必要 脱ペット
  9. DBAとDBREの違い • 「分業廃止」とは? ◦ DB以外の業務、技術分野も実施すること ▪ 実際DBREをやって一番大事だと   思ったことでありDBAとの違い ▪ DBREはSREが実施するソフトウェアエ

    ンジニアリング、リリースエンジニアリング も当然含まれる • DBだけやっているとどうしても視野や考え が狭くなる、対立してしまうので、他技術にも 触れることで苦労を理解し、同じ土俵に立っ て会話することが大事 分業廃止 同様にSREも DBREにDBを任せっぱなしは ダメ
  10. DBREとSRE • DBREとSREの責任分界点を明確にすること ◦ SRE/DBREが両方存在する会社が最初に定めること ◦ DBREはあくまでSREの中でDBに少し偏った業務をするエンジニアリン グであって、基本はSREと同等 ◦ DBのSREは全てDBREに任せていい訳ではなく、同様にDBREがSRE

    の業務をやらなくていい訳ではない ▪ 例として、RDSのTerraformは誰が作ってもいいが、DBREのレビュー無しで はmaster marge&apply はNG、逆も同様等 ▪ DBばっかりやってると、視野も狭くなるし技術力つかないよ
  11. DBREとDev • DBREの特権は「SREよりDevに近い」こと ◦ DBはそもそも、インフラと開発の中間に存在することが多く、両技術をあ る程度把握しないと業務が出来ないという点がある ▪ ソフトウェアインストールする際はOS/インフラ知識が必要 ▪ SQLやテーブル設計等は開発知識が必要

    ◦ DBREはSREとDevの間に立って両サイドの間を取りつもつということが できる ▪ DBのスロークエリログからアプリケーションの課題を見つけ、SREにWEB サーバのメモリ拡張を提案する、等
  12. その時点の私のスキル 要件定義 基本詳細 設計 構築 導入 移行 運用 Ops 自分で出来る

    ここの経験がなかったのと 対応できるDBエンジン数が 少なかった
  13. 事業目標 実施施策 データの 密結合 マイクロ サービス サイト 不安定 SRE コストを

    減らす クラウド移 行 管理職としてやったこと 課題 手段
  14. SRE/DBREにおける管理職 • 事業目標に対し具体的な対応策/実施施策を策定し明文化する ◦ 実施施策の取捨選択をする ▪ 緊急度や重要度と要員数に応じて、年度単位で実施する施策を決める ◦ 完了条件やマイルストン、期限も明確化する ◦

    各メンバーと1on1を経てスキルや成長に合わせた施策にアサインす る ▪ Primary/Secondary制にするなど工夫する ◦ 各施策(プロジェクト)の進捗の確認や課題の吸い上げをし、必要に応 じて対処する
  15. SRE/DBREにおけるPM • 基本は通常のPMと同じこと ◦ 目的/GOALを必ず明文化し、メンバーに浸透させる ◦ ただしSRE/DBREが実施することはスピード優先であることが多いこ とから、WFであることは少ない ▪ 目的とスケジュールに合わせて柔軟にプロジェクトの進め方を変える必要

    はある ▪ アジャイル、半アジャイル等、手法をそれぞれを用いる ◦ フェーズによって重要ポイント、判断ポイントを変える ▪ 例えば性能改善プロジェクトの場合、原因調査をする場合は  「分析」に 重きを置き、施策実施は「スピード」に重きを置く