GitLabチャートと外部データベースの設定
GitLabチャートを本番環境でデプロイするには、外部データベースを使用します。
前提条件:
- PostgreSQL 12以降のデプロイ。お持ちでない場合は、AWS RDS PostgreSQLや GCP Cloud SQLのようなクラウド提供のソリューションをご検討ください。自己管理ソリューションの場合は、Linuxパッケージを検討してください。
- デフォルトではgitlabhq_productionという名前の空のデータベース。
- データベースにフルアクセスできるユーザー。詳細は外部データベースのドキュメントを参照してください。
- データベースユーザーのパスワードを持つKubernetesシークレット。
- 
pg_trgmとbtree_gist拡張機能。Superuserフラグを持つアカウントをGitLabに提供していない場合は、データベースのインストールを進める前にこれらの拡張機能がロードされていることを確認してください。
ネットワークの前提条件
- データベースがクラスターからアクセス可能であることを確認します。ファイアウォールのポリシーでトラフィックが許可されていることを確認してください。
- 
PostgreSQLをロードバランシングクラスターとして使用し、Kubernetes DNSをサービス検出に使用する予定の場合は、 bitnami/postgresqlチャートをインストールするときに、--set slave.service.clusterIP=Noneを使用します。この設定は、PostgreSQLセカンダリサービスをヘッドレスサービスとして設定し、各セカンダリインスタンスに対してDNSAレコードの作成を許可します。サービス検出にKubernetes DNSを使用する方法の例については、 examples/database/values-loadbalancing-discover.yamlを参照してください。
GitLab チャートが外部データベースを使うように設定するには:
- 
以下のパラメータを設定します: - 
postgresql.install:falseに設定すると、内部データベースが無効になります。
- 
global.psql.host:外部データベースのホスト名(ドメインまたはIPアドレス)を設定します。
- 
global.psql.password.secret:gitlabユーザー](../../installation/secrets.md#postgresql-password)のデータベース・パスワードを含む[シークレットの名前。
- 
global.psql.password.key:シークレット内にある、パスワードを含むキー。
 
- 
- 
オプション。デフォルトを使用しない場合は、以下の項目をさらにカスタマイズできます: - 
global.psql.port:データベースが利用可能なポート。デフォルトは5432です。
- 
global.psql.database:データベースの名前。
- 
global.psql.username:データベースにアクセスできるユーザー。
 
- 
- 
オプション。データベースへの相互 TLS 接続を使用する場合は、以下を設定します: - 
global.psql.ssl.secret:クライアント証明書、キー、および作成者を含むシークレット。
- 
global.psql.ssl.serverCA:シークレットの中で、認証局を参照する鍵(CA)。
- 
global.psql.ssl.clientCertificate:シークレットでは、クライアント証明書を参照するキー。
- 
global.psql.ssl.clientKey:シークレットでは、クライアント。
 
- 
- 
GitLabチャートをデプロイする際、 --setフラグを使って値を追加します。例えばhelm install gitlab gitlab/gitlab --set postgresql.install=false --set global.psql.host=psql.example --set global.psql.password.secret=gitlab-postgresql-password --set global.psql.password.key=postgres-password
