Kubernetes Service 之 ExternalName
ExternalName 定义
ExternalName 用来定义在不同的命名空间想要引用其它命名空间 Service 的别名,使得本空间 Service 名字在本空间更有区分度。
ExternalName 的使用
apiVersion: v1
kind: Service
metadata:
name: service-nginx-external-name
namespace: test
spec:
type: ExternalName
externalName: service-nginx.default.svc.cluster.local
ports:
- name: http
port: 80
targetPort: 80
root@k8s-master1:~# kubectl get service -ntest
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service-nginx-external-name ExternalName <none> service-nginx.default.svc.cluster.local 80/TCP 13s
root@k8s-master1:~# kubectl exec deployment-nginx-6977747dd9-ddpc2 -- curl service-nginx-external-name.test.svc.cluster.local
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 139 100 139 0 0 37046 0 --:--:-- --:--:-- --:--:-- 46333
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Nginx Test</title>
</head>
<body>
Hello World
</body>
</html>