k8s endpoints k8s未配置選擇器的service
阿新 • • 發佈:2020-12-18
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設定