재시작 구성하기
재시작 구성하기 (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
출처: 문서