gpt4 book ai didi

kubernetes - 使用 K8S/Helm 安装 TimescaleDB 时出错 : MountVolume. 卷 "certificate"设置失败:未找到 secret "timescaledb-certificate"

转载 作者:行者123 更新时间:2023-12-02 12:10:45 28 4
gpt4 key购买 nike

我刚刚尝试在 Ubuntu 20.04 的 minikube 中安装带有 Helm 的 timescaleDB Single。

安装后通过:

helm install timescaledb timescaledb/timescaledb-single --namespace espace-client-v2

我收到消息:

➜  ~ helm install timescaledb timescaledb/timescaledb-single  --namespace espace-client-v2
NAME: timescaledb
LAST DEPLOYED: Fri Aug 7 17:17:59 2020
NAMESPACE: espace-client-v2
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
TimescaleDB can be accessed via port 5432 on the following DNS name from within your cluster:
timescaledb.espace-client-v2.svc.cluster.local

To get your password for superuser run:

# superuser password
PGPASSWORD_POSTGRES=$(kubectl get secret --namespace espace-client-v2 timescaledb-credentials -o jsonpath="{.data.PATRONI_SUPERUSER_PASSWORD}" | base64 --decode)

# admin password
PGPASSWORD_ADMIN=$(kubectl get secret --namespace espace-client-v2 timescaledb-credentials -o jsonpath="{.data.PATRONI_admin_PASSWORD}" | base64 --decode)

To connect to your database, chose one of these options:

1. Run a postgres pod and connect using the psql cli:
# login as superuser
kubectl run -i --tty --rm psql --image=postgres \
--env "PGPASSWORD=$PGPASSWORD_POSTGRES" \
--command -- psql -U postgres \
-h timescaledb.espace-client-v2.svc.cluster.local postgres

# login as admin
kubectl run -i --tty --rm psql --image=postgres \
--env "PGPASSWORD=$PGPASSWORD_ADMIN" \
--command -- psql -U admin \
-h timescaledb.espace-client-v2.svc.cluster.local postgres

2. Directly execute a psql session on the master node

MASTERPOD="$(kubectl get pod -o name --namespace espace-client-v2 -l release=timescaledb,role=master)"
kubectl exec -i --tty --namespace espace-client-v2 ${MASTERPOD} -- psql -U postgres

看来已经安装好了。

但是,当执行时:

     PGPASSWORD_POSTGRES=$(kubectl get secret --namespace espace-client-v2 timescaledb-credentials -o jsonpath="{.data.PATRONI_SUPERUSER_PASSWORD}" | base64 --decode)

Error from server (NotFound): secrets "timescaledb-credentials" not found


在那之后,我意识到 pod 甚至还没有创建,它给了我以下错误

MountVolume.SetUp failed for volume "certificate" : secret "timescaledb-certificate" not found
Unable to attach or mount volumes: unmounted volumes=[certificate], unattached volumes=[storage-volume wal-volume patroni-config timescaledb-scripts certificate socket-directory timescaledb-token-svqqf]: timed out waiting for the condition

我该怎么办?

最佳答案

我能做到。如果页面https://github.com/timescale/timescaledb-kubernetes没有详细说明安装过程,你可以去这里:

https://github.com/timescale/timescaledb-kubernetes/tree/master/charts/timescaledb-single

我必须使用 kustomize 来生成内容:

./generate_kustomization.sh my-release

然后生成几个文件:

credentials.conf  kustomization.yaml  pgbackrest.conf  timescaledbMap.yaml  tls.crt  tls.key

然后我做了:

kubectl kustomize ./

它生成了一个 k8s yml 文件,我将其保存为 timescaledbMap.yaml

最后,我做到了:

kubectl apply -f timescaledbMap.yaml

然后它创建了所有必要的 secret ,我可以安装图表

.希望对其他人有帮助。

关于kubernetes - 使用 K8S/Helm 安装 TimescaleDB 时出错 : MountVolume. 卷 "certificate"设置失败:未找到 secret "timescaledb-certificate",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63304715/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com