Guia Prático: Como Instalar e Configurar o K3D para Kubernetes

Guia Prático: Como Instalar e Configurar o K3D para Kubernetes

Este post tem como objetivo apresentar um guia para instalação e configuração do K3D. A solução independe de sistemas operacionais pois todas as tecnologias serão utlilizadas em containers.

Introdução

Montar um cluster kubernetes não é uma tarefa fácil, mais difícil ainda por necessidade de requisitos computacionais que poderiam custar muito caro na núvem. Isso pode ser um problema para profissionais que tem objetivo de desenvolver laboratórios para estudo e para homologação de soluções. Até mesmo soluções de cluster mais simples como o Minikube podem ser complicadas para utilizar na própria estação de trabalho pois consomem muito poder computacional. Mas isso pode ser solucionado com o K3D.

Não tem interesse de utilizar a núvem atualmente para poder realizar seus laboratórios ou tem interesse de utilizar a núvem nos modelos FreeTier para fazer seus laboratórios de estudo e testes? Vem com a gente!

Instalação

Para realizar a instalação e subir o lab você precisa dos softwares Docker, Kubectl e o prório K3D, será realizado a instalação num ambiente Ubuntu, porém segue abaixo os links para que você possa instalar em qualquer SO.

Instalação do Docker

1-Realizar a atualização do pacote apt e instalação dos softwares conforme abaixo:

sudo apt-get update
sudo apt-get install ca-certificates curl gnupg lsb-release -y

2-Adicionar a chave oficial do Docker conforme abaixo:

sudo mkdir -p /etc/apt/keyrings
 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg 

3-Setar o repositorio conforme abaixo:

echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null 

4-Realizar a atualização do pacote apt(para localizar os pacotes do docker) e instalação dos softwares conforme abaixo:

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y

Instalação do Kubectl

1-Fazer download da ultima Release conforme abaixo:

curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"

2-Fazer a instalação do binário do Kubectl conforme abaixo:

sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl</pre><h2>Instalação do K3D</h2><pre>1-Fazer a instalação do k3d utilizando o comando conforme abaixo:
 wget -q -O - https://raw.githubusercontent.com/k3d-io/k3d/main/install.sh | bash 

Comandos para realizar com o k3d

- Caso queira fazer single node

k3d cluster create mycluster

- Caso queira utilizar mais agents

k3d cluster create mycluster --servers 1 --agents 3

Nesse momento o cluster estará up e pronto para ser utilizado, vamos começar a utilizar o kubectl

Comandos para realizar com o Kubectl

-Para verificar os nodes do cluster utilize o comando abaixo

kubectl get nodes

 

-Para fazer um deploy de teste e verificar todo cluster você pode utilizar os comandos conforme abaixo:

kubectl create deployment hello-node --image=registry.k8s.io/e2e-test-images/agnhost:2.39 -- /agnhost netexec --http-port=8080
kubect get all

 

-Para encaminhar o Pod para o host da máquina que possui o K3d com post forward você pode fazer conforme abaixo:

kubectl port-forward deployment.apps/hello-node 8080:8080

 

Dessa forma você pode acessar a aplicação por navegador através do link http://localhost:8080

Para realizar a deleção do cluster

k3d cluster delete mycluster

Conclusão

Após seguir todas as instruções deste guia, você já possui um cluster de Kubernetes K3D em funcionamento e prontinho para ser utilizado.

O ambiente em questão é capaz de fazer a execução de Deployments com baixa necessidade de poder computacional. Será uma excelente solução que pode te acompanhar por um bom tempo e será uma grande aliada no desenvolvimento de laboratórios e de testes.

Você também pode utilizar a seção de comentários do blog da 4Linux para tirar dúvidas e postar opiniões!

Anterior Gerenciamento eficiente de clusters Kubernetes com a ferramenta K9S
Próxima Entenda o Git: O que é, como funciona e como começar a usar

About author

Jonathan Abrantes
Jonathan Abrantes 3 posts

Apaixonado por tecnologia, cultura DevOps e sempre querendo conhecer coisas novas.

View all posts by this author →

Você pode gostar também

DevOps

Configurando o Nexus como repositório do Helm: um guia passo a passo

Hoje, no blog da 4Linux, vamos falar sobre como podemos  configurar o Nexus para ser o repositório do  Helm. O que é Helm É uma ferramenta de empacotamento de software

DevOps

Criando imagens personalizadas com Packer para Google Cloud Platform

Olá pessoal, hoje no blog da 4Linux, vamos falar dessa ferramenta sensacional que é o Packer da HashiCorp. Bora lá. O que é o Packer O Packer é uma ferramenta

Infraestrutura TI

Recuperação de Dados em Tempo Real com PITR e BARMAN no Postgres

O backup PITR(Point-In-Time-Recovery) que é uma ferramenta que permite um arquivamento contínuo das transações ocorridas no banco, para que seja possível a recuperação de qualquer posição dos dados desde o