Como instalar Kubernetes no Ubuntu 20.04 fossa focal linux
- 1705
- 551
- Howard Fritsch
Kubernetes está liderando software em orquestração de contêineres. Kubernetes funciona gerenciando clusters, o que é simplesmente um conjunto de hosts destinados a executar aplicativos de contêineres. Para ter um cluster de Kubernetes, você precisa de um mínimo de dois nós - um nó mestre e a Nó do trabalhador. Obviamente, você pode expandir o cluster adicionando quantos nós do trabalhador necessário.
Neste guia, vamos implantar um cluster Kubernetes composto por dois nós, ambos com o Ubuntu 20.04 Fossa focal. Ter dois nós em nosso cluster é a configuração mais básica possível, mas você poderá escalar essa configuração e adicionar mais nós, se desejar.
Neste tutorial, você aprenderá:
- Como instalar o Docker
- Como instalar Kubernetes
- Como configurar um nó de mestre e trabalhador
- Como ingressar em um nó de trabalhador para um cluster de Kubernetes
- Como implantar o nginx (ou qualquer aplicativo de contêiner) em um cluster Kubernetes
Categoria | Requisitos, convenções ou versão de software usada |
---|---|
Sistema | Ubuntu instalado 20.04 ou Ubuntu atualizado 20.04 Fossa focal |
Programas | Kubernetes |
Outro | Acesso privilegiado ao seu sistema Linux como raiz ou através do sudo comando. |
Convenções | # - requer que os comandos Linux sejam executados com privilégios root diretamente como usuário root ou por uso de sudo comando$ - Requer que os comandos do Linux sejam executados como um usuário não privilegiado regular |
Cenário
Antes de mergulharmos, vamos estabelecer os detalhes do nosso cenário. Como mencionado acima, nosso cluster terá dois nós, e os dois nós estão executando o Ubuntu 20.04 Fossa focal. Um será o nó mestre e pode ser facilmente identificado com seu nome de host de Kubernetes-mestre
. O segundo nó será nosso Nó do trabalhador e ter um nome de host de Kubernetes-trabalhador
.
O nó mestre implantará um cluster de Kubernetes e o nó do trabalhador simplesmente se junta a ele. Como os clusters de Kubernetes são projetados para executar o software de contêiner, depois de colocar nosso cluster em funcionamento, vamos implantar um contêiner de servidor nginx como uma prova de conceito.
Instale o docker
Ambos os nós precisarão instalar o Docker, pois Kubernetes confia nele. Abra um terminal e digite os seguintes comandos no nó mestre e no trabalhador para instalar o Docker:
$ sudo apt update $ sudo apt install docker.io
Depois que o Docker terminar de instalar, use os seguintes Commmands para iniciar o serviço e para garantir que ele comece automaticamente após cada reinicialização:
$ sudo systemctl start docker $ sudo systemctl docker
Instale Kubernetes
Agora estamos prontos para instalar Kubernetes. Assim como todos os outros comandos até este ponto, verifique se você está fazendo isso nos dois nós. Em seu mestre e trabalhador Kubernetes, primeiro instale o apt-transport-https
pacote, que nos permitirá usar o HTTP e o HTTPS nos repositórios do Ubuntu. Agora também é um bom momento para instalar ondulação
já que precisaremos disso em um momento:
$ sudo apt install install-transport-https curl
Em seguida, adicione a chave de assinatura do Kubernetes aos dois sistemas:
$ CURL -S https: // pacotes.nuvem.Google.com/apt/doc/apt-key.gpg | Sudo Apt-Key Add
Em seguida, adicionaremos o Kubernetes Package Repository. Observe que no momento da redação deste artigo, Ubuntu 16.04 Xenial Xerus é o mais recente repositório Kubernetes disponível. Isso deve eventualmente ser substituído pelo Ubuntu 20.04 Fossa focal, e o seguinte comando pode ser atualizado a partir de acolhedor
para focal
.
$ sudo apt-add-repositor "Deb http: // apt.Kubernetes.io/ kubernetes-xenial Main "
Agora podemos instalar o Kubernetes:
$ sudo apt install kubeadm kubelet kubectl kubernetes-cni
Desative a memória de troca
Kubernetes se recusará a funcionar se o seu sistema estiver usando a memória de troca. Antes de prosseguir, verifique se o nó mestre e o trabalhador trocará a memória desativada com este comando:
$ sudo swapoff -a
Esse comando desativará a memória Swap até que seus sistemas sejam reiniciados; portanto, para fazer essa mudança persistir, use o Nano ou seu editor de texto favorito para abrir este arquivo:
$ sudo nano /etc /fstab
Dentro deste arquivo, comente o /swapfile
alinhar precedindo -o com um #
símbolo, como visto abaixo. Em seguida, feche este arquivo e salve as alterações.
Defina nomes de host
Em seguida, verifique se todos os seus nós têm um nome de host único. Em nosso cenário, estamos usando os nomes de hosts Kubernetes-mestre
e Kubernetes-trabalhador
para diferenciar facilmente nossos hosts e identificar seus papéis. Use o seguinte comando se precisar alterar seus nomes de host:
$ sudo hostnamectl set-hostname kubernetes-mestre
E no nó do trabalhador:
$ sudo hostnamectl set-hostname kubernetes-worker
Você não notará que o nome do host muda no terminal até abrir um novo. Por fim, verifique se todos os seus nós têm um tempo e data precisos, caso contrário, você terá problemas com certificados TLS inválidos.
Inicialize o servidor mestre de Kubernetes
Agora estamos prontos para inicializar o nó principal Kubernetes. Para fazer isso, insira o seguinte comando em seu nó mestre:
Kubernetes-mestre: ~ $ sudo kubeadm initKubernetes no Ubuntu 20.04 O nó mestre agora é inicializado
O nó Kubernetes mestre foi inicializado agora. A saída nos dá um KUBEADM JONE
comando que precisaremos usar mais tarde para se juntar aos nossos nó (s) trabalhadores ao (s) nó mestre. Então, tome nota deste comando para mais tarde.
A saída de cima também nos aconselha a executar vários comandos como usuário regular para começar a usar o cluster Kubernetes. Execute esses três comandos no nó principal:
Kubernetes -mestre: ~ $ mkdir -p $ home/.Kube Kubernetes -mestre: ~ $ sudo cp -i/etc/kubernetes/admin.conf $ home/.Kube/config Kubernetes -mestre: ~ $ sudo chown $ (id -u): $ (id -g) $ home/.kube/config
Implantar uma rede de pod
O próximo passo é implantar uma rede de pod. A rede POD é usada para comunicação entre hosts e é necessária para o cluster Kubernetes funcionar corretamente. Para isso, usaremos a rede de pods de flanela. Emita os dois comandos a seguir no nó mestre:
Kubernetes -mestre: ~ $ kubectl Aplicar -f https: // RAW.GithubUserContent.com/coreos/flannel/mestre/documentação/kube-flanel.YML Kubernetes -mestre: ~ $ kubectl Aplicar -f https: // RAW.GithubUserContent.com/coreos/flannel/mestre/documentação/k8s-manifests/kube-flanel-rbac.yml
Dependendo do seu ambiente, pode levar apenas alguns segundos ou um minuto para trazer toda a rede de flanela. Você pode usar o Kubectl
comando para confirmar que tudo está pronto e pronto:
Kubernetes-mestre: ~ $ KUBECTL GET PODS-All-NamesPacesA rede de pods é implantada com sucesso
Quando toda a coluna de status mostra 'Running', é uma indicação de que tudo acabou de implantar e bom ir para.
Junte -se ao cluster Kubernetes
Agora nosso cluster está pronto para que os nós do trabalhador se juntem. Use o KUBEADM JONE
Comando recuperado anteriormente da saída de inicialização do nó principal Kubernetes para se juntar ao seu cluster Kubernetes:
Kubernetes-Worker: ~ $ sudo kubeadm Junte-se 192.168.1.220: 6443 -TOKEN 1EXB8S.2T4K3B5SYFC3JFMO-Discovery-Token-CA-Cert-Hash SHA256: 72AD481CEE4918CF2314738419356C9A402FB609263ADADADAD48C13797D0CBBA2341Juntando -se ao nó do trabalhador ao cluster de Kubernetes
De volta ao seu nó principal Kubernetes, confirme que Kubernetes-trabalhador
agora faz parte do nosso cluster Kubernetes com este comando:
Kubernetes-mestre: ~ $ kubectl Get nósExibe quais nós estão atualmente no cluster de Kubernetes
Implantando um serviço no cluster Kubernetes
Agora estamos prontos para implantar um serviço no cluster Kubernetes. Em nosso exemplo, implantaremos um servidor nginx em nosso novo cluster como prova de conceito. Execute os dois comandos a seguir em seu nó mestre:
Kubernetes-mestre: ~ $ kubectl run --image = nginx nginx-server --port = 80 --env = "domain = cluster" kubernetes-mestre: ~ $ kubectl expõe implantação nginx-server --port = 80--name = nginx-http
Agora você deve ver um novo contêiner Nginx Docker implantado no nó do trabalhador:
Kubernetes-Worker: ~ $ sudo Docker PSO novo contêiner do Docker Nginx está em funcionamento no nó do trabalhador Kubernetes
Você pode ver uma lista em execução de todos os serviços disponíveis em execução em seu cluster com o seguinte comando, emitido do nó Kubernetes Maser:
Kubernetes-mestre: ~ $ kubectl Get SVCExibe o que os serviços de contêiner estão sendo executados no cluster Kubernetes
Conclusão
Neste artigo, aprendemos a configurar o Kubernetes para implantar aplicativos de contêiner no Ubuntu 20.04 Fossa focal. Configuramos um cluster básico composto por dois hosts, um mestre e um trabalhador, embora isso possa ser dimensionado para muitos mais nós do trabalhador, se necessário.
Vimos como configurar o Docker e outros pré-requisitos, além de implantar um servidor nginx em nosso novo cluster como uma prova de conceito. Obviamente, essa mesma configuração pode ser usada para implantar qualquer número de aplicativos de contêinerizados.
Tutoriais do Linux relacionados:
- Como instalar Kubernetes no Ubuntu 22.04 Jellyfish…
- Como criar um cluster Kubernetes
- Coisas para instalar no Ubuntu 20.04
- Comparando Linux Apache Prefork vs Worker MPMS
- Coisas para fazer depois de instalar o Ubuntu 20.04 fossa focal linux
- Para que são usados Kubernetes para?
- Como gerenciar clusters de Kubernetes com Kubectl
- Kubeadm vs minikube, prós e contras
- Kubernetes vs Docker, qual é a diferença?
- Como implantar o WordPress em um cluster Kubernetes