我在本地使用virtualbox设置了3节点K8S群集。当我试用入口时,它没有设置IP地址:
2017-11-11 17:00:49.015691 I | proto: duplicate proto type registered:
google.protobuf.Any
2017-11-11 17:00:49.016061 I | proto: duplicate proto type registered: google.protobuf.Duration
2017-11-11 17:00:49.016112 I | proto: duplicate proto type registered: google.protobuf.Timestamp
NAME HOSTS ADDRESS PORTS AGE
whale-ingress a.whale.hey,b.whale.hey 80 9m
入口:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: whale-ingress
spec:
rules:
- host: a.whale.hey
http:
paths:
- path: /
backend:
serviceName: whale-svc-a
servicePort: 80
- host: b.whale.hey
http:
paths:
- path: /
backend:
serviceName: whale-svc-b
servicePort: 80
我做错了吗?
答案 0 :(得分:1)
你在运行Ingress控制器吗?默认情况下,最小的Kubernetes群集没有Ingress控制器。如果没有,请尝试部署此控制器:https://github.com/kubernetes/ingress-nginx
答案 1 :(得分:0)
Ingress是一个仅提供配置的对象,而不是活动组件(如Pod或服务)。 正如coreypobrien所说,您需要部署一个Ingress控制器,它将读取您在集群中部署的入口并相应地更改其配置。
在此页面,您可以找到官方kubernetes入口控制器的文档,基于nginx https://github.com/kubernetes/ingress-nginx/blob/master/README.md
另一个选项是traefik ingress控制器:https://docs.traefik.io/user-guide/kubernetes/