ใช้ system-d:
ฉันมี 2 บริการ (บริการ A และบริการ B) บริการ B ต้องการบริการ A เพื่อให้ทำงานตลอดเวลาหากบริการ A หยุดทำงานหรือหยุดทำงาน บริการ B ควรหยุดทันทีจนกว่าบริการ A จะได้รับการกู้คืน (ณ เวลาที่บริการ B ควรเริ่มสำรองข้อมูลโดยอัตโนมัติ) มีคำสั่งที่สามารถใส่ลงในไฟล์ system.d unit เพื่อบังคับความสัมพันธ์ประเภทนี้หรือไม่?
ใช้กรณีตัวอย่าง:
#1 Nginx และ mariaDB
Nginx ต้องการให้มาเรียทำงานเสมอ ฉันไม่ต้องการให้ลูกค้าชนกับเว็บเซิร์ฟเวอร์ที่ไม่มี DB back-end หาก Maria ขัดข้อง ฉันต้องการให้ nginx ปิดเครื่องทันที หากมีการคืนค่าบริการกลับเป็น maria ฉันต้องการให้ nginx กลับมามีชีวิตอีกครั้งโดยไม่ต้องรีสตาร์ทกระบวนการ nginx ด้วยตนเอง ดังนั้นหากมีการขัดจังหวะเป็นระยะ ๆ และชั่วคราวกับ maria nginx จะไม่ให้บริการคำขอที่ไม่ถูกต้องและปล่อยให้โหนดอื่น ๆ ในคลัสเตอร์จัดการกับคำขอเว็บ
#2 Openvpn และโปรแกรมรวบรวมข้อมูลเว็บ
บริการรวบรวมข้อมูลเว็บขึ้นอยู่กับ VPN แบบเปิด คงเป็นเรื่องไม่ดีหากให้โปรแกรมรวบรวมข้อมูลเว็บทำงานโดยไม่มี VPN ทำงานอยู่ด้วย หากบริการไคลเอ็นต์ openvpn หยุดทำงาน ฉันต้องการให้โปรแกรมรวบรวมข้อมูลเว็บหยุดโดยอัตโนมัติเช่นกัน หาก openvpn ได้รับการกู้คืน ฉันต้องการให้โปรแกรมรวบรวมข้อมูลเว็บเริ่มทำงานอีกครั้งโดยไม่จำเป็นต้องเริ่มต้นด้วยตนเอง