我创建了一个类型为ExternalName的Kubernetes Service。我知道这个Service充当代理,将请求重定向到集群外部的外部Service。我能够创建Service,但无法使用curl访问(即返回500错误)。我想要了解这个ExternalName Kubernetes Service是如何工作的。
我创建了一个类型为ExternalName的Kubernetes Service。我知道这个Service充当代理,将请求重定向到集群外部的外部Service。我能够创建Service,但无法使用curl访问(即返回500错误)。我想要了解这个ExternalName Kubernetes Service是如何工作的。
类型为ExternalName
的服务与其他普通服务一样工作,但当您想要访问该服务名称时,它会返回具有在服务的externalName:
参数中提到的值的CNAME记录,而不是返回此服务的群集IP。
正如Kubernetes文档中所提到的示例:
kind: Service
apiVersion: v1
metadata:
name: my-service
spec:
type: ExternalName
externalName: my.database.example.com
当您想在命名空间中执行curl -v http://my-service
或curl -v http://my-service.default.svc.cluster.local
时(在此示例中为default),它将在DNS级别重定向到http://my.database.example.com
。curl -v my-service.<namespace>.svc.cluster.local
。 - Shubham