Tenho a seguinte configuração:
-
Nuvem OpenStack Privada - o̲n̲l̲y̲ Web UI (Horizon) está acessível
(API é restrita mas talvez eu consiga acesso)
- Eu usei CoreOS com uma configuração de um mestre e três nós
- Os recursos são padronizados (como padrão do OpenStack)
- Eu segui o guia de introdução ao CoreOS (ou seja, estou usando os YAMLs padrão para cloud-config fornecidos) em GitHub
Ao ler extensões como Web UI (kube-ui) podem ser adicionadas como Add-On - que eu adicionei (somente kube-ui).
Agora, se eu executar um teste como o simple-nginx, recebo a seguinte saída:
criando pods:
$ kubectl run my-nginx --image=nginx --replicas=2 --port=80
criando serviço:
$ 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
obtenha informações de serviço:
$ 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.
Eu posso acessar meu serviço de todos os (!) IP externos dos nós.
Minha pergunta agora é a seguinte:
Como pode acessar qualquer serviço iniciado éter com um subdomínio e, portanto, como eu posso definir essa configuração (por exemplo eu tenho domain.com como exemplo) ou poderia ser impresso em qual nó-IP eu tenho que acessar meu serviço (embora eu tenha apenas duas réplicas (?!))?
Para descrever meus pensamentos mais compreensíveis, quero dizer:
- determinado domínio: domain.com (apontando para o mestre)
- iniciar o serviço simple-nginx
O serviço - pode ser acessado com simple-nginx.domain.com