Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
CircleCI 2.0を支えるインフラとSREの役割
Search
Kim, Hirokuni
March 26, 2019
Technology
2.5k
5
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CircleCI 2.0を支えるインフラとSREの役割
NoOps Meetup Tokyo #5
https://noops.connpass.com/event/123494/
での登壇資料
Kim, Hirokuni
March 26, 2019
More Decks by Kim, Hirokuni
See All by Kim, Hirokuni
How We Migrated K8S Without Downtime
kimh
0
260
エンジニアが起業する意味: 起業経験ゼロから電動キックボード 事業を創る話
kimh
0
1.6k
K8sとTraefikでつくるマイクロフロントエンド
kimh
14
3.1k
CI/CDを使い倒して数段上のソフトウェア開発をしよう (デブサミ関西)
kimh
2
1.2k
デブサミ福岡: CI/CDを使い倒して数段上のソフトウェア開発をしよう
kimh
0
770
CircleCI 2.0を支える2つの コンテナクラスターとSRE
kimh
6
6.5k
なぜ今CI/CDがアジャイル組織に必要とされるのか?
kimh
0
390
CircleCI 2.0を支える2つのコンテナクラスター
kimh
2
4.9k
Orbsを使ってAWSへ簡単デプロイ
kimh
1
1.8k
Other Decks in Technology
See All in Technology
From Vanilla Kubernetes to a Batteries-Included Platform: Developer Experience at 1,300+ Clusters
yosshi_
0
660
アリアドネの糸と、20年ごとの建て替え ── 長尾真『電子図書館』を、伊勢で読み直す / Rereading Makoto Nagao’s "Electronic Library" in Ise
ykiyota
0
120
synctest時代のhttptest Go 1.27で変わるHTTPサーバテストの裏側 / go conference2026 synctest and httptest
budougumi0617
1
650
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
3
420
プロダクト思考 × 基盤思考を AIで実現する Compound Engineering
tkc66buzz
1
310
PfEingのアプローチで働こう
rindrics
0
200
Claude Code本って、 読む必要あるの?
oikon48
1
330
2026-09-04 SRE Tech Talk #15 怠惰なTerraform / Lazy Terraform
masasuzu
0
230
DEFCON34-Write-up_HYCu-MYCu
daikiokazaki
0
120
Tab5をRubyで動くパソコンにする
kishima
2
280
AIに丸投げしないトイル削減 / Eliminating Toil Without Leaving It All to AI
kohbis
4
1k
AI時代に顧客へ最速で価値を 届けるための試行錯誤 〜「AI × マネジメント」領域におけるmentoのケース〜
posterkeisuke
0
110
Featured
See All Featured
Become a Pro
speakerdeck
PRO
31
6.2k
Facilitating Awesome Meetings
lara
57
7.1k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
490
30 Presentation Tips
portentint
PRO
1
390
Building Flexible Design Systems
yeseniaperezcruz
330
41k
GraphQLとの向き合い方2022年版
quramy
50
15k
The Pragmatic Product Professional
lauravandoore
37
7.4k
Making Projects Easy
brettharned
120
6.7k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2.8k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.6k
Music & Morning Musume
bryan
47
7.4k
エンジニアに許された特別な時間の終わり
watany
108
250k
Transcript
1 CircleCI 2.0を支えるインフラとSREの 役割 #kimhirokuni #circlecijp
2 1.0からの移行ありがとうございました!! • LXCベースのCI/CD • コンテナを使ったCI/CDのパイオニア • 先日RIPされた
3 CircleCI 2.0について 1日120万ビルドのCI/CDプラットフォーム
4 技術編: 2つのクラスター 組織編: SREチームの紹介
5 自己紹介 Kim, Hirokuni (金 洋国) • CircleCI Japan Tech
Lead • 日本支社の立ち上げ • カンファレンス登壇 • 採用活動 • 記事執筆 • コミュニティー運営 ”この発言は個人の見解ではなく所属する組 織を代表しています” Twitter: https://twitter.com/kimhirokuni
6 おまえSREのこと話せんの?
7 自己紹介 ”この発言は個人の見解ではなく所属する組 織を代表しています” Kim, Hirokuni (金 洋国) • CircleCI
Japan Tech Lead • 日本支社の立ち上げ • カンファレンス登壇 • 採用活動 • 記事執筆 • コミュニティー運営 • 元プロダクトチーム • 現SREチーム Twitter: https://twitter.com/kimhirokuni
8 宣伝 (会社) • 日本語サポート • ドキュメントの日本語化 • ユーザーコミュニティー CircleCI初の海外支社
@CircleCIJapan FB Community Group
9 宣伝 (個人) 海外で大流行の電動キックボードを体験できるサービス Hop-on! を運営 • 日本で唯一のサービス(のはず) • みなとみらいで体験できます
• 続きはhttps://hop-on.jpで!
10 技術編: 2つのクラスター 組織編: SREチームの紹介
11 CircleCI 2.0のアーキテクチャ概要 • マイクロサービス • AWS • Clojure, Go,
TypeScript • コンテナベース • Kubernetes/Nomad ← 今日はココの話
12 2つのクラスター • Kubernetes ◦ マイクロサービスが動いている • Nomad ◦ ビルド実行のマシン
二つを分けることでセキュリティーを担保している
13 クラスター間通信
14 Kubernetes • 全てのマイクロサービスが動いている • CoreOS • EC2 • Terraformで管理
15 Nomad 概要 • Servers -> k8s master nodes •
Clients -> k8s worker nodes • バッチジョブ • ここでビルドが実行される • 1 コンテナ = 1 Nomad Job
16 コンテナ == Nomad Job
17 Nomad ズームイン
18 ビルドが実行されるまで • ビルドリクエスト • Nomad Jobが作られる • Dockerコンテナの起動 •
Goで書かれたAgent起動 • ビルドのコマンドを逐次実行 • ビルドのログをK8sのサービスへ送信
19 なぜNomadか? • Nomadはバッチ処理がk8sより得意だった (2016年の時点) • 現時点ではk8sもよくなっている (らしい) • シンプルなアーキテクチャー
(単一Goバイナリ) • Hashicorp Toolとの親和性 (ConsulやTerraformなど) 詳しくは https://speakerdeck.com/kimh/cdpuratutohuomu
20 技術編: 2つのクラスター 組織編: SREチームの紹介
21 SREチーム構成 • 現在9人のチーム • 4カ国にまたがる • 時差きつい
22 ボーイング方式 • 時差の有効活用 • 継続的なペアリング • 障害時対応
23 コミュニケーション • 基本はSlackを使っている • 情報量が多い話はZoom • 100ワードのSlackより10秒のZoom • 1年に一回のAll
Hands • 半年に一回のチームごとのSmall Hands
24 SREの役割 • 安定したインフラの運用 • プロダクトの開発に集中できるようにサポート • プロダクトエンジニアとのペアリング・コードレビュー • 障害対応
(日本時間は障害少ない)
25 障害対応フロー #investigation 障害の可能性あり
26 障害対応フロー #investigation #incident 故障かな?と思ったら - ユーザー影響あり - 障害用のZoom開始 -
@メンションされる
27 障害対応フロー #investigation #incident https://status.circleci.com 故障かな?と思ったら - ユーザー影響あり - 障害用のZoom開始
- @メンションされる
28 障害対応フロー #investigation #incident https://status.circleci.com Incident Commander Note Taker 任命
故障かな?と思ったら - ユーザー影響あり - 障害用のZoom開始 - @メンションされる 役割分担 (後述)
29 障害対応フロー #investigation #incident https://status.circleci.com Incident Commander Note Taker 任命
20分ごとにアップデート 故障かな?と思ったら - ユーザー影響あり - 障害用のZoom開始 - @メンションされる 役割分担 (後述) - できるだけリアルタイム情報 - バナーに表示される
30 障害対応フロー #investigation #incident https://status.circleci.com Incident Commander Note Taker 任命
20分ごとにアップデート 故障かな?と思ったら - ユーザー影響あり - 障害用のZoom開始 - @メンションされる 役割分担 (後述) - できるだけリアルタイム情報 - バナーに表示される - 30分様子見 - 問題なければクローズ
31 Incident Commander と Note Taker Incident Commander (現場指揮官) •
障害復旧のために必要なチームを動かす • SREがなることが多いけど、SREとは限らない Note Taker (記録係) • 20分ごとにアップデートを届ける • 時系列をまとめる • zoomのレコーディング
32 Postmortem == 検死解剖 == 反省会 Postmortem準備 • 障害報告書のPRを作成 •
関係者のミーティングセットアップ Postmortem中 • PRをレビュー • Note Takerの事実ベースの分析 • 障害宣言は適切なタイミングだったか? • どうやれば障害を防げたか? • PRをマージ
33 おわりに
34 今後の課題: ホスティング型k8sサービスへの移行 メリット • GKEの機能が豊富 • GCP安い デメリット •
AWSからの移行 メリット • 移行なし • 学習コスト低い デメリット • 機能面でGKEに劣る
35 今後の課題: チームの拡大 • Platform Engineeringの設立 • SREチームの拡大 • プロアクティブなSRE業
36 WE ARE HIRING!
37 SRE Team in Japan こんな人募集 • CircleCIに興味がある • 大規模インフラを面倒みたい
• コンテナをガチでやりたい • 海外のチームと働きたい
Thank you. 38 Optional Name