재시작 구성하기

재시작 구성하기 (Configure restart)

노마드는 기본적으로 실행 중이거나 실행 예정인 노드에서 작업을 로컬로 재시작하려 해요. 이 기본값은 작업에 사용되는 스케줄러 유형(system, service, batch)에 따라 달라져요.

이 동작을 사용자 정의하려면 restart 스탠자를 사용해 태스크 그룹에 구성 가능한 옵션을 주석으로 지정할 수 있어요. 노마드는 제공된 interval 안에 실패한 작업을 최대 attempts 횟수까지 재시작해요. 운영자는 또한 같은 노드에서 재시작을 계속 시도할지, 아니면 다른 노드에서 재스케줄링될 수 있도록 작업을 실패시킬지 mode 파라미터로 선택할 수 있어요.

restart 스탠자에서 mode를 fail로 설정하면 잠재적으로 작업을 다른 노드로 이동시키는 재스케줄링이 발생할 수 있으며 모범 사례예요.

다음 CLI 예시는 노마드가 재시작하는 실패한 작업의 작업 상태와 할당 상태를 보여줘요. 재시작이 시도되는 동안 할당은 pending 상태예요. CLI의 Recent Events 섹션은 진행 중인 재시작 시도를 보여줘요.

$ nomad job status demo
ID            = demo
Name          = demo
Submit Date   = 2018-04-12T14:37:18-05:00
Type          = service
Priority      = 50
Datacenters   = dc1
Status        = running
Periodic      = false
Parameterized = false

Summary
Task Group  Queued  Starting  Running  Failed  Complete  Lost
demo        0       3         0        0       0         0

Allocations
ID        Node ID   Task Group  Version  Desired  Status   Created  Modified
ce5bf1d1  8a184f31  demo        0        run      pending  27s ago  5s ago
d5dee7c8  8a184f31  demo        0        run      pending  27s ago  5s ago
ed815997  8a184f31  demo        0        run      pending  27s ago  5s ago

다음 예시에서 할당 ce5bf1d1은 노마드에 의해 대략 10초마다(작은 임의 지터 포함) 재시작돼요. 결국 세 번 시도의 한도에 도달하고 실패 상태로 전환되며, 이후 재스케줄링 자격을 얻게 돼요.

$ nomad alloc status ce5bf1d1
ID                     = ce5bf1d1
Eval ID                = 64e45d11
Name                   = demo.demo[1]
Node ID                = a0ccdd8b
Job ID                 = demo
Job Version            = 0
Client Status          = failed
Client Description     = <none>
Desired Status         = run
Desired Description    = <none>
Created                = 56s ago
Modified               = 22s ago

Task "demo" is "dead"
Task Resources
CPU      Memory   Disk     Addresses
100 MHz  300 MiB  300 MiB

Task Events:
Started At     = 2018-04-12T22:29:08Z
Finished At    = 2018-04-12T22:29:08Z
Total Restarts = 3
Last Restart   = 2018-04-12T17:28:57-05:00

Recent Events:
Time                       Type            Description
2018-04-12T17:29:08-05:00  Not Restarting  Exceeded allowed attempts 3 in interval 5m0s and mode is "fail"
2018-04-12T17:29:08-05:00  Terminated      Exit Code: 127
2018-04-12T17:29:08-05:00  Started         Task started by client
2018-04-12T17:28:57-05:00  Restarting      Task restarting in 10.364602876s
2018-04-12T17:28:57-05:00  Terminated      Exit Code: 127
2018-04-12T17:28:57-05:00  Started         Task started by client
2018-04-12T17:28:47-05:00  Restarting      Task restarting in 10.666963769s
2018-04-12T17:28:47-05:00  Terminated      Exit Code: 127
2018-04-12T17:28:47-05:00  Started         Task started by client
2018-04-12T17:28:35-05:00  Restarting      Task restarting in 11.777324721s

출처: 문서

더 알아보기 (Learn more)