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

GitLabチャート用のOKEリソースの準備

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

完全に機能するGitLabインスタンスの場合、GitLabチャートをOracle Container Engine for Kubernetes(OKE)にデプロイする前に、いくつかのリソースが必要です。OKEクラスターを作成する前に、Oracle Cloud Infrastructureテナンシーを準備する方法を確認してください。

OKEクラスターの作成

前提要件:

Kubernetesクラスターを手動でプロビジョニングするには、OKEの手順に従ってください。OKEでサポートされているワーカーノードで使用可能なコンピューティングシェイプのリストを確認してください。

4つのOCPUと30GBのRAMを持つクラスターをお勧めします。

GitLabへの外部アクセス

デフォルトでは、GitLabチャートは、100Mbpsのシェイプを持つOracle Cloud Infrastructureパブリックロードバランサーを作成するIngressコントローラーをデプロイします。ロードバランサーサービスは、ホストサブネットからのものではないフローティングパブリックIPアドレスを割り当てます。

チャートのインストール中にシェイプやその他の設定(ポート、SSL、セキュリティリストなど)を変更するには、次のコマンドライン引数nginx-ingress.controller.service.annotationsを使用します。たとえば、400Mbpsのシェイプでロードバランサーを指定するには、次のようにします:

--set nginx-ingress.controller.service.annotations."service\.beta\.kubernetes\.io/oci-load-balancer-shape"="400Mbps"

デプロイしたら、Ingressコントローラーサービスに関連付けられている注釈を確認できます:

$ kubectl get service gitlab-nginx-ingress-controller -o yaml

apiVersion: v1
kind: Service
metadata:
  annotations:
    ...
    service.beta.kubernetes.io/oci-load-balancer-shape: 400Mbps
    ...

詳細については、OKEロードバランサーのドキュメントを確認してください。

次の手順

クラスターが起動して実行されたら、チャートのインストールを続行します。global.hosts.domainオプションでDNSドメイン名を設定しますが、global.hosts.externalIPオプションによる静的IPの設定は省略します。

デプロイが完了したら、ロードバランサーのIPアドレスをクエリして、DNSレコードの種類に関連付けることができます:

kubectl get ingress/<RELEASE>-webservice-default -ojsonpath='{.status.loadBalancer.ingress[0].ip}'

<RELEASE>は、helm install <RELEASE>で使用されるリリース名に置き換える必要があります。