Skip to content

Commit 6863270

Browse files
committed
Add the content of content/pt/docs/concepts/containers/container-lifecycle-hooks.md
1 parent 3a71a00 commit 6863270

File tree

1 file changed

+38
-55
lines changed

1 file changed

+38
-55
lines changed

content/pt/docs/concepts/containers/container-lifecycle-hooks.md

Lines changed: 38 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -24,27 +24,16 @@ Existem dois _hooks_ que são expostos para os contêiners:
2424

2525
`PostStart`
2626

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-
3127
Este _hook_ é executado imediatamente após um contêiner ser criado.
3228
Entretanto, não há garantia que o _hook_ será executado antes do ENTRYPOINT do contêiner.
3329
Nenhum parâmetro é passado para o manipulador.
3430

3531
`PreStop`
3632

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-
4533
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.
4735

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).
4837

4938
### Implementações de manipulador de hook
5039

@@ -63,47 +52,41 @@ As chamadas do manipulador do _hook_ são síncronas no contexto do Pod que cont
6352
Isso significa que para um _hook_ `PostStart`, o ENTRYPOINT do contêiner e o _hook_ disparam de forma assíncrona.
6453
No entanto, se o _hook_ demorar muito para ser executado ou travar, o contêiner não consegue atingir o estado `running`.
6554

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.
7255

7356
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:
10790
```
10891
Events:
10992
FirstSeen LastSeen Count From SubObjectPath Type Reason Message
@@ -124,7 +107,7 @@ Events:
124107
## {{% heading "whatsnext" %}}
125108

126109

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/).
130113

0 commit comments

Comments
 (0)