VM サービスを使った仮想マシンの管理
VM サービスにより、 Machine
Executor と リモート Docker ジョブの実行方法を制御できます。
このセクションでは、VM サービスで設定可能なオプションについて説明します。 仮想マシンを事前に拡張する方法の詳細については、デフォルトの values.yaml
ファイルを参照してください。
VM プロバイダー
下記は、AWS または GCP の VM プロバイダー用の設定オプションです。
AWS
values.yaml
ファイルに、AWS EC2 と連携するように VM サービスを設定するセクションがあります。 インストールの間に、セキュリティグループと認証のセットアップを行います。 詳細については、 インストールステップ 3: 実行環境 を参照してください。
ここではインストール後の VM サービスの設定オプションについて説明します。
Windows イメージ
Windows Executor が必要な場合は、values.yaml
ファイルに AMI ID を記述します。 Windows イメージの作成には、 CircleCI Server Windows イメージビルダー を使用します。
vm_service:
providers:
ec2:
...
windowsAMI: "<my-windows-ami>"
代替の Linux VM イメージ
Linux Machine Executor にカスタム AMI を指定する場合、values.yaml
ファイルに AMI ID を記述します。 Linux イメージの作成には、 CircleCI Server Windows イメージビルダー を使用します。
vm_service:
providers:
ec2:
...
linuxAMI: "<my-linux-ami>"
デフォルトの AWS AMI リスト
デフォルトの Server v4.x 用の AMI は Ubuntu 22.04 に基づいています。
x86 AMI リスト
地域 | AMI |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Arm AMI リスト
地域 | AMI |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
GCP
values.yaml
ファイルに、GCP と連携するように VM サービスを設定するセクションがあります。 インストールの間に、セキュリティグループと認証のセットアップを行います。 詳細については、 インストールステップ 3: 実行環境 を参照してください。
ここではインストール後の VM サービスの設定オプションについて説明します。
Windows イメージ
Windows Executor が必要な場合は、values.yaml
ファイルに AMI ID を記述します。 Windows イメージの作成には、 CircleCI Server Windows イメージビルダー を使用します。
vm_service:
providers:
gcp:
...
windowsImage: "<my-windows-image>"
代替の Linux VM イメージ
Linux Machine Executor にカスタム AMI を指定する場合、values.yaml
ファイルに AMI ID を記述します。 Linux イメージの作成には、 CircleCI Server Windows イメージビルダー を使用します。
vm_service:
providers:
gcp:
...
linuxImage: "<my-linux-image>"
インスタンスの事前割り当て
Docker レイヤーキャッシュ (DLC) を使用する場合、VM サービスインスタンスをオンデマンドでスピンアップする必要があります。 これを実現する方法は 2 つあります。 1 つは、事前割り当てインスタンスを使用中にする、もう 1 つは、リモート Docker と マシン 用の事前割り当てインスタンスのフィールドの両方を 0 に設定する方法です。 |
事前割り当てインスタンスを使用する場合、インスタンスが動作不可能状態にならないように、それらのインスタンスを 1 日に 1 回切り替えるように cron ジョブがスケジュールされていることに注意してください。 |
常にインスタンスが事前に割り当てられるようにサーバーを設定するには、以下の values.yaml
サンプルに示されているキーを使用します。
vm_scaler:
# -- Number of replicas to deploy for the vm-scaler deployment.
replicas: 1
# -- Configuration options for, and numbers of, prescaled instances for remote Docker jobs.
prescaled:
- type: l1.medium
image: docker-default
docker-engine: true # remote Docker environment
cron: ""
count: 2
vm_scaler:
# -- Number of replicas to deploy for the vm-scaler deployment.
replicas: 1
# -- Configuration options for, and numbers of, prescaled instances for remote Docker jobs.
prescaled:
- type: l1.medium
image: default
docker-engine: false # machine execution environment
cron: ""
count: 2
変更の適用
values.yaml
ファイルへの変更を適用します。
namespace=<your-namespace>
helm upgrade circleci-server oci://cciserver.azurecr.io/circleci-server -n $namespace --version 4.0.5 -f <path-to-values.yaml>
ドキュメントの改善にご協力ください
このガイドは、CircleCI の他のドキュメントと同様にオープンソースであり、 GitHub でご利用いただけます。 ご協力いただき、ありがとうございます。
- このページの編集をご提案ください (最初に「コントリビューションガイド」をご覧ください)。
- ドキュメントの問題点を報告する、またはフィードバックやコメントを送信するには、GitHub で issue を作成してください。
- CircleCI は、ユーザーの皆様の弊社プラットフォームにおけるエクスペリエンスを向上させる方法を常に模索しています。 フィードバックをお寄せいただける場合は、リサーチコミュニティにご参加ください。
サポートが必要ですか
CircleCI のサポートエンジニアによる、サービスに関する問題、請求およびアカウントについての質問への対応、設定の構築に関する問題解決のサポートを行っています。 サポートチケットを送信して、CircleCI のサポートエンジニアにお問い合わせください。日本語でお問い合わせいただけます。
または、 サポートサイト から、サポート記事やコミュニティフォーラム、トレーニングリソースをご覧いただけます。
CircleCI Documentation by CircleCI is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.