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
有志で組織横串に挑む - GitLab CI Runnerカイゼン -
Search
bbrfkr
October 10, 2021
Technology
0
210
有志で組織横串に挑む - GitLab CI Runnerカイゼン -
bbrfkr
October 10, 2021
Tweet
Share
More Decks by bbrfkr
See All by bbrfkr
アプリエンジニアを救え! AWS CDKで実現するインフラCI・CD
bbrfkr
2
1.2k
[July Tech Festa 2019] Kubernetes on OpenStack におけるハマりどころ
bbrfkr
5
1.3k
OpenShiftでKubeVirtを試してみた
bbrfkr
1
1k
Kubernetes x スマートスピーカ ~ Kubernetesで実現するFaaS ~
bbrfkr
1
240
Virtual Kubelet + Fargate + EKSでノードレス Kubernetes を夢見た話
bbrfkr
5
2.2k
怖くない!コンテナ初心者に送るやさしいKubernetes入門
bbrfkr
20
5.8k
Other Decks in Technology
See All in Technology
Engineer Career Talk
lycorp_recruit_jp
0
170
BLADE: An Attempt to Automate Penetration Testing Using Autonomous AI Agents
bbrbbq
0
300
【令和最新版】AWS Direct Connectと愉快なGWたちのおさらい
minorun365
PRO
5
750
OCI 運用監視サービス 概要
oracle4engineer
PRO
0
4.8k
社内で最大の技術的負債のリファクタリングに取り組んだお話し
kidooonn
1
550
Application Development WG Intro at AppDeveloperCon
salaboy
0
190
RubyのWebアプリケーションを50倍速くする方法 / How to Make a Ruby Web Application 50 Times Faster
hogelog
3
940
TypeScript、上達の瞬間
sadnessojisan
46
13k
フルカイテン株式会社 採用資料
fullkaiten
0
40k
Shopifyアプリ開発における Shopifyの機能活用
sonatard
4
250
AGIについてChatGPTに聞いてみた
blueb
0
130
Terraform未経験の御様に対してどの ように導⼊を進めていったか
tkikuchi
2
430
Featured
See All Featured
Making Projects Easy
brettharned
115
5.9k
Producing Creativity
orderedlist
PRO
341
39k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
YesSQL, Process and Tooling at Scale
rocio
169
14k
Writing Fast Ruby
sferik
627
61k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
26
2.1k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
StorybookのUI Testing Handbookを読んだ
zakiyama
27
5.3k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
6.9k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
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