K8S集群内部pod访问外部mysql

集群内部访问外部数据库或者中间件一般采用endpoints与service关联方式映射。

#en配置
[root@k8s-master-01 k8s]# more mysql-endpoints.yaml 
apiVersion: v1
kind: Endpoints
metadata:
  name: mysql-dev
  namespace: default
subsets:
  - addresses:
    - ip: 192.168.71.129 #外部数据库地址
    ports:
    - port: 3306
#service配置
[root@k8s-master-01 k8s]# more mysql-service.yaml 
apiVersion: v1
kind: Service
metadata:
  name: mysql-dev
  namespace: default
spec:
  clusterIP: 10.96.2.128 #固定clusterIP
  ports:
  - port: 3306
    targetPort: 3306
    protocol: TCP
#创建testpod测试,需要在同一ns
[root@k8s-master-01 k8s]# kubectl run test-pod1 -it --image=busybox:1.28 --image-pull-policy=IfNotPresent
#通过svc的clusterIP访问数据库,以下提示说明数据库授权后可以正常连接。
/ # telnet 10.96.2.128 3306
GHost '192.168.71.134' is not allowed to connect to this MySQL serverConnection closed by foreign host

  • 1
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值