当我尝试在Ubuntu21.10上使用Gitea和microk8s时,我看到了这个错误:
$ k logs gitea-0 -c configure-gitea
Wait for database to become avialable...
gitea-postgresql (10.152.183.227:5432) open
...
2021/11/20 05:49:40 ...om/urfave/cli/app.go:277:Run() [I] PING DATABASE postgres
2021/11/20 05:49:45 cmd/migrate.go:38:runMigrate() [F] Failed to initialize ORM engine: dial tcp: lookup gitea-postgresql.default.svc.cluster.local: Try again我正在寻找一些线索,如何调试这请。
其他pod的运行情况似乎与预期一致:
$ k get pod -A
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system hostpath-provisioner-5c65fbdb4f-nfx7d 1/1 Running 0 11h
kube-system calico-node-h8tpk 1/1 Running 0 11h
kube-system calico-kube-controllers-f7868dd95-dpp8n 1/1 Running 0 11h
kube-system coredns-7f9c69c78c-cnpkj 1/1 Running 0 11h
default gitea-memcached-584956987c-zb8kp 1/1 Running 0 20s
default gitea-postgresql-0 1/1 Running 0 20s
default gitea-0 0/1 Init:1/2 1 20s服务没有达到预期,因为gitea-0没有启动:
$ k get svc -A
NAMESPACE NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
default kubernetes ClusterIP 10.152.183.1 <none> 443/TCP 11h
kube-system kube-dns ClusterIP 10.152.183.10 <none> 53/UDP,53/TCP,9153/TCP 11h
default gitea-postgresql-headless ClusterIP None <none> 5432/TCP 3m25s
default gitea-ssh ClusterIP None <none> 22/TCP 3m25s
default gitea-http ClusterIP None <none> 3000/TCP 3m25s
default gitea-memcached ClusterIP 10.152.183.15 <none> 11211/TCP 3m25s
default gitea-postgresql ClusterIP 10.152.183.227 <none> 5432/TCP 3m25s另请参阅:https://github.com/ubuntu/microk8s/issues/2741 https://gitea.com/gitea/helm-chart/issues/249
发布于 2021-11-21 10:43:45
我一直工作到我有下面的日志,特别是:
cmd/migrate.go:38:runMigrate() [F] Failed to initialize ORM engine: dial tcp: lookup gitea-postgresql.default.svc.cluster.local: Try again使用k cluster-info dump我看到:
[ERROR] plugin/errors: 2 gitea-postgresql.default.svc.cluster.local.cisco.com. A: read udp 10.1.147.194:56647->8.8.8.8:53: i/o timeout这导致我使用dig和8.8.8.8测试DNS。那次测试没有发现任何错误,因为DNS似乎工作正常。即便如此,DNS似乎也是可疑的。
因此,我尝试了microk8s enable storage dns:<IP address of DNS in lab>,而我之前只尝试了using microk8s storage dns。storage部分启用数据库所需的持久卷。
这里的关键部分是在使用microk8s启用DNS时的实验室DNS服务器IP地址参数。
https://stackoverflow.com/questions/70043590
复制相似问题