@@ -227,17 +227,12 @@ mają pewne ograniczenia:
227
227
228
228
- Większość metadanych o Podzie jest niezmienna. Na przykład, nie
229
229
można zmienić pól ` namespace ` , ` name ` , ` uid ` ani ` creationTimestamp ` .
230
- - Pole ` generation ` jest unikatowe. Zostanie automatycznie
231
- ustawione przez system w taki sposób, że nowe pody będą miały ustawioną
232
- wartość na 1, a każda aktualizacja pól w specyfikacji poda zwiększy
233
- ` generation ` o 1. Jeśli funkcja alfa PodObservedGenerationTracking
234
- jest włączona, ` status.observedGeneration ` poda będzie odzwierciedlał ` metadata.generation `
235
- poda w momencie, gdy status poda jest raportowany.
230
+
236
231
- Jeśli parametr ` metadata.deletionTimestamp ` jest
237
232
ustawiony, nie można dodać nowego wpisu do listy ` metadata.finalizers ` .
238
- - Aktualizacje Podów nie mogą zmieniać pól innych niż
239
- ` spec.containers[*].image ` , ` spec. initContainers[*].image` , ` spec.activeDeadlineSeconds ` lub ` spec.tolerations ` .
240
- Dla ` spec.tolerations ` można jedynie dodawać nowe wpisy.
233
+ - Aktualizacje Podów nie mogą zmieniać pól innych niż ` spec.containers[*].image ` ,
234
+ ` spec.initContainers[*].image ` , ` spec.activeDeadlineSeconds ` , ` spec.terminationGracePeriodSeconds ` ,
235
+ ` spec.tolerations ` lub ` spec.schedulingGates ` . Dla ` spec.tolerations ` można jedynie dodawać nowe wpisy.
241
236
- Podczas aktualizacji pola
242
237
` spec.activeDeadlineSeconds ` dozwolone są dwa typy aktualizacji:
243
238
@@ -260,6 +255,54 @@ Powyższe zasady aktualizacji dotyczą standardowych zmian w Podach, jednak niek
260
255
- ** Przypisanie Poda do węzła:** Podzasób ` binding ` umożliwia ustawienie ` spec.nodeName ` poda za pomocą żądania typu
261
256
` Binding ` . Zazwyczaj jest to używane tylko przez {{< glossary_tooltip text="kube-scheduler" term_id="kube-scheduler" >}}.
262
257
258
+ ### Generacja poda {#pod-generation}
259
+
260
+ - Pole ` metadata.generation ` jest unikatowe. Zostanie automatycznie ustawione przez
261
+ system w taki sposób, że nowe pody będą miały ustawioną wartość ` metadata.generation ` na
262
+ 1, a każda aktualizacja pól zmiennych w specyfikacji poda zwiększy ` metadata.generation ` o 1.
263
+
264
+ {{< feature-state feature_gate_name="PodObservedGenerationTracking" >}}
265
+
266
+ - Pole ` observedGeneration ` znajduje się w sekcji ` status ` obiektu typu Pod. Gdy aktywna
267
+ jest opcja ` PodObservedGenerationTracking ` , Kubelet aktualizuje ` status.observedGeneration ` ,
268
+ aby odzwierciedlało ono numer generacji (` metadata.generation ` ) poda w chwili raportowania
269
+ jego statusu. Dzięki temu możliwe jest powiązanie aktualnego stanu poda z wersją jego specyfikacji.
270
+
271
+ {{< note >}}
272
+ Pole ` status.observedGeneration ` jest zarządzane przez kubelet i zewnętrzne kontrolery ** nie powinny modyfikować** tego pola.
273
+ {{< /note >}}
274
+
275
+ Różne pola statusu mogą być powiązane z ` metadata.generation ` bieżącej pętli synchronizacji lub z
276
+ ` metadata.generation ` poprzedniej pętli synchronizacji. Kluczowa różnica polega na tym, czy zmiana w ` spec `
277
+ jest bezpośrednio odzwierciedlona w ` status ` , czy jest pośrednim wynikiem działającego procesu.
278
+
279
+ #### Bezpośrednie aktualizacje statusu {#direct-status-updates}
280
+
281
+ Dla pól statusu, gdzie przydzielona specyfikacja jest odzwierciedlona bezpośrednio, ` observedGeneration `
282
+ będzie powiązane z bieżącym ` metadata.generation ` (Generacja N).
283
+
284
+ To zachowanie dotyczy:
285
+
286
+ - ** Statusu zmiany przydzielonych zasobów** : Status operacji zmiany rozmiaru zasobu.
287
+ - ** Przydzielonych zasobów** : Zasoby przydzielone do Poda po zmianie rozmiaru.
288
+ - ** Kontenerów efemerycznych** : Gdy nowy tymczasowy kontener zostaje dodany i znajduje się w stanie ` Waiting ` .
289
+
290
+ #### Pośrednie aktualizacje statusu {#indirect-status-updates}
291
+
292
+ Dla pól statusu, które są pośrednim wynikiem wykonania specyfikacji, pole ` observedGeneration `
293
+ będzie powiązane z wartością z ` metadata.generation ` z poprzedniej pętli synchronizacji (Generacja N-1).
294
+
295
+ To zachowanie dotyczy:
296
+
297
+ - ** Obrazu Kontenera** : pole ` ContainerStatus.ImageID ` odzwierciedla obraz z
298
+ poprzedniej generacji do momentu pobrania nowego obrazu i zaktualizowania kontenera.
299
+ - ** Rzeczywiście używanych zasobów** : Podczas trwającej zmiany rozmiaru,
300
+ faktycznie wykorzystywane zasoby nadal odpowiadają żądaniu z poprzedniej generacji.
301
+ - ** Stanu kontenera** : Podczas trwającej zmiany rozmiaru z wymaganą
302
+ polityką restartu, stan kontenera odzwierciedla żądanie z poprzedniej generacji.
303
+ - ** activeDeadlineSeconds** i ** terminationGracePeriodSeconds** oraz ** deletionTimestamp** :
304
+ Zmiany w statusie poda wynikające z tych pól odnoszą się do specyfikacji z poprzedniej generacji.
305
+
263
306
## Udostępnianie zasobów i komunikacja {#resource-sharing-and-communication}
264
307
265
308
Pody umożliwiają udostępnianie danych i
0 commit comments