k8s中如何使用ExternalName

Kubernetes
问题描述

在Kubernetes中如何像访问内部服务那样访问外部服务。

问题分析

Kubernetes在service中提供了ExternalName字段,可以将集群外的服务映射到集群内。

问题解决

1.创建测试service

kind: Service
apiVersion: v1
metadata:
  name: ext-test
  namespace: default
spec:
  type: ExternalName
  externalName: httpbin.org
  ports:
  - name: http
    port: 80
    protocol: TCP

2.创建service并查看

$ kubectl apply -f externalName-service.yaml
$ kubectl get svc -n default|grep baidu
ext-baidu               ExternalName   <none>          baidu.com     <none>         1s

3.验证

$ kubectl exec -it <pod-name> -- bash -c "curl http://ext-test -I"
HTTP/1.1 200 OK
Date: Fri, 29 Apr 2022 07:21:47 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 9593
Connection: keep-alive
Server: gunicorn/19.9.0
Access-Control-Allow-Origin: *
Access-Control-Allow-Credentials: true
参考链接

https://kubernetes.io/docs/concepts/services-networking/service/#externalname 如果您有其他问题,欢迎您联系火山引擎技术支持服务

0
0
0
0
关于作者

文章

0

获赞

0

收藏

0

所属团队号:
相关资源
云原生可观测性技术的落地实践
云原生技术和理念在近几年成为了备受关注的话题。应用通过云原生改造,变得更动态、弹性,可以更好地利用云的弹性能力。但是动态、弹性的环境也给应用以及基础设施的观测带来了更大的挑战。本次分享主要介绍了云原生社区中可观测性相关的技术和工具,以及如何使用这些工具来完成对云原生环境的观测。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论