k8s service引用外部服务

需求

所有服务使用k8s部署,但是,mysql和redis这些中间件仍然使用物理机部署,导致配置文件中出现 很多IP地址加端口,这种配置一旦躲起来,有点繁琐;

解决方案

使用k8s的service代理外部方式,把ip地址和端口隐藏在service中统一配置,这样,配置文件中只需要引用service名字即可。

配置说明

apiVersion: v1
kind: Service
metadata:
managedFields:

  • apiVersion: v1
    manager: tke-apiserver
    operation: Update
    time: “2021-12-06T10:36:55Z”
    name: mysql
    namespace: default
    selfLink: /api/v1/namespaces/default/services/mysql
    spec:
    clusterIP: None
    ports:
  • name: mysql
    port: 3306
    protocol: TCP
    targetPort: 3306
    sessionAffinity: None
    type: ClusterIP
    status:
    loadBalancer: {}

apiVersion: v1
kind: Endpoints
metadata:
name: mysql
namespace: default
subsets:

  • addresses:
    • ip: 10.5.5.5
      ports:
    • name: mysql
      port: 3306
      protocol: TCP

由于是外部服务,所以service对应的endpoints没有具体的服务,只是指定具体的ip和端口;
注意:endpoints名称和service名称需要保持一致;

生成service之后,在配置文件中可以直接引用:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lixiaolinzq

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值