使用内建的 MinIO 服务作为对象存储
本迁移指南适用于当您从 基于包的安装 迁移到 Helm chart,并且您希望使用内置的 MinIO 服务进行对象存储时。此操作更适合用于测试目的。如要在生产环境使用,建议设置外部对象存储。
了解内建 MinIO 集群访问细节的最简单方法是查看 Sidekiq、Webservice 和 Task Runner pod 中生成的 gitlab.yml
文件。
从 Sidekiq pod 中获取它:
-
找出 Sidekiq pod 的名称:
kubectl get pods -lapp=sidekiq
-
从 Sidekiq pod 中获取
gitlab.yml
文件:kubectl exec <sidekiq pod name> -- cat /srv/gitlab/config/gitlab.yml
-
在
gitlab.yml
文件中,将有一个用于上传的部分,其中包含对象存储连接的详细信息。 类似于以下内容:uploads: enabled: true object_store: enabled: true remote_directory: gitlab-uploads direct_upload: true background_upload: false proxy_download: true connection: provider: AWS region: <S3 region> aws_access_key_id: "<access key>" aws_secret_access_key: "<secret access key>" host: <Minio host> endpoint: <Minio endpoint> path_style: true
-
使用此信息在
/etc/gitlab/gitlab.rb
文件中,为基于包的部署配置对象存储。对于从集群外部连接到 MinIO 服务,仅 MinIO 主机 URL 就足够了。基于 Helm charts 的安装被配置为将来自该 URL 的请求自动重定向到相应的端点。因此,您不需要在/etc/gitlab/gitlab.rb
中的连接设置中设置endpoint
值。