具有外部名称curl的Kubernetes服务

具有外部名称curl的Kubernetes服务,kubernetes,kubectl,minikube,Kubernetes,Kubectl,Minikube,我创建了kubernetes-service.yaml文件,现在我想,在端口8081上,我的后端服务将在my.backend.com域下公开。我想检查它是否可以访问,但是我只在集群中提供它。我该怎么做?我不想对外公开服务,我只想将curl my.backend.com放在集群内以检查结果。有什么解决办法吗 apiVersion: v1 kind: Service metadata: name: backend-service labels: app: backend spec:

我创建了kubernetes-service.yaml文件,现在我想,在端口8081上,我的后端服务将在my.backend.com域下公开。我想检查它是否可以访问,但是我只在集群中提供它。我该怎么做?我不想对外公开服务,我只想将curl my.backend.com放在集群内以检查结果。有什么解决办法吗

apiVersion: v1
kind: Service
metadata:
  name: backend-service
  labels:
    app: backend
spec:
  type: ExternalName
  selector:
    app: backend
  ports:
    - protocol: TCP
      port: 8081
      targetPort: 8080
  externalName: my.backend.com

服务本身仅在集群内公开,但是,FQDN my.backend.com不由集群处理或控制。这可能是一个可公开访问的URL,因此您可以从任何地方进行卷曲。您必须以限制谁可以访问域的方式配置域


服务类型externalName是集群外部的,实际上只允许从集群内部将CNAME重定向到外部路径。我知道您想做什么,但这不是您在集群级别所做的更改。

因此,如果我理解正确,当我有前端和后端时,例如,我将exposed/project作为一个GET-on-backend,在前端,我会向它发出请求,它应该按预期工作,对吗?my.backend.com/project会工作,只要你在任何地方工作(在集群之外)。externalName服务只允许myservice.default.svc.cluster.local解析到my.backend.com。这基本上是一个CNAMEWell,我正在寻找kubectl exec-It POD_NAME命令,但是您的回答帮助我找到了它,谢谢:)