Você precisa das seguintes ferramentas instaladas e configuradas corretamente em seu sistema antes de começar a seguir:
Depois de instalar essas ferramentas, você estará pronto para expor um serviço Kubernetes a um endereço IP externo.
Como posso tornar um serviço Kubernetes acessível a endereços IP externos?
Aqui está um guia passo a passo para expor um serviço Kubernetes a um endereço IP externo.
Etapa 1: Iniciar o Minikube
Vamos começar com o início do cluster Minikube. É importante iniciar o cluster Minikube toda vez que você precisar configurar algo ou executar seus aplicativos em seu ambiente Kubernetes. Iniciar o cluster Minikube garante que o cluster Minikube esteja em funcionamento e pronto para executar seu aplicativo. Portanto, basta usar o comando mostrado abaixo para iniciar o cluster Minikube:
kalsoom@kalsoom-virtualbox> start minikube
Etapa 2: Crie uma implantação
Neste guia, estamos expondo o serviço Kubernetes a um endereço IP externo usando uma implantação. Temos a configuração definida no Exemplo de Balancero de Carga.Arquivo Yaml que usaremos para criar uma implantação no cluster. Para criar a implantação, executaremos o seguinte comando:
kalsoom@kalsoom -virtualbox> kubectl Aplicar -f https: // k8s.IO/Exemplos/Service/Load-Balancer-Exemplo.Yaml
Como mostrado, uma implantação intitulada Hello-World foi gerada com sucesso.
Etapa 3: Verifique a implantação
Agora, vamos verificar que tipo de implantação foi criada e seus detalhes associados. Para verificar a implantação, será usado o comando abaixo:
kalsoom@kalsoom-virtualbox> kubectl Get Implements Hello-World
Este comando exibirá os detalhes da implantação, consulte a saída abaixo:
Como mostrado, a implantação Hello-World foi criada com um conjunto de réplicas contendo cinco pods. Cada um dos cinco pods executará o aplicativo Hello-World. No entanto, este comando mostrou um breve detalhe da implantação, se você deseja verificar mais detalhes da implantação, poderá usar o seguinte comando:
kalsoom@kalsoom-virtualbox> kubectl descrever implantações Hello-World
O comando 'Kubectl descreve' fornece uma descrição de detalhes da implantação que ajuda você a saber mais sobre a implantação. Consulte a saída fornecida abaixo para obter uma descrição detalhada da implantação:
Etapa 4: verifique os objetos REPLICASETS
Como sabemos, a implantação foi criada com um objeto REPLICASET. Então, vamos verificar os detalhes desses objetos. Para inspecionar os detalhes do ReplicaSet, podemos empregar o comando listado abaixo:
kalsoom@kalsoom-virtualbox> kubectl Get ReplicaSets
Como mostrado, os detalhes dos réplicas incluem: nome, desejado, atual, pronto e idade. Se você quiser saber mais sobre os réplicas da implantação, pode usar o seguinte comando:
kalsoom@kalsoom-virtualbox> kubectl descrever replicasets
Este comando fornecerá os detalhes aprofundados dos réplicas associados à implantação do Hello World, consulte a saída fornecida na captura de tela abaixo:
Etapa 5: Crie um objeto de serviço para expor a implantação
Agora, vamos expor a implantação usando um objeto de serviço. Como estamos expondo o serviço Kubernetes a um IP externo usando uma implantação, precisaremos de um objeto de serviço para expor a implantação.
kalsoom@kalsoom-virtualbox> kubectl expondo implantação hello-world --type = loadbalancer--name = my-service
Como você pode ver, existem duas bandeiras usadas com o comando, -Type = loadBalancer e -name = my -service. A primeira bandeira determina o tipo de balanceador e a segunda bandeira determina o nome do objeto de serviço. Agora, vamos nos referir à saída fornecida abaixo:
Como você pode ver na saída dada acima, um objeto de serviço chamado my-service foi exposto com sucesso.
Etapa 6: obtenha os detalhes do objeto de serviço
O próximo passo é ver os detalhes do objeto de serviço que criamos anteriormente. Podemos usar o comando fornecido abaixo para obter os detalhes do objeto de serviço:
kalsoom@kalsoom-virtualbox> kubectl Get Service My-Service
O comando 'kubectl get' é usado para obter acesso ao cluster, pod, nó ou qualquer coisa no ambiente Kubernetes. Estamos tentando obter os detalhes do objeto de serviço. Então, fornecemos a bandeira 'Serviços' seguida pelo nome do serviço de serviço my-service. Veja a saída abaixo:
Novamente, se você precisar saber mais sobre o objeto de serviço, sempre pode usar o comando 'Kubectl descrever'. O comando completo é fornecido abaixo para sua referência:
kalsoom@kalsoom-virtualbox> kubectl descrever serviços my-service
Depois de executar este comando, você obtém uma saída semelhante à da abaixo:
A partir da saída acima, você pode observar que o endereço IP é 10.110.159.180. A porta usada é 8080 e Nodeport é 30215, enquanto não há pontos de extremidade, e o endereço IP pertence à família IPv4.
Etapa 7: verifique o endereço do pod
Agora que sabemos os detalhes do objeto de serviço, podemos verificar o endereço das vagens nas quais eles estão atualmente executando o aplicativo Hello-World. O comando descrito abaixo simplifica isso:
kalsoom@kalsoom -virtualbox> kubectl get pods -Output = wide
Este comando nos mostrará o endereço dos pods que estão executando o aplicativo Hello-World, consulte a saída fornecida no instantâneo abaixo:
Então, é assim que expor os serviços Kubernetes a um endereço IP externo.
Etapa 8: Limpe
Depois de expor com sucesso os serviços Kubernetes a um endereço IP externo, certifique -se de excluir o objeto de serviço junto com a implantação. Isso pode ser feito com o seguinte comando:
kalsoom@kalsoom-virtualbox> kubectl exclation Services My-Service
Com este comando, o objeto de serviço será removido do cluster:
Agora, para excluir a implantação completa, incluindo os pods e replicasets, use o seguinte comando:
kalsoom@kalsoom-virtualbox> kubectl delete implantação Hello-World
Conclusão
Neste guia, aprendemos a expor os serviços Kubernetes em um endereço IP externo. Com a ajuda de um guia passo a passo, expusemos um serviço Kubernetes a um endereço IP externo usando uma implantação. Depois de expor o serviço Kubernetes a um endereço IP externo, também realizamos um processo de limpeza adequado.