우리는 여러 서버에서 실행되는 (공급업체 제공) 분산 애플리케이션을 다루고 있습니다. 이러한 서버는 "동일"하지 않습니다. 즉, 보조 서버를 시작하기 전에 기본 서버가 실행되고 있어야 합니다.
secondary.service
이 종속성을 파일에 어떻게 표현할 수 있나요 ? 나는 다음을 원합니다 :
- 시작 시 모든 보조 서버의 보조 서비스는 기본 서비스를 기다립니다.메인 서버에서곧 시작됩니다. 나는 이것이 사용자 정의를 통해 달성될 수 있다는 것을 알고 있습니다. 그러나 그것은 보조 서비스 섹션의 (또는) 조항
ExecStartPre
에 속하는 것 같습니다 .After
유틸리티에는 옵션이 있습니다. 파일 내에서 원격 서비스를 참조하는 유사한 구문이 있습니까?Require
[Unit]
systemctl
--host
.service
- 기본 서비스가 종료되면 보조 서비스도 모두 종료됩니다.
- 기본 서비스가 복원되면 보조 서비스도 모두 시작됩니다.
- 처음 두 개는 기본 서비스의 명시적인 알림을 기반으로 하며 주기적으로 상태를 확인하여 기본 서비스가 다운될 때 상황을 파악할 수 있습니다.갑자기.
systemd의 자체 메커니즘을 사용하여 위 작업 중 하나를 수행할 수 있습니까? 아니면 각 보조 서버에 별도의 상태 모니터링 서비스를 구현해야 합니까?
우리는 systemd가 다소 오래된 버전인 219인 RHEL7을 사용하고 있습니다. 또한 중요한 경우 언급된 모든 서비스는 systemd --user
"시스템"이 아닌 아래에서 실행됩니다.