正式なドキュメントは英語版であり、この日本語訳はAI支援翻訳により作成された参考用のものです。日本語訳の一部の内容は人間によるレビューがまだ行われていないため、翻訳のタイミングにより英語版との間に差異が生じることがあります。最新かつ正確な情報については、英語版をご参照ください。

GitLab Runner Helmチャート

  • プラン: Free、Premium、Ultimate
  • 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated

GitLab Runner Helmチャートは、GitLab RunnerインスタンスをKubernetesクラスターにデプロイするための公式の手法です。このチャートにより、GitLab Runnerが次のように設定されます:

  • GitLab RunnerのKubernetes executorを使用して実行する。
  • 新しいCI/CDジョブごとに、指定されたネームスペースで新しいポッドをプロビジョニングする。

HelmチャートでGitLab Runnerを設定する

GitLab Runnerの設定の変更をvalues.yamlに保存します。このファイルの設定については、以下を参照してください:

  • チャートリポジトリ内のデフォルトのvalues.yaml設定。
  • 値ファイルに関するHelmドキュメント。値ファイルによってデフォルト値がオーバーライドされる仕組みが説明されています。

GitLab Runnerを適切に実行するには、設定ファイルで次の値を設定する必要があります:

  • gitlabUrl: Runnerの登録先のGitLabサーバーの完全なURL(https://gitlab.example.comなど)。
  • rbac: { create: true }: GitLab Runnerがジョブを実行するポッドを作成するためのRBAC(ロールベースのアクセス制御)ルールを作成します。
    • 既存のserviceAccountを使用する場合は、rbacにサービスアカウント名を追加してください:

      rbac:
        create: false
      serviceAccount:
        create: false
        name: your-service-account
    • serviceAccountに必要な最小限の権限については、Runner APIの権限を設定するを参照してください。

  • runnerToken: GitLab UIでRunnerを作成するときに取得した認証トークン。
    • このトークンを直接設定するか、シークレットに保存します。

その他のオプションの設定も使用できます。

これで、GitLab Runnerをインストールする準備ができました。

Helmチャートを使用してGitLab Runnerをインストールする

前提要件:

  • GitLabサーバーのAPIにクラスターからアクセスできること。
  • ベータAPIが有効になっているKubernetes 1.4以降。
  • kubectl CLIがローカルにインストールされ、クラスターに対して認証されていること。
  • Helmクライアントがマシンにローカルにインストールされていること。
  • values.yamlで必要な値をすべて設定していること。

HelmチャートからGitLab Runnerをインストールするには、次の手順に従います:

  1. GitLab Helmリポジトリを追加します。

    helm repo add gitlab https://charts.gitlab.io
  2. Helm 2を使用している場合は、helm initでHelmを初期化します。

  3. アクセスできるGitLab Runnerのバージョンを確認します:

    helm search repo -l gitlab/gitlab-runner
  4. GitLab Runnerの最新バージョンにアクセスできない場合は、次のコマンドでチャートを更新します:

    helm repo update gitlab
  5. values.yamlファイルでGitLab Runnerを設定したら、必要に応じてパラメータを変更して、次のコマンドを実行します:

    # For Helm 2
    helm install --namespace <NAMESPACE> --name gitlab-runner -f <CONFIG_VALUES_FILE> gitlab/gitlab-runner
    
    # For Helm 3
    helm install --namespace <NAMESPACE> gitlab-runner -f <CONFIG_VALUES_FILE> gitlab/gitlab-runner
    • <NAMESPACE>: GitLab RunnerをインストールするKubernetesネームスペース。
    • <CONFIG_VALUES_FILE>: カスタム設定を含む値ファイルのパス。作成するには、HelmチャートでGitLab Runnerを設定するを参照してください。
    • GitLab Runner Helmチャートの特定バージョンをインストールするには、helm installコマンドに--version <RUNNER_HELM_CHART_VERSION>を追加します。任意のバージョンのチャートをインストールできますが、新しいvalues.ymlには古いバージョンのチャートとの互換性がない場合があります。

使用可能なGitLab Runner Helmチャートのバージョンを確認する

HelmチャートとGitLab Runnerのバージョニング方法は異なります。この2つの間のバージョンマッピングを確認するには、ご使用のHelmのバージョンに対応するコマンドを実行します:

# For Helm 2
helm search -l gitlab/gitlab-runner

# For Helm 3
helm search repo -l gitlab/gitlab-runner

出力の例は次のとおりです:

NAME                  CHART VERSION APP VERSION DESCRIPTION
gitlab/gitlab-runner  0.64.0        16.11.0     GitLab Runner
gitlab/gitlab-runner  0.63.0        16.10.0     GitLab Runner
gitlab/gitlab-runner  0.62.1        16.9.1      GitLab Runner
gitlab/gitlab-runner  0.62.0        16.9.0      GitLab Runner
gitlab/gitlab-runner  0.61.3        16.8.1      GitLab Runner
gitlab/gitlab-runner  0.61.2        16.8.0      GitLab Runner
...

Helmチャートを使用してGitLab Runnerをアップグレードする

前提要件:

  • GitLab Runnerチャートをインストールしていること。
  • GitLabでRunnerを一時停止していること。これにより、完了時の認証エラーなど、ジョブで発生する問題を回避できます。
  • すべてのジョブが完了していることを確認していること。

設定を変更するか、チャートを更新するには、必要に応じてパラメータを変更してhelm upgradeを使用します:

helm upgrade --namespace <NAMESPACE> -f <CONFIG_VALUES_FILE> <RELEASE-NAME> gitlab/gitlab-runner
  • <NAMESPACE>: GitLab RunnerをインストールしたKubernetesネームスペース。
  • <CONFIG_VALUES_FILE>: カスタム設定を含む値ファイルのパス。作成するには、HelmチャートでGitLab Runnerを設定するを参照してください。
  • <RELEASE-NAME>: チャートをインストールしたときに付けた名前。インストールセクションの例ではgitlab-runnerという名前が付けられています。
  • GitLab Runner Helmチャートの最新バージョンではなく特定バージョンに更新するには、helm upgradeコマンドに--version <RUNNER_HELM_CHART_VERSION>を追加します。

Helmチャートを使用してGitLab Runnerをアンインストールする

GitLab Runnerをアンインストールするには、次の手順に従います:

  1. GitLabでRunnerを一時停止し、すべてのジョブが完了していることを確認します。これにより、完了時の認証エラーなど、ジョブに関連する問題を回避できます。

  2. このコマンドを実行します(必要に応じて変更します):

    helm delete --namespace <NAMESPACE> <RELEASE-NAME>
    • <NAMESPACE>は、GitLab RunnerをインストールしたKubernetesネームスペースです。
    • <RELEASE-NAME>は、チャートをインストールしたときに付けた名前です。このページのインストールセクションでは、これはgitlab-runnerでした。