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'