我正在尝试配置本地环境以测试kubernetes。我选择使用kubeadm-dind-cluster和minikube。
我将数据库部署在kubernetes之外的一个容器上,我正试图在kubernetes上创建的pod内访问它。
为此,我创建了一个没有pod选择器和终结点的服务,如下所示:
apiVersion: v1
kind: Service
metadata:
name: db-service
spec:
ports:
- name: db-port
port: 1521
protocol: TCP
targetPort: 1521
apiVersion: v1
kind: Endpoints
metadata:
name: db-service
subsets:
- addresses:
- ip: 10.1.90.161
ports:
- name: db-port
port: 1521
protocol: TCP
服务创建成功,如下所示:
服务输出:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
db-service ClusterIP 10.111.130.231 <none> 1521/TCP 16m
端点输出:
NAME ENDPOINTS AGE
db-service 10.1.90.161:1521 19m
吊舱容器内的ping不起作用。
能告诉我我想念的东西吗?
答案 0 :(得分:0)
清单文件中的所有内容看起来都很不错。从Pod内部ping端点不是验证与外部数据库的连接性的有效方法。请通过telnet检查端口是否真的打开:
telnet 10.1.90.161 1521