k8s~ExternalName的使用

我可以不吃啊  金牌会员 | 2023-11-16 07:49:59 | 来自手机 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 866|帖子 866|积分 2598

在Kubernetes中,Service资源的type字段有多种选项,其中之一是ExternalName。ExternalName类型的服务用于将外部服务引入到Kubernetes集群中,通常会将外部服务的域名映射到Kubernetes集群中的一个DNS名称。
ExternalName服务类型不涉及端口映射或负载均衡。它只是一个DNS别名,将Kubernetes内部的服务名称映射到一个外部域名,而不更改端口号。这对于需要在Kubernetes集群内部引用外部服务的情况非常有用,但它不涉及端口的映射。
这是一个示例ExternalName服务的YAML配置:
  1. apiVersion: v1
  2. kind: Service
  3. metadata:
  4.   name: my-external-service
  5. spec:
  6.   type: ExternalName
  7.   externalName: example.com  # 这里是外部域名
复制代码
在这个示例中,my-external-service是一个ExternalName服务,它将example.com映射到Kubernetes集群中,但没有更改端口。你可以在Kubernetes内部使用my-external-service来访问example.com,但端口将保持不变。如果外部服务使用非标准端口,你可能需要在访问时明确指定端口号。
要支持域名和端口的形式,你需要考虑使用其他服务类型,例如NodePort或LoadBalancer,它们可以通过端口映射和负载均衡来处理外部服务的访问。
解析到example.com的8080端口

如果外部服务的端口不是标准的80端口,你可以在Service配置中使用端口字段来指定端口号。以下是一个示例,演示如何指定非80端口的ExternalName服务:
  1. apiVersion: v1
  2. kind: Service
  3. metadata:
  4.   name: my-external-service
  5. spec:
  6.   type: ExternalName
  7.   externalName: example.com  # 这里是外部域名  ports:    - name: http      port: 8080  # 这里是外部服务的端口号
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

我可以不吃啊

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表