feat(day-03): add instructions for third day
This commit is contained in:
parent
843ec0b0f2
commit
5c75bb56c4
@ -29,6 +29,7 @@ kubectl 1.29.4
|
|||||||
|
|
||||||
* [dia-01][dia-01]: subindo primeiro _cluster_ com [`kind`][kind] e fazendo _deploy_ do primeiro `pod`
|
* [dia-01][dia-01]: subindo primeiro _cluster_ com [`kind`][kind] e fazendo _deploy_ do primeiro `pod`
|
||||||
* [dia-02][dia-02]: realizando _deploy_ de `pod` com múltiplos _containers_, definição de volume e limitação de recursos
|
* [dia-02][dia-02]: realizando _deploy_ de `pod` com múltiplos _containers_, definição de volume e limitação de recursos
|
||||||
|
* [dia-03][dia-03]: criando `namespace` e `deployment` em conjunto com estratégias de _rollout_
|
||||||
|
|
||||||
Pode ser seguido em no
|
Pode ser seguido em no
|
||||||
|
|
||||||
@ -37,3 +38,4 @@ Pode ser seguido em no
|
|||||||
[kind]: https://kind.sigs.k8s.io/
|
[kind]: https://kind.sigs.k8s.io/
|
||||||
[dia-01]: ./day-001/README.md
|
[dia-01]: ./day-001/README.md
|
||||||
[dia-02]: ./day-002/README.md
|
[dia-02]: ./day-002/README.md
|
||||||
|
[dia-03]: ./day-003/README.md
|
||||||
|
42
day-003/README.md
Normal file
42
day-003/README.md
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
# Descomplicando `kubernetes` - Dia 03
|
||||||
|
|
||||||
|
## Criar `namespace`
|
||||||
|
|
||||||
|
Podemos criar nosso primeiro `namespace` manualmente, usando o comando:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
kubectl create namespace <namespace-name>
|
||||||
|
```
|
||||||
|
|
||||||
|
Ou, a partir de um manifesto `yaml`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
kubectl apply -f <namespace-definition>.yml
|
||||||
|
```
|
||||||
|
|
||||||
|
No nosso _cluster_ criaremos o primeiro `namespace` utilizando o arquivo [`namespace.yml`][namespace-config].
|
||||||
|
|
||||||
|
## _Deploy_ do `nginx`
|
||||||
|
|
||||||
|
Além dos recursos de definição do `pod` vistos nos dias [01][day-001-pod] e
|
||||||
|
[02][day-002-pod]. Podemos definir detalhes adicionais usando o [`deployment.yml`][deployment-config].
|
||||||
|
|
||||||
|
O _deploy_ do `nginx` será feito usando o comando:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
kubectl apply -f deployment.yml
|
||||||
|
```
|
||||||
|
|
||||||
|
Nele definimos o:
|
||||||
|
|
||||||
|
1. Número de _replicas_ do serviço
|
||||||
|
2. Estrategia de _rollout_ do _deploy_
|
||||||
|
3. Detalhes dos _containers_ a serem executados
|
||||||
|
|
||||||
|
[Voltar para o `README`][readme]
|
||||||
|
|
||||||
|
[namespace-config]: ./namespace.yml
|
||||||
|
[day-001-pod]: ../day-001/pod.yml
|
||||||
|
[day-002-pod]: ../day-002/pod.yml
|
||||||
|
[deployment-config]: ./deployment.yml
|
||||||
|
[readme]: ../README.md
|
26
day-003/created-deployment.yml
Normal file
26
day-003/created-deployment.yml
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
---
|
||||||
|
# Created with:
|
||||||
|
# kubectl create deployment nginx-create-deployment --image nginx --replicas 3 --dry-run=client -o yaml > created-deployment.yml
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
creationTimestamp: null
|
||||||
|
labels:
|
||||||
|
app: nginx-create-deployment
|
||||||
|
name: nginx-create-deployment
|
||||||
|
spec:
|
||||||
|
replicas: 3
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: nginx-create-deployment
|
||||||
|
strategy: {}
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
creationTimestamp: null
|
||||||
|
labels:
|
||||||
|
app: nginx-create-deployment
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- image: nginx
|
||||||
|
name: nginx
|
||||||
|
resources: {}
|
35
day-003/deployment.yml
Normal file
35
day-003/deployment.yml
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
---
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: nxing-deployment
|
||||||
|
minion: banana
|
||||||
|
name: nginx-deployment
|
||||||
|
namespace: application
|
||||||
|
spec:
|
||||||
|
replicas: 30
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: nginx-deployment
|
||||||
|
strategy:
|
||||||
|
# type: Recreate
|
||||||
|
type: RollingUpdate
|
||||||
|
rollingUpdate:
|
||||||
|
maxSurge: 25%
|
||||||
|
maxUnavailable: 25%
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: nginx-deployment
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- image: 'nginx:1.21.0'
|
||||||
|
name: server
|
||||||
|
resources:
|
||||||
|
limits:
|
||||||
|
cpu: '0.5'
|
||||||
|
memory: '256Mi'
|
||||||
|
requests:
|
||||||
|
cpu: '0.3'
|
||||||
|
memory: '64Mi'
|
5
day-003/namespace.yml
Normal file
5
day-003/namespace.yml
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Namespace
|
||||||
|
metadata:
|
||||||
|
name: application
|
Loading…
x
Reference in New Issue
Block a user