У меня есть следующие настройки:
- Частное облако OpenStack - доступен веб-интерфейс пользователя (Horizon)
(API ограничен, но, возможно, я смогу получить доступ) - Я использовал CoreOS с настройкой одного мастера и трех узлов
- Ресурсы стандартизированы (по умолчанию OpenStack)
- Я следовал руководству по началу работы для CoreOS (т.е. я использую YAML по умолчанию для облачной конфигурации) в GitHub
Когда я читаю расширения, такие как Web UI (kube-ui) можно добавить как Add-On - который я добавил (только 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