You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/pt/docs/concepts/containers/container-lifecycle-hooks.md
+38-55Lines changed: 38 additions & 55 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -24,27 +24,16 @@ Existem dois _hooks_ que são expostos para os contêiners:
24
24
25
25
`PostStart`
26
26
27
-
This hook is executed immediately after a container is created.
28
-
However, there is no guarantee that the hook will execute before the container ENTRYPOINT.
29
-
No parameters are passed to the handler.
30
-
31
27
Este _hook_ é executado imediatamente após um contêiner ser criado.
32
28
Entretanto, não há garantia que o _hook_ será executado antes do ENTRYPOINT do contêiner.
33
29
Nenhum parâmetro é passado para o manipulador.
34
30
35
31
`PreStop`
36
32
37
-
The Pod's termination
38
-
grace period countdown begins before the `PreStop` hook is executed, so regardless of the outcome of
39
-
the handler, the container will eventually terminate within the Pod's termination grace period. No
40
-
parameters are passed to the handler.
41
-
42
-
A more detailed description of the termination behavior can be found in
43
-
[Termination of Pods](/docs/concepts/workloads/pods/pod-lifecycle/#pod-termination).
44
-
45
33
Esse _hook_ é chamado imediatamente antes de um contêiner ser encerrado devido a uma solicitação de API ou um gerenciamento de evento como liveness/startup probe failure, preemption, resource contention e outros.
46
-
Uma chamada ao _hook_`PreStop` falha se o contêiner já está em um estado finalizado ou concluído e o _hook_ deve ser concluído antes que o sinal TERM seja enviado para parar o contêiner.
34
+
Uma chamada ao _hook_`PreStop` falha se o contêiner já está em um estado finalizado ou concluído e o _hook_ deve ser concluído antes que o sinal TERM seja enviado para parar o contêiner. A contagem regressiva do período de tolerância de término do Pod começa antes que o _hook_`PreStop` seja executado, portanto, independentemente do resultado do manipulador, o contêiner será encerrado dentro do período de tolerância de encerramento do Pod. Nenhum parâmetro é passado para o manispulador.
47
35
36
+
Uma descrição mais detalhada do comportamento de término pode ser encontrada em [Término de Pods](/docs/concepts/workloads/pods/pod-lifecycle/#pod-termination).
48
37
49
38
### Implementações de manipulador de hook
50
39
@@ -63,47 +52,41 @@ As chamadas do manipulador do _hook_ são síncronas no contexto do Pod que cont
63
52
Isso significa que para um _hook_`PostStart`, o ENTRYPOINT do contêiner e o _hook_ disparam de forma assíncrona.
64
53
No entanto, se o _hook_ demorar muito para ser executado ou travar, o contêiner não consegue atingir o estado `running`.
65
54
66
-
This grace period applies to the total time it takes for
67
-
both the `PreStop` hook to execute and for the Container to stop normally. If, for example,
68
-
`terminationGracePeriodSeconds` is 60, and the hook takes 55 seconds to complete, and the Container
69
-
takes 10 seconds to stop normally after receiving the signal, then the Container will be killed
70
-
before it can stop normally, since `terminationGracePeriodSeconds` is less than the total time
71
-
(55+10) it takes for these two things to happen.
72
55
73
56
Os _hooks_`PreStop` não são executados de forma assíncrona a partir do sinal para parar o conêiner, o _hook_ precisa finalizar a sua execução antes que o sinal TERM possa ser enviado.
74
-
Se um _hook_`PreStop` travar durante a execução, a fase do Pod será `Terminating` e permanecerá até que o Pod seja morto após seu `terminationGracePeriodSeconds` expirar.
75
-
76
-
77
-
If either a `PostStart` or `PreStop` hook fails,
78
-
it kills the Container.
79
-
80
-
Users should make their hook handlers as lightweight as possible.
81
-
There are cases, however, when long running commands make sense,
82
-
such as when saving state prior to stopping a Container.
83
-
84
-
### Hook delivery guarantees
85
-
86
-
Hook delivery is intended to be *at least once*,
87
-
which means that a hook may be called multiple times for any given event,
88
-
such as for `PostStart` or `PreStop`.
89
-
It is up to the hook implementation to handle this correctly.
90
-
91
-
Generally, only single deliveries are made.
92
-
If, for example, an HTTP hook receiver is down and is unable to take traffic,
93
-
there is no attempt to resend.
94
-
In some rare cases, however, double delivery may occur.
95
-
For instance, if a kubelet restarts in the middle of sending a hook,
96
-
the hook might be resent after the kubelet comes back up.
97
-
98
-
### Debugging Hook handlers
99
-
100
-
The logs for a Hook handler are not exposed in Pod events.
101
-
If a handler fails for some reason, it broadcasts an event.
102
-
For `PostStart`, this is the `FailedPostStartHook` event,
103
-
and for `PreStop`, this is the `FailedPreStopHook` event.
104
-
You can see these events by running `kubectl describe pod <pod_name>`.
105
-
Here is some example output of events from running this command:
106
-
57
+
Se um _hook_`PreStop` travar durante a execução, a fase do Pod será `Terminating` e permanecerá até que o Pod seja morto após seu `terminationGracePeriodSeconds` expirar. Esse período de tolerância se aplica ao tempo total necessário
58
+
para o _hook_`PreStop`executar e para o contêiner parar normalmente.
59
+
Se por exemplo, o `terminationGracePeriodSeconds` é 60, e o _hook_ leva 55 segundos para ser concluído, e o contêiner leva 10 segundos para parar normalmente após receber o sinal, então o contêiner será morto antes que possa parar
60
+
normalmente, uma vez que o `terminationGracePeriodSeconds` é menor que o tempo total (55 + 10) que é necessário para que essas duas coisas aconteçam.
61
+
62
+
Se um _hook_`PostStart` ou `PreStop` falhar, ele mata o contêiner.
63
+
64
+
Os usuários devem tornar seus _hooks_ o mais leve possíveis.
65
+
Há casos, no entanto, em que comandos de longa duração fazem sentido, como ao salvar o estado
66
+
antes de parar um contêiner.
67
+
68
+
### Garantias de entrega de _hooks_
69
+
70
+
A entrega do _hook_ é destinada a acontecer *pelo menos uma vez*,
71
+
o que quer dizer que um _hook_ pode ser chamado várias vezes para qualquer evento,
72
+
como para `PostStart` ou `PreStop`.
73
+
Depende da implementação do _hook_ lidar com isso corretamente.
74
+
75
+
Geralmente, apenas entregas únicas são feitas.
76
+
Se, por exemplo, um receptor de _hook_ HTTP estiver inativo e não puder receber tráfego,
77
+
não há tentativa de reenviar.
78
+
Em alguns casos raros, no entanto, pode ocorrer uma entrega dupla.
79
+
Por exemplo, se um kubelet reiniciar no meio do envio de um _hook_, o _hook_ pode ser
80
+
reenviado depois que o kubelet voltar a funcionar.
81
+
82
+
### Depurando manipuladores de _hooks_
83
+
84
+
Os logs para um manipulador de _hook_ não expostos em eventos de Pod.
85
+
Se um manipulador falhar por algum motivo, ele transmitirá um evento.
86
+
Para `PostStart` é o evento `FailedPostStartHook` e para `PreStop` é o evento
87
+
`failedPreStopHook`.
88
+
Você pode ver esses eventos executando `kubectl describe pod <nome_do_pod>`.
89
+
Aqui está um exemplo de saída de eventos da execução deste comando:
107
90
```
108
91
Events:
109
92
FirstSeen LastSeen Count From SubObjectPath Type Reason Message
@@ -124,7 +107,7 @@ Events:
124
107
## {{% heading "whatsnext" %}}
125
108
126
109
127
-
*Learn more about the [Container environment](/docs/concepts/containers/container-environment/).
128
-
*Get hands-on experience
129
-
[attaching handlers to Container lifecycle events](/docs/tasks/configure-pod-container/attach-handler-lifecycle-event/).
110
+
*Saiba mais sobre o [Ambiente de contêiner](/docs/concepts/containers/container-environment/).
111
+
*Obtenha experiência prática
112
+
[anexando manipuladores a eventos de ciclo de vida do contêiner](/docs/tasks/configure-pod-container/attach-handler-lifecycle-event/).
0 commit comments