GCP:使用 UBUNTU 作为操作系统时,kubectl exec/logs 无法容器化

GCP:使用 UBUNTU 作为操作系统时,kubectl exec/logs 无法容器化

我创建了一个 2 节点集群,操作系统为 UBUNTU。部署容器后,尝试 kubectl exec 或日志失败,并显示以下错误:-

服务器错误:后端拨号错误:当前未打开 SSH 隧道。目标是否能够接受用户的 ssh 密钥

请告诉我如何让它工作。节点只是默认池的一部分。我正尝试从具有集群凭据的笔记本电脑执行 kubectl exec。

默认防火墙的输出:

gcloud compute firewall-rules list --filter network=default
default-allow-http                        default  INGRESS    1000      tcp:80
default-allow-https                       default  INGRESS    1000      tcp:443
default-allow-icmp                        default  INGRESS    65534     icmp
default-allow-internal                    default  INGRESS    65534     tcp:0-65535,udp:0-65535,icmp
default-allow-rdp                         default  INGRESS    65534     tcp:3389
default-allow-ssh                         default  INGRESS    65534     tcp:22
gke-ks-gke-test-cluster-0725bebf-all      default  INGRESS    1000      ah,sctp,tcp,udp,icmp,esp
gke-ks-gke-test-cluster-0725bebf-ssh      default  INGRESS    1000      tcp:22
gke-ks-gke-test-cluster-0725bebf-vms      default  INGRESS    1000      icmp,tcp:1-65535,udp:1-65535

答案1

由于某种原因,尽管它在 32kb 的限制范围内,但在清理项目元数据后它已开始工作。

答案2

最初部署集群时,会创建多个防火墙规则以允许集群节点之间的内部通信。还会创建一条默认防火墙规则以允许来自内部网络的通信(名为 default-allow-internal)。您可能需要添加一条防火墙规则以允许您的 PC 连接到 K8S 主节点。

相关内容