Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
SRE in UZABAS
Search
Hane
March 19, 2018
Technology
0
2.7k
SRE in UZABAS
Hane
March 19, 2018
Tweet
Share
More Decks by Hane
See All by Hane
ユーザベースのDockerへの取り組み
hane
1
150
Other Decks in Technology
See All in Technology
EncryptedSharedPreferences が deprecated になっちゃった!どうしよう! / Oh no! EncryptedSharedPreferences has been deprecated! What should I do?
yanzm
0
470
初めてAWSを使うときのセキュリティ覚書〜初心者支部編〜
cmusudakeisuke
1
270
DroidKaigi 2025 Androidエンジニアとしてのキャリア
mhidaka
2
370
Snowflake Intelligenceにはこうやって立ち向かう!クラシルが考えるAI Readyなデータ基盤と活用のためのDataOps
gappy50
0
270
Aurora DSQLはサーバーレスアーキテクチャの常識を変えるのか
iwatatomoya
1
1.1k
Unlocking the Power of AI Agents with LINE Bot MCP Server
linedevth
0
110
自作JSエンジンに推しプロポーザルを実装したい!
sajikix
1
190
250905 大吉祥寺.pm 2025 前夜祭 「プログラミングに出会って20年、『今』が1番楽しい」
msykd
PRO
1
980
Rustから学ぶ 非同期処理の仕組み
skanehira
1
150
会社紹介資料 / Sansan Company Profile
sansan33
PRO
6
380k
現場で効くClaude Code ─ 最新動向と企業導入
takaakikakei
1
260
Terraformで構築する セルフサービス型データプラットフォーム / terraform-self-service-data-platform
pei0804
1
190
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
330
21k
Music & Morning Musume
bryan
46
6.8k
Facilitating Awesome Meetings
lara
55
6.5k
Fireside Chat
paigeccino
39
3.6k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.9k
BBQ
matthewcrist
89
9.8k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.7k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
188
55k
Why Our Code Smells
bkeepers
PRO
339
57k
Speed Design
sergeychernyshev
32
1.1k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Transcript
hbstudy #82 SRE 大全 UZABASE SRE
自己紹介 羽山雄偉 株式会社ユーザベース SREチーム インフラエンジニア 前職も某ゲーム会社でソーシャルゲームのインフラエンジニア 4年前にユーザベースにジョイン 主にSPEEDAと社内インフラを担当 ・SPEEDAではネットワークやサーバ構築を実施 ・社内インフラでは引越時のインフラ構築や上場時のIT統制などを実施
• UZABASEについて • UZABASEのSREについて • SPEEDAにおけるSREについて • SPEEDAの環境 • 開発チームとの連携
• SREの取り組み事例 Table of Contents
UZABASEについて
Mission 経済情報で、世界をかえる Business Intelligence to Change Your World 私たちは、世界中で愛される経済情報インフラをつくります。 あらゆる経済情報を人とテクノロジーの力で整理・分析・創出し、
ビジネスパーソンの生産性を高め、創造性を解放します。 私たちは経済情報を通じて世界中の意思決定を支え、世界をかえます。
Our Services B2Bマーケティングエンジン ソーシャル経済ニュース 企業・業界情報プラットフォーム 日本最大級のベンチャーデータベース 2009年 2008年 創業 2014年
2016年 2017年
• 各サービスごとに1テックチーム ◦ SPEEDA/NewsPicks/entrepedia/FORCAS • Tech Culture ◦ 技術的にも挑戦する文化(k8s,micro services,
micro frontend) ◦ 社内ハッカソン (http://tech.uzabase.com/entry/2018/02/22/141810) ◦ 社内ISUCON Tech Team in UZABASE
UZABASEのSRE
SREについて • 昨年10月にSPEEDAテックチームにSREを設立 • 前身は開発チームの運用メンバーとインフラチーム • テックチームは全体で30名 ◦ 開発チーム20名 ◦
SREチーム10名 • ソフトウェアエンジニア5名、インフラエンジニア5名で構成
SREの活動 • 技術力向上の推進 ◦ チーム内でk8s合宿を実施 (http://tech.uzabase.com/entry/2018/02/01/1614 ) • 情報共有の推進 ◦
SRE Loungeで情報・取り組みを共有 (http://tech.uzabase.com/entry/2018/01/26/200021 ) ◦ Tech Blogを使った技術発信 (http://tech.uzabase.com )
• SPEEDA ◦ インフラ+ソフトウェアで新機能開発以外を担当 ▪ インフラの構築運用 ▪ サービス・ジョブの運用 ▪ プロダクト改善、本番バグ対応、社内ツール開発
• 社内 ◦ オフィスネットワーク構築運用 ◦ 社内システム・PC・各種アカウント管理 ◦ コーポレートサイト、各サービスのLPサイトの構築運用 SREの業務範囲
SPEEDAにおけるSREについて
• 安定稼働のために出来ることはすべてやる • ユーザが快適に利用できる状態にするために出来ることはすべてやる 基本的な方針
• オペレーション ◦ ジョブ・システム監視 ◦ 各チームからの問い合わせ対応 • インフラ基盤管理 ◦ リソース管理、負荷対策、CDN
◦ セキュリティ対策 • ソフトウェア開発業務 ◦ SPEEDAのバグ対応、高速化 ◦ 周辺ツール開発 SPEEDAにおけるSREの業務内容
SPEEDAにおけるSREの業務範囲 インフラ構築 バグ対応 サービス運用 新規開発 インフラ運用 社内ツール作成 問い合わせ対応 開発チーム SREチーム
サービス改善
SPEEDAの環境
• ビジネスパーソンの情報収集・分析における課 題を解決する最先端のプラットフォーム • 世界中の企業情報、業界レポート、市場デー タ、ニュース、統計、M&Aなどあらゆるビジネ ス情報をカバー https://www.ub-speeda.com SPEEDAとは?
• アプリケーションサーバ ◦ JVMメモリ60GB • ジョブ ◦ 総数4000件 ◦ 24x365での稼働
• 総データ量 ◦ データベース: 約3T ◦ 検索インデックス:約3T ◦ ファイルデータ:約3T システムの特徴
• オンプレミス環境 • ネットワークから仮想サーバまでを管理 • DBはioDriveを搭載した物理サーバ • 3つの仮想基盤から構成されている • ラック内で適切な電力使用量になるようなサーバ配置
• ハードウェアトラブルは自動検知 SPEEDAを支えるインフラ基盤
仮想基盤 v1 • 単体のアプリケーション • XenServer • ゴールデンテンプレートでの仮想 サーバ構築
仮想基盤 v2 • マイクロサービス化 • XenServerクラスタ • Ansibleでの仮想サーバ構成管 理
仮想基盤 v3 • マイクロサービス化 • Kubernetes on Rancher 基盤 •
cloud-initでの構成管理 • Dockerコンテナでのアプリケー ション管理
開発チームとの連携
• 開発速度を早くするために出来ることはすべてやる 基本的な方針
• Face to Faceでの会話が基本 • リモートのやりとりはSlackを利用 • テックミーティングで週1回情報共有 • ハッカソンなどで開発メンバーと共同開発
コミュニケーション
• 開発環境は開発チームが管理・運用している • 開発サーバの異常はSlackに発報される • 本番のデータが必要になるケースはジョブ化 開発環境
SREの取り組み事例
差し込み業務への取り組み
• 外部要因で差し込み業務が発生し、進めているプロジェクトに集中できないこと がよくある • 一方で、差し込み業務への対応も安定稼働を支えるSREの重要な業務である • 差し込み業務の種類 ◦ 障害 ▪
システム障害 ▪ バッチ障害 ◦ 問い合わせ ▪ データ異常 ▪ バグ 運用チームでありがちなこと
差し込み業務とプロジェクトを両立するためにやっていること • 業務のシフト化(負荷軽減・属人性の排除) • 問い合わせ対応時間の固定化(時間の二極化) ◦ 緊急度の高いもの以外はこの時間で対応する ◦ 緊急案件についてはCSの判断で直接連絡をもらう ▪
緊急度の認識をCSとすり合わせておくことが重要 • 差し込み業務の削減(根本対応) ◦ 差し込み頻度の高いもの、差し込み負荷の高いものは原因の解決と自動 化を行う 差し込み業務への取り組み
自動化への取り組み
• 定常業務の自動化 • リリースの自動化 ◦ Slackを使ったChatOps ◦ Jenkinsを使ったCI/CD • 状況はSlackに通知
自動化への取り組み
まとめ
• UZABASEにおけるSREは新機能開発以外を担当 • 安定稼働、ユーザ体験向上のために出来ることはすべてやる • 開発速度を早くするために出来ることはすべてやる • 開発環境は開発チームで運用し、SREはサービスを運用する • 差し込み業務を対応しつつ、プロジェクトを進めるため試行錯誤の日々
• 自動化、効率化を進め、必要に応じて社内ツールの開発も行う まとめ
ありがとうございました
Any questions? Thank you for listening!