複数のサービスインスタンスを管理するためにsystemctlを使用しようとしています。 /etc/systemd/systemには2つのファイルがあります。
cat [email protected]
[Unit]
Description="FOO instance #%i"
PartOf=FOO.target
Wants=network-online.target
Requires=pacemaker.service
After=network.target network-online.target pacemaker.service
StartLimitIntervalSec=300
StartLimitBurst=5
[Service]
Type=forking
User=myuser
Group=mygrp
WorkingDirectory=/usr/local/bin
ExecStart=/usr/local/bin/StartFOO.sh -s %i -f no
ExecStop=/usr/local/bin/StopFOO.sh -s %i
LimitNOFILE=16384
LimitNPROC=514340
LimitCORE=infinity
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
[Unit]
Description=FOO Workers
[email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected]
[Install]
WantedBy=multi-user.target
サーバーが再起動するか、systemctl startを実行すると、16個のサービスがすべて完全に停止して開始されます。[Eメール保護]システム制御が停止しました。[Eメール保護]ただし、サーバーの再起動後に1つのサービスを停止すると、すべてのサービスが停止します。すべてのサービスを再起動すると、一度に1つずつすべてが正常に起動および停止されます。次のサーバーが再起動されるまで。
解決策は、「PartOf」を[Unit]から[Install]セクションに移動することです。[Eメール保護]