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

クラウド移行を通じた SRE/DevOps の実践 / SRE and DevOps Pra...

mom0tomo
August 28, 2023

クラウド移行を通じた SRE/DevOps の実践 / SRE and DevOps Practice in Cloud Migration

ゆるSRE勉強会第一回発表資料です。マッハバイトのクラウド移行を通じた、SRE/DevOpsを実践する取り組みについて具体的に話します。

mom0tomo

August 28, 2023
Tweet

More Decks by mom0tomo

Other Decks in Programming

Transcript

  1. Copyright © Livesense Inc. • 社員数 ◦ 正社員 214名(2023年6月30日現在) •

    エンジニア社員数 ◦ 全体 63名 正社員 40名 ◦ 正社員だけで見るとエンジニア職が1/5を 占める 社員数・組織規模
  2. インフラグループ Copyright © Livesense Inc. • 事業部に属さない全社横断組織 • 6人+兼務2人 •

    各事業部に対し、1-2人が窓口担当になる (DevOps/SRE的な動きもする) • リブセンス全体で利用する基盤・プラット フォームも管轄する
  3. クラウド移行の背景 フルリモートワーク化からのオフィス移転 • 創業期から契約しているデータセンターがある ◦ 創業当時からのサービスであるマッハバイト(旧ジョブセンス)では、ほとんどのシステムがオンプ レで運用されてきた • 新しい事業はクラウドで運用されているものも多い ◦

    knew(マッチングサービス)、 batonn(面接最適化サービス)、 IESHIL(不動産事業)などは最初か らクラウド上で運用されている ◦ 転職会議・転職ドラフトもほぼオンプレから AWSに移行済み • コロナ禍で全社フルリモートワーク化し、オフィスを WeWorkに移転した ◦ オフィス内のサーバールームで運用してきた開発環境を急遽クラウドに移行した ◦ これを契機にクラウド移行の機運が加速した • 2023年末をもってクラウド移行が完了する予定 Copyright © Livesense Inc.
  4. • 開発(アプリケーションエンジニア)と運用(インフラエンジニア)の間に壁があった • 権限の壁 ◦ オンプレミスのサーバーの設定変更はインフラチームに作業依頼が必要 ▪ sudo権限がないとインフラの設定変更ができない ▪ VM構築(サーバー準備)はインフラの担当

    etc.. ◦ アプリケーション側の変更はアプリケーション開発チームに作業依頼が必要 ▪ リポジトリがたくさんあってデプロイ方法も統一されておらず複雑 ▪ 一部システムは監査対応のための特別な承認フローがある etc… • コミュニケーションの壁 ◦ プロジェクト・チームごとに Slackチャンネルが分かれていて気軽に声をかけづらい ◦ 隔週の定例が正式なコミュニケーションの場だが、シャンシャンと終わりがち 移行前の課題 「開発」と「運用」の分断 Copyright © Livesense Inc.
  5. • サービスの信頼性への責任が曖昧になる ◦ 共用インフラ基盤の調査はインフラエンジニアが担当する ▪ 開発エンジニアが直接 L7LBのログを見られない etc. ◦ 監視・モニタリングサービスの導入はインフラチームが担当する

    ▪ 何かアラートがなったとき、設定した人(インフラチーム)が対応しがち • 作業待ちが発生してデリバリーに時間がかかる ◦ 「インフラチームがVM構築終わったらデプロイができる」(開発エンジニアは自分でサーバー構築 できない)etc. • アプリケーションの本質的な改善が進まない ◦ アプリケーションのコードを直せば解決する問題でも、リソースを増やすなどインフラ側でなんとか してしまい、保守性が下がる 移行前の課題 分断による悪影響 Copyright © Livesense Inc.
  6. • 権限を見直す ◦ インフラエンジニアしかサーバの rootを取れない→AWSのIAMグループを利用して適切な権限を 付与する • コミュニケーションチャネルを見直す ◦ Slackチャンネルを整理、統合してコミュニケーションの活性化を図る

    ◦ Work Out Loudの文化を伝える ▪ インフラチームEMの方がマッハバイトの EMを兼務してくれたことでスムーズに導入された • 信頼性向上に取り組むための土台を作る ◦ 共同で勉強会を開催してインフラ・モニタリングに関する知識を伝達する ▪ AWS勉強会、Datadog勉強会 移行で改善できたこと SRE/DevOpsの実践 Copyright © Livesense Inc.
  7. • 複雑なリリースフローを改善する ◦ GitHub Actionsを利用してPRベースのデプロイワークフローを組む ◦ GitHubのリリース機能を利用し、リリースフローを省略する • IaCを徹底する ◦

    インフラ構成のコードをリポジトリにまとめ、開発エンジニアも contributeできるようにする ▪ 開発エンジニアもレビューを受けて自由にインフラの構成変更ができる • モブプロでクラウド移行を加速する ◦ 協働してCI/CDワークフローを整備する ◦ 移行で邪魔になるデッドコードの削除、アーキテクチャの変更などその場で話し合って素早い意思 決定を行う 移行で改善できたこと SRE/DevOpsの実践 Copyright © Livesense Inc.
  8. 今後の課題 これからやりたいこと • サービスレベル(SLI/SLO)の策定と実践 ◦ 足元の整備中 ▪ Datadogを活用する ▪ エラーバジェットを定義する

    • 誰でも障害対応できる体制づくり ◦ メトリクス・モニター・ダッシュボードのノウハウを共有する ◦ 障害対応を振り返り、ベテランの動きを学ぶ ◦ 詳しくないシステムで障害が起こったときに「シャドー」になる Copyright © Livesense Inc.
  9. Copyright © Livesense Inc. • エンジニアブログ ◦ https://made.livesense.co.jp/ • Livesense

    Engineering Handbook ◦ https://livesense-inc.gitbook.io/livesense-e ngineering-handbook/ エンジニアによる発信の ご紹介