在前面我们介绍了如何在kubernetes中创建service。但是有一种情况,例如:
我们需要在集群内部使用外面的数据库,例如在阿里云买的rds。这时候这个rds他不是属于当前kubernetes集群里面的pod,他也不会有label,那怎么创建service对外提供访问呢?其实就是今天讲的手动创建endpoint。这个endpoint也是sercvice的一种。只是没有select:label。对于这种外部的访问,创建endpoint的示例如下:
apiVersion: v1 kind: Endpoints metadata: name: mysql subsets: - addresses: - ip: 192.0.2.42 ports: - port: 3306
区别如下:
1、这里的kind类型变成了Endpoints 2、下面直接填写的是外部的rds的连接和端口即可
但是这里要注意一下,这个的外部address地址有一些特殊的注意事项,如下:
1、Endpoint 中的 IP 地址不可以是 loopback(127.0.0.0/8 IPv4 或 ::1/128 IPv6),或 link-local(169.254.0.0/16 IPv4、224.0.0.0/24 IPv4 或 fe80::/64 IPv6) 2、Endpoint 中的 IP 地址不可以是集群中其他 Service 的 ClusterIP
还没有评论,来说两句吧...