$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
有志で組織横串に挑む - GitLab CI Runnerカイゼン -
Search
bbrfkr
October 10, 2021
Technology
0
260
有志で組織横串に挑む - GitLab CI Runnerカイゼン -
bbrfkr
October 10, 2021
Tweet
Share
More Decks by bbrfkr
See All by bbrfkr
アプリエンジニアを救え! AWS CDKで実現するインフラCI・CD
bbrfkr
2
1.3k
[July Tech Festa 2019] Kubernetes on OpenStack におけるハマりどころ
bbrfkr
5
1.4k
OpenShiftでKubeVirtを試してみた
bbrfkr
1
1.1k
Kubernetes x スマートスピーカ ~ Kubernetesで実現するFaaS ~
bbrfkr
1
260
Virtual Kubelet + Fargate + EKSでノードレス Kubernetes を夢見た話
bbrfkr
5
2.3k
怖くない!コンテナ初心者に送るやさしいKubernetes入門
bbrfkr
20
6k
Other Decks in Technology
See All in Technology
.NET 10の概要
tomokusaba
0
130
会社紹介資料 / Sansan Company Profile
sansan33
PRO
11
390k
たまに起きる外部サービスの障害に備えたり備えなかったりする話
egmc
0
350
子育てで想像してなかった「見えないダメージ」 / Unforeseen "hidden burdens" of raising children.
pauli
2
310
S3を正しく理解するための内部構造の読解
nrinetcom
PRO
3
220
AWS re:Invent 2025 re:Cap LT大会 データベース好きが語る re:Invent 2025 データベースアップデート/セッションの紹介
coldairflow
0
130
Snowflake導入から1年、LayerXのデータ活用の現在 / One Year into Snowflake: How LayerX Uses Data Today
civitaspo
0
940
ペアーズにおけるAIエージェント 基盤とText to SQLツールの紹介
hisamouna
2
1.1k
特別捜査官等研修会
nomizone
0
460
Connection-based OAuthから学ぶOAuth for AI Agents
flatt_security
0
210
AI との良い付き合い方を僕らは誰も知らない
asei
0
190
20251219 OpenIDファウンデーション・ジャパン紹介 / OpenID Foundation Japan Intro
oidfj
0
360
Featured
See All Featured
AI Search: Where Are We & What Can We Do About It?
aleyda
0
6.7k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.3k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.3k
So, you think you're a good person
axbom
PRO
0
1.8k
How GitHub (no longer) Works
holman
316
140k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
400
Side Projects
sachag
455
43k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
Accessibility Awareness
sabderemane
0
18
Optimizing for Happiness
mojombo
379
70k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.4k
Transcript
有志で組織横串に挑む - GitLab CI Runnerカイゼン - 株式会社アイリッジ 斎藤辰徳
斎藤辰徳 (HN: bbrfkr) Hello! 2 所属:株式会社アイリッジ ミッション • OMOモバイルアプリ実行基盤開発 ◦
バックエンド ◦ クラウドインフラ (主にAWS)
自キー沼のご紹介 3
? ◉ 事業 ◦ OMO(Online Merges with Offline)ソリューション開発 ◦ OMOアプリの企画・開発
◉ 技術 ◦ インフラ開発・運用 → AWS × コンテナ がメイン ◦ Managed Serviceを積極活用したCloud Architecture ◦ ECS CLI v1 の国内トップレベルでの利用 AWS Fargate 4 Amazon ECS Amazon ECR Amazon Aurora Amazon Cognito AWS Lambda
Agenda 5 ◉ 弊社GitLabおよびCI環境の課題 ◉ 有志で構成された横串プロジェクトのご紹介 ◉ GitLab Runnerカイゼン ◉
弊社GitLabの今後の展望 ◉ まとめ
弊社GitLabおよびCI環境の課題 6
All in One問題 7 ◉ ほぼ全てのコンポーネントが一つのVMに?! gitaly gitlab-rails sidekiq static-data
nginx postgresql redis 何故かredisだけ 外出し?!
Runner非効率問題 8 ◉ 社内共有Runnerの管理者が不在
◉ 各PJで大小様々な、固有Group Runnerが乱立 共有Runner Runner非効率問題 9 A PJ B PJ
X PJ Y PJ
◉ All in One問題 ◉ Runner非効率問題 弊社GitLabおよびCI環境の課題 10 今回はこちらに対応した話
有志で構成された 横串プロジェクトのご紹介 11
Development Crossover PJ 12 ◉ 課題感 ◦ 担当案件の知見を社内での共有知に中々ならない ◦ 共有資産の責任所在と管理主体が曖昧になりがち
組織横断の課題に 開発者として挑む!
DC PJでやってきたこと 13 ◉ PM陣へ向けた技術資料作成 ◦ Slackインテグレーションの設定と仕組み解説 ◦ CloudWatchの分析ノウハウまとめ ◉
OpenAPI仕様準拠のモックサーバテンプレート ◉ 社内共有GitLab Runnerの集中管理・ビルド速度改善
GitLab Runnerカイゼン 14
解決したい課題とやったこと 15 ◉ 課題 ◦ 社内共有Runnerの管理者不在 ◦ PJ固有Group Runnerの乱立 ◉
やったこと ◦ 社内共有Runnerの運用・管理簡素化 ◦ 社内共有Runnerの管理主体のコミットメント
具体的には。。。 16
工夫したところ 17 ◉ コスト最適化 ◉ Runnerの障害検出 ◉ Runner破棄の事前処理 ◉ Docker
Storageの性能最適化
コスト最適化 18 ◉ 地味だけど大事なこと ◦ Spot Instanceの利用とリタイア対応 ◦ 営業日以外の縮退スケジュール (EventBridge)
Runnerの障害検出 19 ◉ Docker Storageが一杯になるとRunnerが無応答に... ◦ Root VolumeにDocker Storageを割り当てない ◉
Disk容量が一杯になりjobを捌けなくなる... ◦ RunnerにStorageのメトリクスを送らせる ◦ 容量が一定割合を超えたらRunner破棄 ◦ 一定期間メトリクスが来なかったらRunner破棄
Runner破棄の事前処理 20 ◉ Runnerはお行儀よく死ぬ必要がある ◦ 自分に対応するCloudWatchアラームの削除 ◦ 自分をGitLab上から登録解除 ◦ Slackに生きた証を残す
Docker Storageの性能最適化 21 ◉ インスタンスストアの活用 ◦ お高いインスタンスじゃないと容量が足りない... ◦ もう、普通にEBSでよくないかと思い始めた...
弊社GitLabの今後の展望 22
SaaSに移行したい 23
健全運用可能な状態を作る 24 ◉ 構成図の作成 ◉ 運用タスクの洗い出し ◦ version upなど ◉
運用タスクのドキュメンテーション
データサーバの分離 25 ◉ Aurora for PostgreSQL使いたい...けど...
GKE化 26 ◉ gitlab-railsなどの可用性担保 ◉ Kubernetes Executer
まとめ 27
まとめ 28 ◉ 弊社のGitLab、CIで考えていることのご共有 ◦ 横串Projectの存在 ◦ VM Runnerカイゼン(VM辛い... ◦
今後のGitLabの展望 ◉ もっとこうすれば...? というご意見お待ちしてます!
ご質問はお気軽にどうぞ ! ◉ twitter: bbrfkr ◉ mail:
[email protected]
Thanks! 29