我使用外部名称类型创建服务:
apiVersion: v1
kind: Service
metadata:
name: my-service
namespace: dev
spec:
externalName: google.com
ports:
- port: 80
protocol: TCP
targetPort: 80
sessionAffinity: None
type: ExternalName
Run Code Online (Sandbox Code Playgroud)
通过K8s 文档添加新端点:
apiVersion: v1
kind: Endpoints
metadata:
name: my-service
namespace: dev
subsets:
- addresses:
- ip: 172.217.20.206
ports:
- port: 80
protocol: TCP
Run Code Online (Sandbox Code Playgroud)
并尝试将其转发到我的本地主机:
kubectl port-forward -n dev svc/my-service 8080:80
Run Code Online (Sandbox Code Playgroud)
并得到错误:
错误:无法附加到 *v1.Service:服务“my-service”无效:服务是在没有选择器的情况下定义的
AFAIU,我按照文档完成了所有步骤,我错过了什么?或者K8s一般不提供端口转发externalName的能力?