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

GitLab OperatorとGitLab Geoを設定する

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

Operatorの要件、制限事項、およびGeoの設定は、GitLabチャートの場合と同じです。

OperatorでGeoサイトをデプロイするには、Helmチャートの値をspec.chart.valuesに設定して、GitLabカスタムリソースに適用します。

Gateway API

Envoy GatewayでGateway APIを使用する場合、チャートのドキュメントに従う以外に追加の作業は不要です。Operatorはglobal.geo.gatewayApi.additionalHostnameの設定を適用して、サイト間の内部通信を有効にします。

Ingressクラス

NGINX IngressはGitLabチャート19.0で非推奨となり、GitLab 20.0で削除される予定です。 新しいGeoデプロイにはEnvoy GatewayでGateway APIを使用してください。 既存のGeoデプロイは、できるだけ早く移行してください。

GitLab Operatorには、セカンダリNGINX IngressのIngressClassは付属していません。

このコントローラーとIngressClassが必要となるのは、次の場合のみです:

  1. GitLab Geoに統合URLを使用する場合。
  2. プライマリIngressコントローラーが受信X-Forwarded-Forヘッダーをオーバーライドする場合(バンドルされたデフォルトのNGINXチャートが該当します)。

IngressClassの作成プロセスは、インストール方法によって異なります:

IngressClassは、デフォルトのマニフェストとOLMのリリースには含まれていません。

手動で作成します:

kubectl apply -f - <<EOF
apiVersion: networking.k8s.io/v1
kind: IngressClass
metadata:
  name: <gitlab-name>-nginx-geo
spec:
  controller: k8s.io/ingress-nginx-geo
EOF

値を更新して、IngressClassを有効にします:

nginx-ingress:
  geo:
    ingressClass:
      enabled: true