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
1
640
CircleCI Server運用のポイント / Point of CirlceCI Server operation
【東京】CircleCI ユーザーコミュニティミートアップ#7
https://circleci.connpass.com/event/147712/
dehio3
October 01, 2019
Tweet
Share
More Decks by dehio3
See All by dehio3
とっ散らかったログバケットを S3バッチオペレーションで整理整頓 / Organizing disordered log buckets using S3 Batch Operations
tomohide_tanaka
0
260
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
910
Other Decks in Technology
See All in Technology
2026年もソフトウェアサプライチェーンのリスクに立ち向かうために / Product Security Square #3
flatt_security
1
680
ReactのdangerouslySetInnerHTMLは“dangerously”だから危険 / Security.any #09 卒業したいセキュリティLT
flatt_security
0
330
Zeal of the Convert: Taming Shai-Hulud with AI
ramimac
0
150
会社紹介資料 / Sansan Company Profile
sansan33
PRO
16
410k
20260311 ビジネスSWG活動報告(デジタルアイデンティティ人材育成推進WG Ph2 活動報告会)
oidfj
0
350
WebアクセシビリティをCI/CDで担保する ― axe DevTools × Playwright C#実践ガイド
tomokusaba
2
180
Agent ServerはWeb Serverではない。ADKで考えるAgentOps
akiratameto
0
120
生成AIで速度と品質を両立する、QAエンジニア・開発者連携のAI協調型テストプロセス
shota_kusaba
0
220
決済サービスを支えるElastic Cloud - Elastic Cloudの導入と推進、決済サービスのObservability
suzukij
2
660
【Oracle Cloud ウェビナー】【入門編】はじめてのOracle AI Data Platform - AIのためのデータ準備&自社用AIエージェントをワンストップで実現
oracle4engineer
PRO
1
170
俺の/私の最強アーキテクチャ決定戦開催 ― チームで新しいアーキテクチャに適合していくために / 20260322 Naoki Takahashi
shift_evolve
PRO
0
200
TypeScript 7.0の現在地と備え方
uhyo
7
1.9k
Featured
See All Featured
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
130
Marketing to machines
jonoalderson
1
5k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.4k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
89
What does AI have to do with Human Rights?
axbom
PRO
1
2k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Accessibility Awareness
sabderemane
0
82
Abbi's Birthday
coloredviolet
2
5.5k
Site-Speed That Sticks
csswizardry
13
1.1k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
320
Imperfection Machines: The Place of Print at Facebook
scottboms
269
14k
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