Escolar Documentos
Profissional Documentos
Cultura Documentos
Tutoriais
1: Olá, Minikube!
2: Aprenda as noções básicas do Kubernetes
2.1: Crie um Cluster
2.1.1: Usando Minikube para criar um cluster
2.1.2: Tutorial interativo - Criando um cluster
2.2: Implantar um aplicativo
2.2.1: Usando kubectl para criar uma implantação
2.2.2: Tutorial interativo - implantando um aplicativo
2.3: Explore seu aplicativo
2.3.1: Visualizando Pods e Nós (Nodes)
2.3.2: Tutorial Interativo - Explorando seu aplicativo
2.4: Exponha publicamente seu aplicativo
2.4.1: Utilizando um serviço para expor seu aplicativo
2.4.2: Tutorial Interativo - Expondo seu aplicativo
2.5: Escale seu aplicativo
2.5.1: Executando múltiplas instâncias de seu aplicativo
2.5.2: Tutorial Interativo - Escalando seu aplicativo
o da documentação contém tutoriais (em inglês). Um tutorial mostra como realizar um objetivo
plexo que uma simples tarefa (/docs/tasks/). Eles podem ser divididos em diversas seções,
com uma sequência de passos e etapas a serem seguidos.
niciar um tutorial, é interessante que vocẽ salve a página de Glossário
reference/glossary/) para futuras referências.
os
ernetes básico (/docs/tutorials/kubernetes-basics/) é um tutorial interativo que auxilia no
ndimento do ecossistema Kubernetes, bem como te permite testar algumas funcionalidades
cas do Kubernetes.
dução ao Kubernetes (edX) (https://www.edx.org/course/introduction-kubernetes-
foundationx-lfs158x#) é um curso gratuíto da edX que te guia no entendimento do
ernetes, seus conceitos, bem como na execução de tarefas mais simples.
Minikube! (/pt/docs/tutorials/hello-minikube/) é um "Hello World" que te permite testar
damente o Kubernetes em sua estação com o uso do Minikube
guração
figurando o Redis usando um ConfigMap (/docs/tutorials/configuration/configure-redis-using-
gmap/)
ações stateless
ndo um Endereço de IP externo para acessar uma aplicação no Cluster
cs/tutorials/stateless-application/expose-external-ip-address/)
mplo: Implantando a aplicação de Livro de Visitas (Guestbook) em PHP com Redis
cs/tutorials/stateless-application/guestbook/)
ações stateful
cos sobre StatefulSet (/docs/tutorials/stateful-application/basic-stateful-set/)
mplo: WordPress e MySQL com Volumes Persistentes (/docs/tutorials/stateful-
cation/mysql-wordpress-persistent-volume/)
https://kubernetes.io/pt-br/docs/tutorials/_print/ 1/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
ers
Armor (/docs/tutorials/clusters/apparmor/)
omp (/docs/tutorials/clusters/seccomp/)
ços / "Services"
do IP de origem (/docs/tutorials/services/source-ip/)
mos passos
esejar escrever um tutorial, veja a página
Utilizando templates (/docs/home/contribute/page-
/)
para informações sobre o tipo de página e o formato a ser utilizado.
https://kubernetes.io/pt-br/docs/tutorials/_print/ 2/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
1 - Olá, Minikube!
Este tutorial mostra como executar uma aplicação exemplo no Kubernetes utilizando o
Minikube (https://minikube.sigs.k8s.io) e o Katacoda (https://www.katacoda.com). O Katacoda
disponibiliza um ambiente Kubernetes gratuito e acessível via navegador.
Nota: Você também consegue seguir os passos desse tutorial instalando o Minikube
localmente. Para instruções de instalação, acesse: iniciando com minikube
(https://minikube.sigs.k8s.io/docs/start/).
Objetivos
Instalar uma aplicação exemplo no minikube.
Executar a aplicação.
Visualizar os logs da aplicação.
minikube dashboard
Criando um Deployment
Um Pod (/docs/concepts/workloads/pods/) Kubernetes consiste em um ou mais contêineres
agrupados para fins de administração e gerenciamento de rede. O Pod desse tutorial possui
apenas um contêiner. Um Deployment (/docs/concepts/workloads/controllers/deployment/)
Kubernetes verifica a saúde do seu Pod e reinicia o contêiner do Pod caso o mesmo seja
finalizado. Deployments são a maneira recomendada de gerenciar a criação e escalonamento
dos Pods.
1. Usando o comando kubectl create para criar um Deployment que gerencia um Pod. O
Pod executa um contêiner baseado na imagem docker disponibilizada.
2. Visualizando o Deployment:
https://kubernetes.io/pt-br/docs/tutorials/_print/ 3/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
hello-node 1/1 1 1 1m
3. Visualizando o Pod:
Nota: Para mais informações sobre o comando kubectl , veja o kubectl overview
(/docs/reference/kubectl/overview/).
Criando um serviço
Por padrão, um Pod só é acessível utilizando o seu endereço IP interno no cluster
Kubernetes. Para dispobiblilizar o contêiner hello-node fora da rede virtual do Kubernetes,
você deve expor o Pod como um serviço (/docs/concepts/services-networking/service/)
Kubernetes.
1. Expondo o Pod usando o comando kubectl expose :
O parâmetro --type=LoadBalancer indica que você deseja expor o seu serviço fora do
cluster Kubernetes.
A aplicação dentro da imagem k8s.gcr.io/echoserver "escuta" apenas na porta TCP
8080. Se você usou
kubectl expose para expor uma porta diferente, os clientes não
conseguirão se conectar a essa outra porta.
2. Visualizando o serviço que você acabou de criar:
https://kubernetes.io/pt-br/docs/tutorials/_print/ 4/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
Isso abre uma janela do navegador, acessa o seu aplicativo e mostra o retorno da requisição.
addon-manager: enabled
dashboard: enabled
default-storageclass: enabled
efk: disabled
freshpod: disabled
gvisor: disabled
helm-tiller: disabled
ingress: disabled
ingress-dns: disabled
logviewer: disabled
metrics-server: disabled
nvidia-driver-installer: disabled
nvidia-gpu-device-plugin: disabled
registry: disabled
registry-creds: disabled
storage-provisioner: enabled
storage-provisioner-gluster: disabled
minikube stop
minikube delete
Próximos passos
Aprender mais sobre Deployment objects
(/docs/concepts/workloads/controllers/deployment/).
Aprender mais sobre Deploying applications (/docs/tasks/run-application/run-stateless-
application-deployment/).
Aprender mais sobre Service objects (/docs/concepts/services-networking/service/).
https://kubernetes.io/pt-br/docs/tutorials/_print/ 6/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
básicos do Kubernetes
https://kubernetes.io/pt-br/docs/tutorials/_print/ 7/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
https://kubernetes.io/pt-br/docs/tutorials/_print/ 8/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
o Kubernetes
coordena um cluster com alta disponibilidade de
Resumo:
s conectados para funcionar como uma única unidade.
As Cluster do Kubernetes
Kubernetes permitem implantar aplicativos em contêineres Minikube
sem amarrá-los especificamente as máquinas individuais.
desse novo modelo de implantação, os aplicativos precisam
os de uma forma que os desacoplem dos hosts individuais:
ser empacotados em contêineres. Os aplicativos em O Kubernetes é uma plataforma
o mais flexíveis e disponíveis do que nos modelos de de código aberto de nível de
nteriores, nos quais os aplicativos eram instalados produção que orquestra o
m máquinas específicas como pacotes profundamente agendamento e a execução de
host.
O Kubernetes automatiza a distribuição e o contêineres de aplicativos
de contêineres de aplicativos em um cluster de maneira dentro e entre clusters de
. O Kubernetes é uma plataforma de código aberto e está computador.
odução.
bernetes consiste em dois tipos de recursos:
a de gerenciamento (Control Plane) coordena o cluster
Nodes) são os nós de processamento que executam
s
ma de Cluster
Node
Control Plane
Node Processes
Kubernetes Cluster
https://kubernetes.io/pt-br/docs/tutorials/_print/ 10/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
Connect
ractive Environment
a Kubernetes cluster
r
minutes
Connect
ractive Environment
a Kubernetes cluster
r
minutes
https://kubernetes.io/pt-br/docs/tutorials/_print/ 11/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
Connect
ractive Environment
a Kubernetes cluster
r
minutes
Connect
ractive Environment
a Kubernetes cluster
r
minutes
https://kubernetes.io/pt-br/docs/tutorials/_print/ 12/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
Connect
ractive Environment
a Kubernetes cluster
r
minutes
Connect
ractive Environment
a Kubernetes cluster
r
minutes
ra o Módulo 2 › (/pt/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/)
https://kubernetes.io/pt-br/docs/tutorials/_print/ 13/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
ões do Kubernetes
u cluster Kubernetes estiver em execução você pode
Resumo:
eu aplicativo em contêiners nele.
Para fazer isso, você Deployments
ma configuração do tipo Deployment do Kubernetes. O Kubectl
efine como criar e
atualizar instâncias do seu aplicativo.
r um Deployment, o Master do Kubernetes
agenda as
plicativo incluídas nesse Deployment para ser executado
uais do Cluster. O tipo Deployment é
responsável por criar e
instâncias do aplicativo são criadas, um Controlador do
atualizar instâncias de seu
ployment monitora continuamente essas instâncias.
Se o
aplicativo
a uma instância ficar inativo ou for excluído, o controlador
t substituirá a instância por uma instância em outro nó no
rnece um mecanismo de autocorreção para lidar com
nutenção da máquina.
de pré-orquestração, os scripts de instalação costumavam
a iniciar aplicativos, mas não permitiam a recuperação de
na.
Ao criar suas instâncias de aplicativo e mantê-las em
e nós, as implantações do Kubernetes fornecem uma
ndamentalmente diferente para o gerenciamento de
Node
containerized app
Deployment
Control Plane
node processes
bernetes Cluster
Módulos5 (/docs/tutorials/kubernetes-basics/scale/scale-
cs/tutorials/kubernetes-basics/update/update-intro/) do
ica como você pode dimensionar e atualizar suas
https://kubernetes.io/pt-br/docs/tutorials/_print/ 15/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
Connect
ractive Environment
an app
r
minutes
scenario is to help you deploy your first app on Kubernetes using kubec
your application.
is a pre-configured Linux environment that can be used as a regular console (you can ty
xecute that command in the terminal.
Connect
ractive Environment
an app
r
minutes
scenario is to help you deploy your first app on Kubernetes using kubec
your application.
is a pre-configured Linux environment that can be used as a regular console (you can ty
xecute that command in the terminal.
https://kubernetes.io/pt-br/docs/tutorials/_print/ 16/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
Connect
ractive Environment
an app
r
minutes
scenario is to help you deploy your first app on Kubernetes using kubec
your application.
is a pre-configured Linux environment that can be used as a regular console (you can ty
xecute that command in the terminal.
Connect
ractive Environment
an app
r
minutes
scenario is to help you deploy your first app on Kubernetes using kubec
your application.
is a pre-configured Linux environment that can be used as a regular console (you can ty
xecute that command in the terminal.
https://kubernetes.io/pt-br/docs/tutorials/_print/ 17/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
Connect
ractive Environment
an app
r
minutes
scenario is to help you deploy your first app on Kubernetes using kubec
your application.
is a pre-configured Linux environment that can be used as a regular console (you can ty
xecute that command in the terminal.
Connect
ractive Environment
an app
r
minutes
scenario is to help you deploy your first app on Kubernetes using kubec
your application.
is a pre-configured Linux environment that can be used as a regular console (you can ty
xecute that command in the terminal.
ra o Módulo 3 › (/pt/docs/tutorials/kubernetes-basics/explore/explore-intro/)
https://kubernetes.io/pt-br/docs/tutorials/_print/ 18/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
https://kubernetes.io/pt-br/docs/tutorials/_print/ 19/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
https://kubernetes.io/pt-br/docs/tutorials/_print/ 20/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
Connect
ractive Environment
e your app
r
minutes
Connect
ractive Environment
e your app
r
minutes
https://kubernetes.io/pt-br/docs/tutorials/_print/ 21/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
Connect
ractive Environment
e your app
r
minutes
Connect
ractive Environment
e your app
r
minutes
https://kubernetes.io/pt-br/docs/tutorials/_print/ 22/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
Connect
ractive Environment
e your app
r
minutes
Connect
ractive Environment
e your app
r
minutes
ra o Módulo 4 › (/pt/docs/tutorials/kubernetes-basics/expose/expose-intro/)
https://kubernetes.io/pt-br/docs/tutorials/_print/ 23/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
al de Serviços Kubernetes
ncepts/workloads/pods/) Kubernetes são efêmeros. Na
Resumo
possuem um ciclo de vida Expõe Pods ao tráfego
s/workloads/pods/pod-lifecycle/). Quando um nó de externo
o morre, os Pods executados no nó também são perdidos. A Tráfego de
ReplicaSet balanceamento de
s/workloads/controllers/replicaset/) pode dinamicamente carga entre múltiplos
ter ao estado desejado através da criação de novos Pods Pods
ua aplicação em execução. Como outro exemplo, considere Uso de rótulos labels
e processamento de imagens com 3 réplicas. Estas réplicas
áveis; o sistema front-end não deveria se importar com as
nd ou ainda se um Pod é perdido ou recriado. Dito isso,
m cluster Kubernetes tem um único endereço IP, mesmo Um serviço Kubernetes é uma
o nó, então há necessidade de ter uma forma de reconciliar camada de abstração que
nte mudanças entre Pods de modo que sua aplicação define um conjunto lógico de
onando. Pods e habilita a exposição ao
Kubernetes é uma abstração que define um conjunto tráfego externo,
e uma política pela qual acessá-los. Serviços permitem um balanceamento de carga e
ento entre os Pods dependentes. Um serviço é definido descoberta de serviço para
preferencialmente) esses Pods.
s/configuration/overview/#general-configuration-tips) ou
dos objetos Kubernetes. O conjunto de Pods selecionados
é geralmente determinado por um seletor de rótulos
eja abaixo o motivo pelo qual você pode querer um Serviço
seletor selector na especificação spec ).
od tenha um endereço IP único, estes IPs não são expostos
ao cluster sem um Serviço. Serviços permitem que suas
ebam tráfego. Serviços podem ser expostos de formas
ecificando um tipo type na especificação do serviço
https://kubernetes.io/pt-br/docs/tutorials/_print/ 24/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
Rótulos
eia tráfego entre um conjunto de Pods. Serviço é a
permite pods morrerem e se replicarem no Kubernetes
sua aplicação. A descoberta e o roteamento entre Pods
tal como componentes frontend e backend dentro de uma
controlados por serviços Kubernetes.
onam um conjunto de Pods usando Rótulos e seletores
s/overview/working-with-objects/labels), um agrupamento
permite operações lógicas sobre objetos Kubernetes.
res de chave/valor anexados à objetos e podem ser usados
rmas:
objetos para desenvolvimento, teste e produção
tags de versão
r um objeto usando tags
https://kubernetes.io/pt-br/docs/tutorials/_print/ 25/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
Connect
ractive Environment
r
minutes
you will learn how to expose Kubernetes applications outside the cluste
w and apply labels to objects with the kubectl label command.
is a pre-configured Linux environment that can be used as a regular console (you can ty
xecute that command in the terminal.
Connect
ractive Environment
r
minutes
you will learn how to expose Kubernetes applications outside the cluste
w and apply labels to objects with the kubectl label command.
is a pre-configured Linux environment that can be used as a regular console (you can ty
xecute that command in the terminal.
https://kubernetes.io/pt-br/docs/tutorials/_print/ 26/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
Connect
ractive Environment
r
minutes
you will learn how to expose Kubernetes applications outside the cluste
w and apply labels to objects with the kubectl label command.
is a pre-configured Linux environment that can be used as a regular console (you can ty
xecute that command in the terminal.
Connect
ractive Environment
r
minutes
you will learn how to expose Kubernetes applications outside the cluste
w and apply labels to objects with the kubectl label command.
is a pre-configured Linux environment that can be used as a regular console (you can ty
xecute that command in the terminal.
https://kubernetes.io/pt-br/docs/tutorials/_print/ 27/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
Connect
ractive Environment
r
minutes
you will learn how to expose Kubernetes applications outside the cluste
w and apply labels to objects with the kubectl label command.
is a pre-configured Linux environment that can be used as a regular console (you can ty
xecute that command in the terminal.
Connect
ractive Environment
r
minutes
you will learn how to expose Kubernetes applications outside the cluste
w and apply labels to objects with the kubectl label command.
is a pre-configured Linux environment that can be used as a regular console (you can ty
xecute that command in the terminal.
ra o Módulo 5 › (/pt/docs/tutorials/kubernetes-basics/scale/scale-intro/)
https://kubernetes.io/pt-br/docs/tutorials/_print/ 28/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
uma aplicação
nteriores nós criamos um Deployment
Resumo:
s/workloads/controllers/deployment/), e então o Escalando um
blicamente através de um serviço (Service Deployment
s/services-networking/service/)). O Deployment criou
co Pod para executar nossa aplicação. Quando o tráfego
precisaremos escalar a aplicação para suportar a demanda
Você pode criar desde o início
um Deployment com múltiplas
nto é obtido pela mudança do número de réplicas em um
instâncias usando o parâmetro
--replicas para que o
kubectl crie o comando de
deployment
https://kubernetes.io/pt-br/docs/tutorials/_print/ 29/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
https://kubernetes.io/pt-br/docs/tutorials/_print/ 30/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
Connect
ractive Environment
p your app
r
minutes
Connect
ractive Environment
p your app
r
minutes
https://kubernetes.io/pt-br/docs/tutorials/_print/ 31/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
Connect
ractive Environment
p your app
r
minutes
Connect
ractive Environment
p your app
r
minutes
https://kubernetes.io/pt-br/docs/tutorials/_print/ 32/33
5/14/22, 11:44 AM Tutoriais | Kubernetes
Connect
ractive Environment
p your app
r
minutes
Connect
ractive Environment
p your app
r
minutes
ra o Módulo 6 › (/docs/tutorials/kubernetes-basics/update/update-intro/)
https://kubernetes.io/pt-br/docs/tutorials/_print/ 33/33