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

所属团队号:
相关资源
字节跳动 NoSQL 的实践与探索
随着 NoSQL 的蓬勃发展越来越多的数据存储在了 NoSQL 系统中,并且 NoSQL 和 RDBMS 的界限越来越模糊,各种不同的专用 NoSQL 系统不停涌现,各具特色,形态不一。本次主要分享字节跳动内部和火山引擎 NoSQL 的实践,希望能够给大家一定的启发。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论