[ad_1]
Minikube é uma distribuição mínima do Kubernetes projetada para uso em desenvolvimento local. Ele foi desenvolvido como parte do projeto Kubernetes e inclui implementações de todos os principais recursos do cluster.
O Minikube funciona em hosts Linux, Mac e Windows. Você pode usar contêineres ou um ambiente de máquina virtual para executar seu cluster e cargas de trabalho. Estes são todos os tempos de execução suportados:
- Estivador
- podman
- kvm
- Hyper-V
- hiperkit
- paralelo
- caixa virtual
- vmware
Certifique-se de ter uma dessas tecnologias instaladas antes de continuar com este guia. O processo de configuração do Minikube detectará automaticamente os tempos de execução disponíveis e aplicará uma configuração adequada. Mostraremos como concluir sua implementação e começar a usar o Minikube.
Instalando o Minikube
Neste guia, estamos nos concentrando em sistemas Linux x86. Se você estiver usando Windows, Mac ou uma plataforma de CPU diferente, consulte a documentação do Minikube para obter informações de configuração mais detalhadas. Após o procedimento de instalação inicial, o uso básico do Minikube é idêntico em todos os sistemas suportados.
Os usuários do Linux podem escolher entre um download binário direto ou um pacote Debian/RPM. Usaremos o download binário neste exemplo.
$ curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 $ sudo install minikube-linux-amd64 /usr/local/bin/minikube
O Minikube agora estará instalado e pronto para uso.
Iniciando seu cluster do Kubernetes
Inicie seu cluster Minikube com o minikube start
domínio:
$ minikube start minikube v1.25.2 on Ubuntu 20.04 Automatically selected the docker driver. Other choices: kvm2, ssh Starting control plane node minikube in cluster minikube Pulling base image ... Downloading Kubernetes v1.23.3 preload ...
O Minikube fará o download e iniciará automaticamente a versão mais recente do Kubernetes. Esse processo pode levar vários minutos para ser concluído. A saída do comando indicará o progresso e mostrará as ações que o Minikube executa. No exemplo acima, você pode ver que o controlador Docker foi selecionado para hospedar seu cluster. Consulte a documentação do driver Minikube se sua plataforma de contêiner ou pilha de virtualização não for detectada automaticamente.
Usando seu cluster com Kubectl
O Minikube modifica seu ambiente para que você possa se conectar ao cluster usando uma instalação existente do Kubectl. irá adicionar um minikube
contexto para o seu KUBECONFIG
arquivo apontando para o seu cluster Minikube.
O Minikube também inclui uma versão integrada do Kubectl que você pode acessar com o minikube kubectl
domínio. Isso é útil se você ainda não tiver o Kubectl instalado ou se o binário existente for uma versão diferente do cluster Minikube.
# Uses the Kubectl version that's bundled with Minikube $ minikube kubectl get pods
No restante deste guia, mostraremos o plano kubectl
comando e suponha que você está apontando para seu cluster Minikube. Você pode configurar um alias de shell para usar o pacote Kubectl do Minikube sem prefixá-lo com minikube
cada vez:
$ alias kubectl="minikube kubectl"
Com Minikube live e Kubectl disponíveis, agora você pode adicionar aplicativos ao seu cluster Kubernetes:
$ kubectl create deployment nginx --image=nginx:latest deployment.apps/nginx created $ kubectl expose deployment nginx --type=LoadBalancer --port=80 service/nginx exposed
a minikube service
O comando fornece a URL exposta de um serviço:
$ minikube service nginx --url http://192.168.49.2:31599
Cole o URL em seu navegador da web (ou execute o comando sem o --url
flag) para ver seu serviço.
Acesso ao painel do Kubernetes
O Minikube fornece o Kubernetes Dashboard como um recurso integrado opcional. execute o minikube dashboard
Comando para baixar os componentes do painel e iniciar a interface em uma nova guia do navegador.
Você pode usar o painel para gerenciar seus recursos e visualizar sua atividade. Mantenha o minikube dashboard
comando que é executado em seu terminal enquanto você interage com a placa. Termine o comando com a sequência de teclas Ctrl + C quando terminar.
Ativando o registro de imagens
O Minikube inclui um registro de imagem como um plugin opcional. Isso permite que você armazene suas imagens de contêiner no Minikube, disponibilizando-as para implantação em seu cluster.
Primeiro habilite o plugin de registro:
$ minikube addons enable registry
Em seguida, marque sua imagem para que ela faça referência ao registro do Minikube. O registro escuta na porta 5000 no endereço IP fornecido pelo minikube ip
domínio.
$ docker tag my-image:latest $(minikube ip):5000/my-image:latest
Antes de poder enviar, o Docker deve ser configurado para aceitar a URL como um registro inseguro. Adicione-o ao insecure-registries
campo dentro do seu /etc/docker/daemon.json
arquivo para o Docker para permitir o acesso HTTP.
{ "insecure-registries": ["192.168.49.2:5000"] }
Substitua o endereço IP pelo que mostra o seu minikube ip
domínio. Reinicie o Docker com o systemctl restart docker
domínio.
Agora você pode inserir sua imagem no registro do Minikube:
$ docker push $(minikube ip):5000/my-image:latest
Uma etapa final é necessária antes que os pods em seu cluster possam consumir essa imagem. O tempo de execução do contêiner Minikube também deve ser configurado para permitir acesso inseguro ao registro. Você pode habilitar isso incluindo o --insecure-registry
marca quando você corre minikube start
. O endereço IP deve se referir ao IP do cluster padrão da sua instalação do Minikube. Você pode obter isso executando kubectl get services
e olhando para CLUSTER-IP
Para o kubernetes
Serviço. Em seguida, pare o Minikube e reinicie-o com o sinalizador extra.
$ kubectl get service NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 63m $ minikube stop $ minikube start --insecure-registry 10.96.0.1/24
Alterar versão do Kubernetes
Por padrão, o Minikube usa a versão mais recente disponível do Kubernetes. Para mudar para uma versão específica, inclua o --kubernetes-version
marque quando você iniciar seu cluster:
$ minikube start --kubernetes-version=v1.23.0
Você pode executar vários clusters ao mesmo tempo, cada um executando diferentes versões do Kubernetes, criando vários perfis diferentes. a --profile
sinalizador seleciona o perfil a ser direcionado para um comando específico.
$ minikube start --profile v1.22 --kubernetes-version=v1.22.0 $ minikube start --profile v1.23 --kubernetes-version=v1.23.0 $ minikube --profile v1.22 kubectl get pods
Como usar vários nós
O Minikube suporta vários nós virtuais. Isso permite testar como seu aplicativo é dimensionado nos nós disponíveis sem implantar novo hardware físico.
Este exemplo cria um cluster com três nós:
$ minikube start --nodes 3
Você pode verificar se vários nós estão disponíveis listando-os com Kubectl:
$ kubectl get nodes NAME STATUS ROLES AGE VERSION minikube Ready control-plane,master 71m v1.23.3 minikube-m02 Ready <none> 71m v1.23.3 minikube-m03 Ready <none> 71m v1.23.3
Habilitando o acesso remoto
O Minikube não aceita tráfego de entrada por padrão. Ele é projetado para uso local e não é reforçado para atender a solicitações externas. Você ainda pode habilitar o acesso remoto a cargas de trabalho em seu cluster alterando o endereço de escuta do plano de controle. Só faça isso depois de avaliar completamente os riscos – sua rede ficará exposta ao mundo exterior.
$ minikube start --listen-address=0.0.0.0
O encaminhamento de porta é uma solução mais segura quando você precisa abrir o acesso a um serviço específico. Use Kubectl’s port-forward
comando para criar uma rota de uma porta de host para um de seus serviços:
$ kubectl port-forward service/nginx 8080:80
Já pode visitar localhost:8080
para acessar o serviço NGINX criado anteriormente neste guia. A porta 8080 em seu host está vinculada à porta 80 no serviço.
Remoção do Minikube
Uma das vantagens do Minikube é a facilidade de extração. Se você decidir que o Minikube não é para você, execute o delete
comando para remover tudo que você adicionou ao seu sistema:
$ minikube delete
Uma opção menos destrutiva é minikube stop
que interromperá seu cluster, mas deixará todos os recursos intactos. Você pode reiniciar seu cluster usando o minikube start
domínio.
conclusão
Minikube é uma distribuição independente do Kubernetes que usa contêineres ou virtualização para executar um cluster em sua máquina local. É compatível com o projeto Kubernetes upstream. O Minikube é uma implementação completa do Kubernetes que agrupa o painel do Kubernetes, suporte de rede, armazenamento persistente e tempos de execução de contêiner trocáveis.
Você pode obter mais informações sobre o Minikube na documentação oficial. Como alternativa, comece a usar os comandos familiares do Kubectl para gerenciar seu cluster e implantar novas cargas de trabalho. Agora você tem um ambiente local do Kubernetes totalmente funcional para criar e testar seus aplicativos.
[ad_2]