我有以下设置:
- 私有 OpenStack 云- o̲n̲l̲y̲ Web UI (Horizon) 可访问
(API 受到限制,但也许我可以访问) - 我使用CoreOS设置了一个主节点和三个节点
- 资源是标准化的(作为 OpenStack 的默认设置)
- 我遵循了GitHub 上的 CoreOS 入门指南(即我使用默认的 YAML 来提供云配置)
当我阅读诸如 Web UI (kube-ui) 之类的扩展时,可以将其添加为附加组件 - 我已添加(仅 kube-ui)。
现在,如果我运行诸如 simple-nginx 之类的测试,我会得到以下输出:
创建豆荚:
$ kubectl run my-nginx --image=nginx --replicas=2 --port=80
创建服务:
$ kubectl expose rc my-nginx --port=80 --type=LoadBalancer
NAME LABELS SELECTOR IP(S) PORT(S)
my-nginx run=my-nginx run=my-nginx 80/TCP
获取服务信息:
$ kubectl describe service my-nginx
Name: my-nginx
Namespace: default
Labels: run=my-nginx
Selector: run=my-nginx
Type: LoadBalancer
IP: 10.100.161.90
Port: <unnamed> 80/TCP
NodePort: <unnamed> 31170/TCP
Endpoints: 10.244.19.2:80,10.244.44.3:80
Session Affinity: None
No events.
我可以从节点的每个(!)外部 IP 访问我的服务。
我现在的问题如下:
如何使用子域访问任何已启动的服务以太网,因此如何设置此配置(例如,我有 domain.com 作为示例)或者它是否可以打印在我必须访问我的服务的节点 IP 上(尽管我有只有两个副本(?!))?
为了更容易理解地描述我的想法,我的意思是:
- 给定域:domain.com(指向主控)
- 启动服务simple-nginx
- 可以使用simple-nginx.domain.com访问服务