オペレーターの概要
このページの内容
このガイドでは、CircleCI Server x の保守や監視を行う CircleCI Server のオペレーターの皆さんに役立つ情報を紹介します。 このオペレーター向けガイドを読む前に、必ず CircleCI Server v4.x の概要をお読みください。
CircleCI Server では、 Nomad スケジューラを使用して CI/CD ジョブのスケジュールを設定します。 Nomad サーバー (コントロールプレーン) が Kubernetes クラスタ内で動作するのに対し、Nomad クライアントはクラスタ外部にプロビジョニングされます。 Nomad クライアントが、Nomad コントロールプレーン、出力プロセッサ、VM サービスにアクセスできる必要があります。
CircleCI Server では、Nomad クライアントまたは専用の仮想マシンで Docker ジョブを実行できます。 これらの VM ジョブは Nomad クライアントによって制御されます。そのため Nomad クライアントは、SSH 接続用にポート 22、リモート Docker ジョブ用にポート 2376 で VM にアクセスできる必要があります。
ジョブのアーティファクトと出力は、Nomad ジョブからオブジェクトストレージ (S3、GCS、またはその他のサポートされているオプション) に直接送信されます。
オブジェクトストレージには、監査ログやアプリケーションのその他のアイテムも保存されます。そのため、Kubernetes クラスタと Nomad クライアントの両方がオブジェクトストレージにアクセスできる必要があります。
実行環境
CircleCI Server v4.x では、プライマリジョブスケジューラとして Nomad を使用します。 ジョブスケジューラ、およびクライアントとクラスタの基本的な操作方法については、 Nomad クラスタの操作ガイド を参照してください。
CircleCI の Nomad クライアントは、プロジェクトの .circleci/config.yml
ファイルでジョブごとに設定されている Executor に従って、コンピューティングリソースを自動的にプロビジョニングします。
Nomad クライアント
Nomadクライアントは実行後に状態を保持しないため、必要に応じてコンテナ数を増減することができます。
ジョブのリソースクラスで必要なリソースが Nomad クライアントのインスタンスタイプで利用可能な量を超える場合、ジョブは保留状態のままになります。 Nomad クライアントのインスタンスタイプを小さいものにするとコストを削減できますが、使用できる Docker リソースクラスが制限されます。 利用可能なリソースクラスを参照して、最適なものをお選びください。 デフォルトのインスタンスタイプでは、最大で xlarge
のリソースクラスを実行できます。
Nomad クライアントのリソースを最適に使用するためのオプションについては、 Nomad ドキュメントを参照してください。
Nomad クライアントマシンの最大サイズは RAM 128GB/64 CPUです。 使用する Nomad クライアントマシンのサイズを大きくしたい場合は、CircleCI のアカウント担当者にお問い合わせください。 |
Nomad ポートの要件に関する詳細は、 クラスタのハードニングを参照してください。
GitHub
CircleCI では、GitHub または GitHub Enterprise を ID プロバイダーとして使用しています。 また GitHub Enterprise では代わりに、 SAML または SCIM を使って、外部の ID プロバイダーでユーザーを管理することができます。
CircleCI では、セットアップ後の URL やバックエンドの GitHub インスタンスの変更には対応していません。 |
以下の表に、GitHub を実行するマシンでサービス および Nomad クライアントインスタンスと通信する際に使用されるポートを示します。
ソース | ポート | 用途 |
---|---|---|
Services | 22 | Git アクセス |
Services | 80 または 443 | API アクセス |
Nomad クライアント | 22 | Git アクセス |
Nomad クライアント | 80 または 443 | API アクセス |
次のステップ
-
Nomad クラスタの運用ガイド をお読みください。
ドキュメントの改善にご協力ください
このガイドは、CircleCI の他のドキュメントと同様にオープンソースであり、 GitHub でご利用いただけます。 ご協力いただき、ありがとうございます。
- このページの編集をご提案ください (最初に「コントリビューションガイド」をご覧ください)。
- ドキュメントの問題点を報告する、またはフィードバックやコメントを送信するには、GitHub で issue を作成してください。
- CircleCI は、ユーザーの皆様の弊社プラットフォームにおけるエクスペリエンスを向上させる方法を常に模索しています。 フィードバックをお寄せいただける場合は、リサーチコミュニティにご参加ください。
サポートが必要ですか
CircleCI のサポートエンジニアによる、サービスに関する問題、請求およびアカウントについての質問への対応、設定の構築に関する問題解決のサポートを行っています。 サポートチケットを送信して、CircleCI のサポートエンジニアにお問い合わせください。日本語でお問い合わせいただけます。
または、 サポートサイト から、サポート記事やコミュニティフォーラム、トレーニングリソースをご覧いただけます。
CircleCI Documentation by CircleCI is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.