我使用服务名称有一个Spring Boot和PostgreSQL通信问题。
我使用Calico创建了一个用于网络的集群,如下所示:
sudo kubeadm init --pod-network-cidr=192.168.0.0/16 --apiserver-advertise-address=178.12.1.10
并使用上述命令生成的输出连接到worker节点。
当我部署pod和服务时,两者都在不同的子网上运行。我错过了什么吗?
kubectl get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
backend-service ClusterIP 10.110.149.43 <none> 8091/TCP 12s
postgres ClusterIP 10.108.1.52 <none> 5432/TCP 14m
未生成服务端点。
kubectl get endpoints
NAME ENDPOINTS AGE
backend-service 20m
postgres <none> 21m
kubectl get pods --all-namespaces
default backend-service-6dbd64ff4d-gqkq8 0/1 CrashLoopBackOff 12 57m
default postgres-7564bcc778-578fx 1/1 Running 0 57m
kube-system calico-etcd-b7wqf 1/1 Running 1 2d3h
kube-system calico-kube-controllers-74887d7bdf-wxhkd 1/1 Running 1 2d3h
kube-system calico-node-689b5 0/1 Running 0 47h
kube-system calico-node-smkq5 0/1 Running 1 47h
kube-system coredns-86c58d9df4-7ncdk 1/1 Running 1 2d3h
kube-system coredns-86c58d9df4-g4jcp 1/1 Running 1 2d3h
kube-system etcd-kmaster 1/1 Running 1 2d3h
kube-system kube-apiserver-kmaster 1/1 Running 1 2d3h
kube-system kube-controller-manager-kmaster 1/1 Running 3 2d3h
kube-system kube-proxy-njx5c 1/1 Running 1 2d3h
kube-system kube-proxy-pkxx5 1/1 Running 1 2d3h
kube-system kube-scheduler-kmaster 1/1 Running 3 2d3h
kube-system kubernetes-dashboard-57df4db6b-zcvcc 1/1 Running 1 2d3h
您需要检查由flag指定给API服务器的service-cluster-ip-range CIDR。 service cluster是从service-cluster-ip-range分配的。
您已使用--pod-network-cidr = 192.168.0.0 / 16初始化群集
请注意,pod-network-cidr范围用于将pod地址分配给pod。它与服务clusterIP不同
您应该检查api服务器启动参数中定义的service-cluster-ip-range