Skip to content

Commit 42a2abb

Browse files
author
k0rventen
committed
[fr] translate task run-application/run-stateless-application-deployment.md
1 parent 7955eb6 commit 42a2abb

File tree

4 files changed

+207
-3
lines changed

4 files changed

+207
-3
lines changed
Lines changed: 166 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,166 @@
1+
---
2+
title: Exécuter une application stateless avec un Déploiement
3+
min-kubernetes-server-version: v1.9
4+
content_type: tutorial
5+
weight: 10
6+
---
7+
8+
<!-- overview -->
9+
10+
Cette page montre comment exécuter une application en utilisant une resource Deployment (déploiement) dans Kubernetes.
11+
12+
## {{% heading "objectives" %}}
13+
14+
- Créer un déploiement nginx.
15+
- Utiliser kubectl pour afficher des informations sur le déploiement.
16+
- Mettre à jour le déploiement.
17+
18+
## {{% heading "prerequisites" %}}
19+
20+
{{< include "task-tutorial-prereqs.md" >}} {{< version-check >}}
21+
22+
<!-- lessoncontent -->
23+
24+
## Création et exploration d'un déploiement nginx
25+
26+
Vous pouvez exécuter une application en créant un objet
27+
déploiement Kubernetes, et vous pouvez décrire un
28+
déploiement dans un fichier YAML. Par exemple,
29+
ce fichier YAML décrit un déploiement qui exécute l'image Docker nginx:1.14.2 :
30+
31+
{{< codenew file="application/deployment.yaml" >}}
32+
33+
1. Créez un déploiement basé sur ce fichier YAML:
34+
35+
```shell
36+
kubectl apply -f https://k8s.io/examples/application/deployment.yaml
37+
```
38+
39+
1. Affichez les informations du déploiement:
40+
41+
```shell
42+
kubectl describe deployment nginx-deployment
43+
```
44+
45+
Le résultat sera similaire à ceci :
46+
47+
```
48+
Name: nginx-deployment
49+
Namespace: default
50+
CreationTimestamp: Tue, 30 Aug 2016 18:11:37 -0700
51+
Labels: app=nginx
52+
Annotations: deployment.kubernetes.io/revision=1
53+
Selector: app=nginx
54+
Replicas: 2 desired | 2 updated | 2 total | 2 available | 0 unavailable
55+
StrategyType: RollingUpdate
56+
MinReadySeconds: 0
57+
RollingUpdateStrategy: 1 max unavailable, 1 max surge
58+
Pod Template:
59+
Labels: app=nginx
60+
Containers:
61+
nginx:
62+
Image: nginx:1.14.2
63+
Port: 80/TCP
64+
Environment: <none>
65+
Mounts: <none>
66+
Volumes: <none>
67+
Conditions:
68+
Type Status Reason
69+
---- ------ ------
70+
Available True MinimumReplicasAvailable
71+
Progressing True NewReplicaSetAvailable
72+
OldReplicaSets: <none>
73+
NewReplicaSet: nginx-deployment-1771418926 (2/2 replicas created)
74+
No events.
75+
```
76+
77+
1. Affichez les Pods créés par le déploiement :
78+
79+
```shell
80+
kubectl get pods -l app=nginx
81+
```
82+
83+
Le résultat sera similaire à ceci :
84+
85+
```
86+
NAME READY STATUS RESTARTS AGE
87+
nginx-deployment-1771418926-7o5ns 1/1 Running 0 16h
88+
nginx-deployment-1771418926-r18az 1/1 Running 0 16h
89+
```
90+
91+
1. Affichez les informations d'un Pod :
92+
93+
```shell
94+
kubectl describe pod <pod-name>
95+
```
96+
97+
où <pod-name> est le nom d'un de vos Pods.
98+
99+
## Mise à jour du déploiement
100+
101+
Vous pouvez mettre à jour le déploiement en appliquant un nouveau fichier YAML.
102+
Ce fichier YAML indique que le déploiement doit être mis à jour
103+
pour utiliser nginx 1.16.1.
104+
105+
{{< codenew file="application/deployment-update.yaml" >}}
106+
107+
1. Appliquez le nouveau fichier YAML :
108+
109+
```shell
110+
kubectl apply -f https://k8s.io/examples/application/deployment-update.yaml
111+
```
112+
113+
1. Regardez le déploiement créer de nouveaux pods et supprimer les anciens :
114+
115+
```shell
116+
kubectl get pods -l app=nginx
117+
```
118+
119+
## Mise à l'échelle de l'application en augmentant le nombre de réplicas
120+
121+
Vous pouvez augmenter le nombre de pods dans votre déploiement en appliquant un nouveau fichier YAML.
122+
Ce fichier YAML définit `replicas` à 4, ce qui spécifie que le déploiement devrait avoir quatre pods :
123+
124+
{{< codenew file="application/deployment-scale.yaml" >}}
125+
126+
1. Appliquez le nouveau fichier YAML :
127+
128+
```shell
129+
kubectl apply -f https://k8s.io/examples/application/deployment-scale.yaml
130+
```
131+
132+
1. Vérifiez que le déploiement a quatre pods:
133+
134+
```shell
135+
kubectl get pods -l app=nginx
136+
```
137+
138+
Le résultat sera similaire à ceci :
139+
140+
```
141+
NAME READY STATUS RESTARTS AGE
142+
nginx-deployment-148880595-4zdqq 1/1 Running 0 25s
143+
nginx-deployment-148880595-6zgi1 1/1 Running 0 25s
144+
nginx-deployment-148880595-fxcez 1/1 Running 0 2m
145+
nginx-deployment-148880595-rwovn 1/1 Running 0 2m
146+
```
147+
148+
## Suppression d'un déploiement
149+
150+
Supprimez le déploiement avec son nom :
151+
152+
```shell
153+
kubectl delete deployment nginx-deployment
154+
```
155+
156+
## ReplicationControllers -- méthode obsolète
157+
158+
La méthode préférée pour créer une application répliquée consiste à utiliser un déploiement,
159+
qui utilise à son tour un ReplicaSet.
160+
Avant que le déploiement et le ReplicaSet ne soient
161+
ajoutés à Kubernetes, les applications répliquées étaient configurées
162+
à l'aide d'un [ReplicationController](/docs/concepts/workloads/controllers/replicationcontroller/).
163+
164+
## {{% heading "whatsnext" %}}
165+
166+
- En savoir plus sur les [Deployments](/docs/concepts/workloads/controllers/deployment/).
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
apiVersion: apps/v1
2+
kind: Deployment
3+
metadata:
4+
name: nginx-deployment
5+
spec:
6+
selector:
7+
matchLabels:
8+
app: nginx
9+
replicas: 4 # Update the replicas from 2 to 4
10+
template:
11+
metadata:
12+
labels:
13+
app: nginx
14+
spec:
15+
containers:
16+
- name: nginx
17+
image: nginx:1.16.1
18+
ports:
19+
- containerPort: 80
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
apiVersion: apps/v1
2+
kind: Deployment
3+
metadata:
4+
name: nginx-deployment
5+
spec:
6+
selector:
7+
matchLabels:
8+
app: nginx
9+
replicas: 2
10+
template:
11+
metadata:
12+
labels:
13+
app: nginx
14+
spec:
15+
containers:
16+
- name: nginx
17+
image: nginx:1.16.1 # Update the version of nginx from 1.14.2 to 1.16.1
18+
ports:
19+
- containerPort: 80
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,19 @@
1-
apiVersion: apps/v1 # apps/v1beta2를 사용하는 1.9.0보다 더 이전의 버전용
1+
apiVersion: apps/v1
22
kind: Deployment
33
metadata:
44
name: nginx-deployment
55
spec:
66
selector:
77
matchLabels:
88
app: nginx
9-
replicas: 2 # 템플릿에 매칭되는 파드 2개를 구동하는 디플로이먼트임
9+
replicas: 2 # tells deployment to run 2 pods matching the template
1010
template:
1111
metadata:
1212
labels:
1313
app: nginx
1414
spec:
1515
containers:
1616
- name: nginx
17-
image: nginx:1.7.9
17+
image: nginx:1.14.2
1818
ports:
1919
- containerPort: 80

0 commit comments

Comments
 (0)