k8s endpoints k8s未配置选择器的service


service 其实是一个TCP/UDP 代理
不仅可以代理Pod也可以代理其他的非Pod资源,例如外网的数据库,或者其他的资源

创建未配置选择器的service, service 的对外端口是50000,默认类型是ClusterIP

apiVersion: v1
kind: Service
metadata:
  name: mynoselector-service
spec:
  ports:
  - protocol: TCP
    port: 50000

没有配置选择器的service ,endpoints为空
可以给这个service 添加或修改 endpoint

apiVersion: v1
kind: Endpoints
metadata:
  name: mynoselector-service
subsets:
  - addresses:
    - ip: 13.75.107.151
    ports:
    - port: 3306

注意: endpoints的metadata.name 和 service 的metadata.name 需要保持一直,否则无法关联,本事例的是mynoselector-service
通过kubectl get svc 查看新建service 的IP
例如svc的IP是10.105.69.186,可以通过IP 10.105.69.186 代理到外网的IP 13.75.107.151

docker run -it --rm mysql:5.7 mysql -h10.105.69.186 -uroot -P50000 -p

通过 kubectl get endpoints可以看到刚才新加到service上的endpoints设置


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM