Este tópico descreve como instalar o controlador de ingresso NGINX no cluster
Kubernetes e expor as cargas de trabalho do IBM Control Desk fora do cluster Kubernetes.
Procedimento
- Instale o controlador de ingresso NGINX. Consulte Documentação NGINX para obter mais detalhes.
- Criar um novo arquivo de instalação de ingresso, nomeá-lo icd-ingress.yaml. Ele é usado para expor as cargas de trabalho IBM®
Control Desk fora do cluster. Consulte o conteúdo abaixo:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: icd-ingress
namespace: icd
annotations:
kubernetes.io/ingress.class: "nginx"
nginx.ingress.kubernetes.io/affinity: "cookie"
nginx.ingress.kubernetes.io/session-cookie-expires: "172800"
nginx.ingress.kubernetes.io/session-cookie-max-age: "172800"
nginx.ingress.kubernetes.io/ssl-redirect: "false"
nginx.ingress.kubernetes.io/affinity-mode: persistent
nginx.ingress.kubernetes.io/session-cookie-hash: sha1
nginx.ingress.kubernetes.io/secure-backends: "true"
nginx.ingress.kubernetes.io/backend-protocol: "HTTPS"
ingress.kubernetes.io/backend-protocol: "HTTPS"
kubernetes.io/tls-acme: "true"
spec:
tls:
- hosts:
- icd.ibm.com
secretName: icd-secret
rules:
- host: icd.ibm.com
http:
paths:
- path: /maximoapi
backend:
serviceName: icd-api
servicePort: 9080
- path: /cron
backend:
serviceName: icd-cron
servicePort: 9080
- path: /mea
backend:
serviceName: icd-mea
servicePort: 9080
- path: /
backend:
serviceName: icd-ui
servicePort: 9080
Aqui, icd.ibm.com é o nome do host e o protocolo http
usados para expor serviços diferentes como icd-ui na porta de serviço 9080. O nome do segredo
icd-secret contém o segredo do TLS.
- Aplicar o
icd-ingress usando o comando abaixo. Isso possibilitará o ingresso em seu cluster para cargas de trabalho IBM
Control Desk :
kubectl apply -f icd-ingress.yaml
- Da mesma forma, Crie um recurso ingresso para Portal de Serviços, nomeia-o como
sp-ingress.yaml. Esse ingresso seria necessário para acessar o front-end do
portal de serviços. Consulte o conteúdo abaixo:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: ssp-ingress
namespace: icd
annotations:
kubernetes.io/ingress.class: "nginx"
nginx.ingress.kubernetes.io/secure-backends: "true"
nginx.ingress.kubernetes.io/backend-protocol: "HTTPS"
ingress.kubernetes.io/backend-protocol: "HTTPS"
kubernetes.io/tls-acme: "true"
spec:
tls:
- hosts:
- ssp.ibm.com
secretName: icd-secret
rules:
- host: ssp.ibm.com
http:
paths:
- path: /
backend:
serviceName: icd-ssp
servicePort: 3000
Aqui, ssp.ibm.com é o nome do host e o protocolo http é
usado para expor serviços diferentes como icd-ssp na porta de serviço 3000. O nome do segredo
icd-secret contém o segredo do TLS.
- Aplicar o
ssp-ingress usando o comando abaixo:
kubectl apply -f sp-ingress.yaml
Resultados
Após ativar as etapas acima, o ingresso é ativado na configuração do Kubernetes. IBM
Control Desk e as interfaces de usuário do Service Portal podem ser acessadas usando ingresso.Nota: As entradas para icd.ibm.com e ssp.ibm.com com os endereços IP dos nós do trabalhador são necessárias para serem adicionadas no arquivo hosts da máquina para resolver nomes de hostnames.