@@ -57,15 +57,15 @@ die gemeinsame Namespaces und Dateisystem-Volumes nutzen.
57
57
Normalerweise müssen keine Pods erzeugt werden, auch keine Singleton-Pods.
58
58
Stattdessen werden sie mit Workload-Ressourcen wie {{<glossary_tooltip
59
59
text="Deployment" term_id="deployment">}} oder {{<glossary_tooltip
60
- text="Job" term_id="job">}} erzeugt. Für Pods, die von einem Systemzustand
61
- abhängen, erwägen Sie die Nutzung von {{<glossary_tooltip
62
- text="StatefulSet" term_id="statefulset">}}-Ressourcen.
60
+ text="Job" term_id="job">}} erzeugt. Für Pods, die von einem Systemzustand
61
+ abhängen, ist die Nutzung von {{<glossary_tooltip text="StatefulSet"
62
+ term_id="statefulset">}}-Ressourcen zu erwägen .
63
63
64
64
Pods in einem Kubernetes-Cluster werden hauptsächlich auf zwei Arten verwendet:
65
65
66
66
* ** Pods, die einen einzelnen Container ausführen** . Das
67
67
"Ein-Container-per-Pod"-Modell ist der häufigste Kubernetes-Anwendungsfall. In
68
- diesem Fall können Sie sich einen Pod als einen Behälter vorstellen, der einen
68
+ diesem Fall kannst du dir einen einen Pod als einen Behälter vorstellen, der einen
69
69
einzelnen Container enthält; Kubernetes verwaltet die Pods anstatt die
70
70
Container direkt zu verwalten.
71
71
* ** Pods, in denen mehrere Container ausgeführt werden, die zusammenarbeiten
@@ -81,16 +81,15 @@ und eine kurzlebiges Netzwerk-Identität als eine Einheit zusammen.
81
81
{{< note >}}
82
82
Das Gruppieren mehrerer gemeinsam lokalisierter und gemeinsam verwalteter
83
83
Container in einem einzigen Pod ist ein relativ fortgeschrittener
84
- Anwendungsfall. Sie sollten diese Architektur nur in bestimmten Fällen
85
- verwenden, wenn Ihre Container stark voneinander abhängen.
84
+ Anwendungsfall. Du solltest diese Architektur nur in bestimmten Fällen
85
+ verwenden, wenn deine Container stark voneinander abhängen.
86
86
{{< /note >}}
87
87
88
88
Jeder Pod sollte eine einzelne Instanz einer gegebenen Anwendung ausführen. Wenn
89
- Sie Ihre Anwendung horizontal skalieren wollen (um mehr Instanzen auszuführen
90
- und dadurch mehr Gesamtressourcen bereitstellen), sollten Sie mehrere Pods
91
- verwenden,
92
- einen für jede Instanz. In Kubernetes wird dies typischerweise als Replikation
93
- bezeichnet.
89
+ du deine Anwendung horizontal skalieren willst (um mehr Instanzen auszuführen
90
+ und dadurch mehr Gesamtressourcen bereitstellen), solltest du mehrere Pods
91
+ verwenden, einen für jede Instanz.
92
+ In Kubernetes wird dies typischerweise als Replikation bezeichnet.
94
93
Replizierte Pods werden normalerweise als eine Gruppe durch eine
95
94
Workload-Ressource und deren
96
95
{{<glossary_tooltip text="Controller" term_id="controller">}} erstellt
@@ -109,7 +108,7 @@ virtuellen Server im Cluster befinden. Die Container können Ressourcen und
109
108
Abhängigkeiten gemeinsam nutzen, miteinander kommunizieren und
110
109
ferner koordinieren wann und wie sie beendet werden.
111
110
112
- Zum Beispiel könnten Sie einen Container haben, der als Webserver für Dateien in
111
+ Zum Beispiel könntest du einen Container haben, der als Webserver für Dateien in
113
112
einem gemeinsamen Volume arbeitet. Und ein separater "Sidecar" -Container
114
113
aktualisiert die Daten von einer externen Datenquelle, siehe folgenden
115
114
Abbildung:
@@ -129,7 +128,7 @@ enthaltenen Container bereit:
129
128
130
129
## Mit Pods arbeiten
131
130
132
- Sie werden selten einzelne Pods direkt in Kubernetes erstellen, selbst
131
+ Du wirst selten einzelne Pods direkt in Kubernetes erstellen, selbst
133
132
Singleton-Pods. Das liegt daran, dass Pods als relativ kurzlebige
134
133
Einweg-Einheiten konzipiert sind. Wann Ein Pod erstellt wird (entweder direkt
135
134
von Ihnen oder indirekt von einem
@@ -145,16 +144,16 @@ eines Pods verwechselt werden. Ein Pod ist kein Prozess, sondern eine Umgebung
145
144
zur Ausführung von Containern. Ein Pod bleibt bestehen bis er gelöscht wird.
146
145
{{< /note >}}
147
146
148
- Stellen Sie beim Erstellen des Manifests für ein Pod-Objekt sicher, dass der
147
+ Stelle beim Erstellen des Manifests für ein Pod-Objekt sicher, dass der
149
148
angegebene Name ein gültiger
150
149
[ DNS-Subdomain-Name] ( /docs/concepts/overview/working-with-objects/names#dns-subdomain-names )
151
150
ist.
152
151
153
152
### Pods und Controller
154
153
155
- Mit Workload-Ressourcen können Sie mehrere Pods erstellen und verwalten. Ein
154
+ Mit Workload-Ressourcen kannst du mehrere Pods erstellen und verwalten. Ein
156
155
Controller für die Ressource kümmert sich um Replikation, Roll-Out sowie
157
- automatische Heilung im Fall von Podfehlern . Wenn beispielsweise ein Node
156
+ automatische Wiederherstellung im Fall von versagenden Pods . Wenn beispielsweise ein Node
158
157
ausfällt, bemerkt ein Controller, dass die Pods auf dem Node nicht mehr laufen
159
158
und plant die Ausführung eines Ersatzpods auf einem funktionierenden Node.
160
159
Hier sind einige Beispiele für Workload-Ressourcen, die einen oder mehrere Pods
@@ -164,22 +163,22 @@ verwalten:
164
163
* {{< glossary_tooltip text="StatefulSet" term_id="statefulset" >}}
165
164
* {{< glossary_tooltip text="DaemonSet" term_id="daemonset" >}}
166
165
167
- ### Podvorlagen
166
+ ### Pod Vorlagen
168
167
169
168
Controller für
170
169
{{<glossary_tooltip text="Workload" term_id="workload">}}-Ressourcen
171
- erstellen Pods von einer _ Podvorlage _ und verwalten diese Pods für sie .
170
+ erstellen Pods von einer _ Pod Vorlage _ und verwalten diese Pods für dich .
172
171
173
- Podvorlagen sind Spezifikationen zum Erstellen von Pods und sind in
172
+ Pod Vorlagen sind Spezifikationen zum Erstellen von Pods und sind in
174
173
Workload-Ressourcen enthalten wie z. B.
175
174
[ Deployments] ( /docs/concepts/workloads/controllers/deployment/ ) ,
176
175
[ Jobs] ( /docs/concepts/workloads/controllers/job/ ) , and
177
176
[ DaemonSets] ( /docs/concepts/workloads/controllers/daemonset/ ) .
178
177
179
- Jeder Controller für eine Workload-Ressource verwendet die Podvorlage innerhalb
180
- des Workload-Objektes, um Pods zu erzeugen. Die Podvorlage ist Teil des
181
- gewünschten Zustands der Workload-Ressource, mit der Sie Ihre Anwendung
182
- ausgeführt haben .
178
+ Jeder Controller für eine Workload-Ressource verwendet die Pod Vorlage innerhalb
179
+ des Workload-Objektes, um Pods zu erzeugen. Die Pod Vorlage ist Teil des
180
+ gewünschten Zustands der Workload-Ressource, mit der du deine Anwendung
181
+ ausgeführt hast .
183
182
184
183
Das folgende Beispiel ist ein Manifest für einen einfachen Job mit einer
185
184
` Vorlage ` , die einen Container startet. Der Container in diesem Pod druckt
@@ -192,65 +191,65 @@ metadata:
192
191
name : hello
193
192
spec :
194
193
template :
195
- # Dies is the Podvorlage
194
+ # Dies is the Pod Vorlage
196
195
spec :
197
196
containers :
198
197
- name : hello
199
198
image : busybox
200
199
command : ['sh', '-c', 'echo "Hello, Kubernetes!" && sleep 3600']
201
200
restartPolicy : OnFailure
202
- # Die Podvorlage endet hier
201
+ # Die Pod Vorlage endet hier
203
202
```
204
- Das Ändern der Podvorlage oder der Wechsel zu einer neuen Podvorlage hat keine
205
- direkten Auswirkungen auf bereits existierende Pods. Wenn Sie die Podvorlage für
206
- eine Workload-Ressource ändern , dann muss diese Ressource die Ersatz-Pods
203
+ Das Ändern der Pod Vorlage oder der Wechsel zu einer neuen Pod Vorlage hat keine
204
+ direkten Auswirkungen auf bereits existierende Pods. Wenn du die Pod Vorlage für
205
+ eine Workload-Ressource änderst , dann muss diese Ressource die Ersatz-Pods
207
206
erstellen, welche die aktualisierte Vorlage verwenden.
208
207
209
208
Beispielsweise stellt der StatefulSet-Controller sicher, dass für jedes
210
- StatefulSet-Objekt die ausgeführten Pods mit der aktueller Podvorlage
211
- übereinstimmen. Wenn Sie das StatefulSet bearbeiten und die Vorlage ändern ,
209
+ StatefulSet-Objekt die ausgeführten Pods mit der aktueller Pod Vorlage
210
+ übereinstimmen. Wenn du das StatefulSet bearbeitest und die Vorlage änderst ,
212
211
beginnt das StatefulSet mit der Erstellung neuer Pods basierend auf der
213
212
aktualisierten Vorlage. Schließlich werden alle alten Pods durch neue Pods
214
213
ersetzt, und das Update ist abgeschlossen.
215
214
216
215
Jede Workload-Ressource implementiert eigenen Regeln für die Umsetzung von
217
- Änderungen der Podvorlage . Wenn Sie mehr über StatefulSet erfahren möchten ,
218
- lesen Sie die Seite
216
+ Änderungen der Pod Vorlage . Wenn du mehr über StatefulSet erfahren möchtest ,
217
+ dann lese die Seite
219
218
[ Update-Strategien] ( /docs/tutorials/stateful-application/basic-stateful-set/#updating-statefulsets )
220
219
im Tutorial StatefulSet Basics.
221
220
222
221
223
222
Auf Nodes beobachtet oder verwaltet das
224
223
{{< glossary_tooltip term_id="kubelet" text="Kubelet" >}}
225
- nicht direkt die Details zu Podvorlagen und Updates. Diese Details sind
224
+ nicht direkt die Details zu Pod Vorlagen und Updates. Diese Details sind
226
225
abstrahiert. Die Abstraktion und Trennung von Aufgaben vereinfacht die
227
226
Systemsemantik und ermöglicht so das Verhalten des Clusters zu ändern ohne
228
227
vorhandenen Code zu ändern.
229
228
230
229
## Pod Update und Austausch
231
230
232
231
Wie im vorherigen Abschnitt erwähnt, erstellt der Controller neue Pods basierend
233
- auf der aktualisierten Vorlage, wenn die Podvorlage für eine Workload-Ressource
232
+ auf der aktualisierten Vorlage, wenn die Pod Vorlage für eine Workload-Ressource
234
233
geändert wird anstatt die vorhandenen Pods zu aktualisieren oder zu patchen.
235
234
236
- Kubernetes hindert Sie nicht daran, Pods direkt zu verwalten. Es ist möglich,
235
+ Kubernetes hindert dich nicht daran, Pods direkt zu verwalten. Es ist möglich,
237
236
einige Felder eines laufenden Pods zu aktualisieren. Allerdings haben
238
237
Pod-Aktualisierungsvorgänge wie zum Beispiel
239
238
[ ` patch ` ] (/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#patch-pod-v1-core),
240
239
und
241
240
[ ` replace ` ] (/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#replace-pod-v1-core)
242
241
einige Einschränkungen:
243
242
244
- - Die meisten Metadaten zu einem Pod können nicht verändert werden. Zum Beispiel können
245
- Sie nicht die Felder ` namespace ` , ` name ` , ` uid ` , oder ` creationTimestamp `
243
+ - Die meisten Metadaten zu einem Pod können nicht verändert werden. Zum Beispiel kannst
244
+ du nicht die Felder ` namespace ` , ` name ` , ` uid ` , oder ` creationTimestamp `
246
245
ändern. Das ` generation ` -Feld muss eindeutig sein. Es werden nur Aktualisierungen
247
246
akzeptiert, die den Wert des Feldes inkrementieren.
248
247
- Wenn das Feld ` metadata.deletionTimestamp ` gesetzt ist, kann kein neuer
249
248
Eintrag zur Liste ` metadata.finalizers ` hinzugefügt werden.
250
249
- Pod-Updates dürfen keine Felder ändern, die Ausnahmen sind
251
250
` spec.containers[*].image ` ,
252
251
` spec.initContainers[*].image ` ,` spec.activeDeadlineSeconds ` oder
253
- ` spec.tolerations ` . Für ` spec.tolerations ` können Sie nur neue Einträge
252
+ ` spec.tolerations ` . Für ` spec.tolerations ` kannnst du nur neue Einträge
254
253
hinzufügen.
255
254
- Für ` spec.activeDeadlineSeconds ` sind nur zwei Änderungen erlaubt:
256
255
@@ -269,7 +268,7 @@ Ein Pod kann eine Reihe von gemeinsam genutzten Speicher-
269
268
Container im Pod können auf die gemeinsamen Volumes zugreifen und dadurch Daten
270
269
austauschen. Volumes ermöglichen auch, dass Daten ohne Verlust gespeichert
271
270
werden, falls einer der Container neu gestartet werden muss.
272
- Im Kapitel [ Datenspeicherung] ( /docs/concepts/storage/ ) finden Sie weitere
271
+ Im Kapitel [ Datenspeicherung] ( /docs/concepts/storage/ ) findest du weitere
273
272
Informationen, wie Kubernetes gemeinsam genutzten Speicher implementiert und
274
273
Pods zur Verfügung stellt.
275
274
@@ -321,7 +320,7 @@ _Statische Pods_ werden direkt vom Kubelet-Daemon auf einem bestimmten Node
321
320
verwaltet ohne dass sie vom
322
321
{{<glossary_tooltip text="API Server" term_id="kube-apiserver">}} überwacht
323
322
werden.
324
- .
323
+
325
324
Die meisten Pods werden von der Kontrollebene verwaltet (z. B.
326
325
{{< glossary_tooltip text="Deployment" term_id="deployment" >}}). Aber für
327
326
statische Pods überwacht das Kubelet jeden statischen Pod direkt (und startet
@@ -342,16 +341,16 @@ sichtbar sind jedoch von dort nicht gesteuert werden können.
342
341
343
342
## {{% heading "whatsnext" %}}
344
343
345
- * Erfahren Sie mehr über den
344
+ * Lerne den
346
345
[ Lebenszyklus eines Pods] ( /docs/concepts/workloads/pods/pod-lifecycle/ ) .
347
- * Erfahren Sie mehr über [ RuntimeClass] ( /docs/concepts/containers/runtime-class/ )
348
- und wie Sie damit verschiedene Pods mit unterschiedlichen
349
- Container-Laufzeitumgebungen konfigurieren können .
350
- * Lesen sie mehr über
346
+ * Lerne die [ RuntimeClass] ( /docs/concepts/containers/runtime-class/ )
347
+ und wie du damit verschiedene Pods mit unterschiedlichen
348
+ Container-Laufzeitumgebungen konfigurieren kannst .
349
+ * Lese
351
350
[ Restriktionen für die Verteilung von Pods] ( /docs/concepts/workloads/pods/pod-topology-spread-constraints/ ) .
352
- * Lesen sie mehr über sogenannte
353
- [ Pod-Disruption-Budgets ] ( /docs/concepts/workloads/pods/disruptions/ )
354
- und wie Sie diese verwenden können , um die Verfügbarkeit von Anwendungen bei
351
+ * Lese
352
+ [ Pod-Disruption-Budget ] ( /docs/concepts/workloads/pods/disruptions/ )
353
+ und wie du es verwenden kannst , um die Verfügbarkeit von Anwendungen bei
355
354
Störungen zu verwalten. Die
356
355
[ Pod] (/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#pod-v1-core)
357
356
-Objektdefinition beschreibt das Objekt im Detail.
@@ -362,7 +361,7 @@ Um den Hintergrund zu verstehen, warum Kubernetes eine gemeinsame Pod-API in
362
361
andere Ressourcen, wie z. B.
363
362
{{< glossary_tooltip text="StatefulSets" term_id="statefulset" >}}
364
363
oder {{< glossary_tooltip text="Deployments" term_id="deployment" >}} einbindet,
365
- können sie Artikel zu früheren Technologien lesen, unter anderem:
364
+ kannst du Artikel zu früheren Technologien lesen, unter anderem:
366
365
* [ Aurora] ( https://aurora.apache.org/documentation/latest/reference/configuration/#job-schema )
367
366
* [ Borg] ( https://research.google.com/pubs/pub43438.html )
368
367
* [ Marathon] ( https://mesosphere.github.io/marathon/docs/rest-api.html )
0 commit comments