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
CircleCI Server運用のポイント / Point of CirlceCI Serv...
Search
dehio3
October 01, 2019
Technology
640
1
Share
CircleCI Server運用のポイント / Point of CirlceCI Server operation
【東京】CircleCI ユーザーコミュニティミートアップ#7
https://circleci.connpass.com/event/147712/
dehio3
October 01, 2019
More Decks by dehio3
See All by dehio3
とっ散らかったログバケットを S3バッチオペレーションで整理整頓 / Organizing disordered log buckets using S3 Batch Operations
tomohide_tanaka
0
270
40代エンジニアの生活の変化とキャリアの歩み
tomohide_tanaka
0
1.5k
AWSソリューションを活用して 1ヶ月で動画配信機能をリリースした話 / The story of releasing the Video distribution service in one month using AWS solutions
tomohide_tanaka
1
1.5k
GitHub Actionsで Terraformをplan&applyしてみた / I tried to plan and apply Terraform with GitHub Actions
tomohide_tanaka
6
6.3k
CircleCI_Serverの利用状況を可視化した話 / CircleCI Server Visualization of usage status
tomohide_tanaka
0
920
Other Decks in Technology
See All in Technology
制約を設計する - 非決定性との境界線 / Designing constraints
soudai
PRO
6
1.5k
BIツール「Omni」の紹介 @Snowflake中部UG
sagara
0
180
最大のアウトプット術は問題を作ること
ryoaccount
0
300
Cursor Subagentsはいいぞ
yug1224
2
140
会社紹介資料 / Sansan Company Profile
sansan33
PRO
16
410k
パワポ作るマンをMCP Apps化してみた
iwamot
PRO
0
300
GitHub Advanced Security × Defender for Cloudで開発とSecOpsのサイロを超える: コードとクラウドをつなぐ、開発プラットフォームのセキュリティ
yuriemori
1
130
Kubernetes基盤における開発者体験 とセキュリティの両⽴ / Balancing developer experience and security in a Kubernetes-based environment
chmikata
0
170
【関西電力KOI×VOLTMIND 生成AIハッカソン】空間AIブレイン ~⼤阪おばちゃんフィジカルAIに続く道~
tanakaseiya
0
150
Oracle AI Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
3
2.1k
TanStack Start エコシステムの現在地 / TanStack Start Ecosystem 2026
iktakahiro
1
280
Data Intelligence Engineering Unit 部門と各ポジション紹介
sansantech
PRO
0
120
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Code Reviewing Like a Champion
maltzj
528
40k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
350
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
1k
Color Theory Basics | Prateek | Gurzu
gurzu
0
280
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
700
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
470
4 Signs Your Business is Dying
shpigford
187
22k
Designing for Timeless Needs
cassininazir
0
180
How STYLIGHT went responsive
nonsquared
100
6k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
1
170
Transcript
CircleCI Server 運用のポイント CircleCI ユーザーコミュニティミートアップ #7
自己紹介 Tanaka Tomohide • twitter: @dehio3 • blog:https://www.dehio3.com/ • 音響屋→インフラエンジニア
• CircleCI運用歴:10ヶ月 2
はじめに
CircleCI Serverとは • オンプレミス版のCircleCI • CirlceCIから公開されているTerraformを利用して、AWS上に 構築可能 ◦ https://github.com/circleci/enterprise-setup
CircleCI Server 使ってる?✋
CircleCI Server 検討してる?✋
今日話す内容 • オンプレ版の運用中に発生した課題から気づいた運用のポイ ント • CircleCI Server 2.17.3時点での情報(9/30時点の最新) ◦ https://circleci.com/server/changelog/
CircleCI Server の 構成要素
None
ビルドの詳しい仕組みは https://speakerdeck.com/kimh/circleci-2-dot-0wozhi-eru2tufalse-kontenakurasutatosre
永続リソースと 一時リソースそれぞれのポイント
永続リソース
None
スケーリングのタイミング • nomad-clientはAutoScalingから起動する。 • AutoScalingでEC2インスタンス起動アクション後、nomad-clientでbuild処理可能 な状態になるまで3,4分かかる。 • AutoScalingのアクションは自動では実行されない為、スケールリングアクションの 契機は自分で実装する必要がある。 •
キューの滞留を検知してからスケールリングすると、スケールリングしたタイミング では既にキューが捌け終わって、無駄なスケールになる事もある。 • スケジュールでの時間契機か、リソース状況契機か、利用状況に応じてスーリング の検討が必要。
一時リソース
None
machine executorは冗長化未対応 • machine executorを動作させるサブネットは現状一つしか指定でない。 • 設定はWebコンソールから実施する為、AZを変更する場合は再起動が必要。 • 8/23のAZ障害はまさに直撃した・・ていうかこの時気づいた( ;∀;)
• 即サポートに連絡して改善要望!!
machine executorインスタンスのゾンビ化 • “machine”と”setup_remote_docker”を利用すると、一時的なEC2インスタンスが 新規に作成される。 • 本来であれば処理が終わるとインスタンスが削除されるが、バグ(2.14.01以前)や 起動中のserviceboxの再起動によって、インスタンスが削除されずに残る事があ る。 •
ゾンビインスタンは無駄なコストになるので、定期的なゾンビインスタンスのチェック が必要。
DLCのキャッシュ保持期間 • “docker_layer_caching”を設定すると専用のEBSボリュームが作成され、都度マ ウントされる事で、キャッシュが実現される。 • “Inactivity period before clearing Docker
cache storage volumes (days)”にて chacheの保持期間を設定でき、デフォルトの14日に設定される。 • 保持期間はEBSボリュームの作成日ではなく、最終利用日から14日保持される。 • EBSボリュームについては、未利用時であっても課金される為、利便性とコストの バランスで保持期間を設定する。
まとめ
まとめ • 当然だがオンプレ版の場合はCircleCIのインフラも運用する 必要がある。 • インフラの維持コストを抑える為に、状況の可視化と継続的な 運用の改善が必要。 • まだまだ改善の余地はあるので、今後のCirlceCI Serverの開
発に期待!!
おまけ
前回のミートアップ https://speakerdeck.com/tomohide_tanaka/circleci-server-visualization-of-usage-status
SaaS版のビルド情報を取得ツールを作成 https://www.dehio3.com/entry/2019/09/23/115924
Thank you!! 25