helm 安装 harbor 安装不成功处理过程
通过安装脚本
helm install c7n/harbor
--set expose.ingress.hosts.core=harbor.ls.com
--set externalURL=https://harbor.ls.com
--set persistence.persistentVolumeClaim.registry.storageClass=nfs-provisioner
--set persistence.persistentVolumeClaim.jobservice.storageClass=nfs-provisioner
--set persistence.persistentVolumeClaim.database.storageClass=nfs-provisioner
--set persistence.persistentVolumeClaim.redis.storageClass=nfs-provisioner
--set chartmuseum.enabled=false
--set clair.enabled=false
--set notary.enabled=false
--set harborAdminPassword=Harbor12345
--version 1.0.1
--name harbor
--namespace c7n-system
执行后 总有一批容器启动不成功
harbor-harbor-adminserver-6dd88bb8c-rk87d 0/1 Running 26 1h
harbor-harbor-core-5cffc9b4-pvjhp 0/1 Running 30 1h
harbor-harbor-database-0 0/1 Running 0 1h
harbor-harbor-jobservice-6d7cdcb67b-gvxjb 0/1 Running 32 1h
harbor-harbor-portal-9c48d9887-8r7fb 1/1 Running 0 1h
harbor-harbor-redis-0 1/1 Running 0 1h
通过各种排查 确定是由于数据库 harbor-harbor-database-0 的 postgres 有问题引起的
解决问题的 根源在于解决 postgres 启动问题
通过查看日志 发现是 postgres 的配置问题 pg_hba.conf
pg对应的目录 pg_hba.conf
访问权限 修改为为 0.0.0.0
# IPv4 local connections:
host all all 0.0.0.0/0 trust
后面又出现找不到 postgres 数据库的 这个数据库不存在
解决办法
# 进入容器
kubectl exec -it harbor-harbor-database-0 -n namspace -- sh
# 进入这个数据库 创建用户 创建表 最终问题解决
psql -d template1
CREATE USER postgres SUPERUSER;
ALTER USER postgresql PASSWORD 'changeit';
create databases postgres
CREATE USER postgresql WITH PASSWORD 'changeit'