Upgrade to Pro — share decks privately, control downloads, hide ads and more …

1日約70万ビルド: DockerとNomadが支えるCI/CDプラットフォーム

Kim, Hirokuni
September 08, 2018
5.1k

1日約70万ビルド: DockerとNomadが支えるCI/CDプラットフォーム

builderscon 2018 9/8 15:30 多目的教室1でのセッション

Kim, Hirokuni

September 08, 2018
Tweet

More Decks by Kim, Hirokuni

Transcript

  1. 運用してわかったこと (1) Single Binaryファイル $ nomad agent -dev ==> Starting

    Nomad agent... ==> Nomad agent configuration: Client: true Log Level: DEBUG Region: global (DC: dc1) Server: true .... メリット: 開発環境でも簡単にテストができる! 運用が楽 スケールが簡単
  2. スケールダウン 問題点 Drainモードにするとジョブを他のNodeに移そうとする CircleCIではMigrationしないで欲しい パッチで回避 $ nomad node drain -enable

    f4e8a9e5 Are you sure you want to enable drain mode for node "f4e8a9e5 2018-03-30T23:13:16Z: Ctrl-C to stop monitoring: will not cance 2018-03-30T23:13:16Z: Node "f4e8a9e5-30d8-3536-1e6f-cda5c869c35 2018-03-30T23:13:17Z: Alloc "1877230b-64d3-a7dd-9c31-dc5ad3c93e 2018-03-30T23:13:17Z: Alloc "1877230b-64d3-a7dd-9c31-dc5ad3c93e 2018-03-30T23:13:17Z: Alloc "1877230b-64d3-a7dd-9c31-dc5ad3c93e ... 2018-03-30T23:13:42Z: All allocations on node "f4e8a9e5-30
  3. Declaring Bankruptcy (2) Nomad Garbage Collection Server GC: 古いスケジューリングに関するデータを削除 Client

    GC: ジョブが作ったファイルなどを削除 5分ごとに自動で起動される 問題 並列でGCが走る Raftのトランザクションが走る クラスタが高負荷 CircleCIでジョブが処理できなくなる Declaring Bankruptcy