ฉันพยายามที่จะเริ่มต้น ฯลฯ เนื่องจากบริการ systemd ทำงานในคอนเทนเนอร์ด้วย พ็อดแมน.
หลังจากเริ่มต้นฉันได้รับบันทึกข้อผิดพลาดนี้จาก systemd:
systemd[1]: etcd.service: ได้รับข้อความแจ้งเตือนจาก PID 4696 แต่การรับอนุญาตสำหรับ PID หลัก 4868 เท่านั้น
แต่ etcd ดูเหมือนจะสามารถเริ่มพยายามแจ้ง container daemon ได้:
21T15:31:08.817Z","ผู้โทร":"etcdserver/server.go:2500","msg":"เวอร์ชันคลัสเตอร์>
21 ส.ค. 15:31:08 น. ip-10-0-0-71 podman[4696]: {"level":"info","ts":"2021-08-21T15:31:08.817Z","caller" :"etcdmain/main.go:47","msg":"แจ้ง init daemon>
21 ส.ค. 15:31:08 น. ip-10-0-0-71 podman[4696]: {"level":"info","ts":"2021-08-21T15:31:08.818Z","caller" :"etcdmain/main.go:53","msg":"แจ้งเรียบร้อยแล้ว>
แต่ดูเหมือนว่า systemd จะไม่ทราบและยุติบริการ etcd:
21 ส.ค. 15:32:34 ip-10-0-0-71 systemd[1]: etcd.service: เริ่มดำเนินการหมดเวลา สิ้นสุด
21 ส.ค. 15:32:35 น. ip-10-0-0-71 podman[4696]: {"level":"info","ts":"2021-08-21T15:32:35.000Z","caller" :"osutil/interrupt_unix.go:64","msg":"ได้รับสัญญาณ>
21 ส.ค. 15:32:35 น. ip-10-0-0-71 podman[4696]: {"level":"info","ts":"2021-08-21T15:32:35.000Z","caller" :"embed/etcd.go:367","msg":"ปิดเซิร์ฟเวอร์ etcd","n>
นี่คือสถานะบริการ systemd:
$ sudo systemctl สถานะ etcd.service
â etcd.บริการ - etcd
โหลดแล้ว: โหลดแล้ว (/etc/systemd/system/etcd.service; เปิดใช้งาน; การตั้งค่าล่วงหน้าของผู้ขาย: เปิดใช้งาน)
ใช้งานอยู่: ล้มเหลว (ผลลัพธ์: หมดเวลา) ตั้งแต่วันเสาร์ 2021-08-21 15:32:35 UTC; 8 นาทีที่แล้ว
กระบวนการ: 4868 ExecStart=/usr/bin/podman run -p 2380:2380 -p 2379:2379 --volume=/var/lib/etcd:/etcd-data:z --name etcd 842445240665.dkr.ecr.eu -เหนือ>
PID หลัก: 4868 (รหัส=ออก สถานะ=0/สำเร็จ)
ซีพียู: 3.729 วินาที
นี่คือไฟล์บริการหน่วย systemd ของฉันสำหรับ etcd ที่เริ่มต้นด้วย podman:
แมว <<EOF | sudo tee /etc/systemd/system/etcd.service
[หน่วย]
คำอธิบาย = ฯลฯ
After=podman_ecr_login.service mk_etcd_data_dir.service
[บริการ]
พิมพ์=แจ้ง
ExecStart=/usr/bin/podman run -p 2380:2380 -p 2379:2379 --volume=/var/lib/etcd:/etcd-data:z \
--name etcd <my-aws-account>.dkr.ecr.eu-north-1.amazonaws.com/etcd:v3.5.0 \
/usr/local/bin/etcd --data-dir=/etcd-data \
--ชื่อ etcd0 \
--advertise-client-url http://127.0.0.1:2379 \
--listen-client-url http://0.0.0.0:2379 \
--initial-advertise-peer-url http://127.0.0.1:2380 \
--listen-peer-url http://0.0.0.0:2380 \
--initial-cluster etcd0=http://127.0.0.1:2380
[ติดตั้ง]
WantedBy=multi-user.target
อฟ
sudo systemctl เปิดใช้งาน etcd
sudo systemctl start เป็นต้น
ฉันสงสัยว่าสิ่งนี้อาจเกี่ยวข้องกับ พิมพ์=แจ้ง
หรือบางทีอาจเป็นวิธีที่ฉันใช้ podman หรือ etcd ฉันเริ่ม etcd ในลักษณะเดียวกันตามที่อธิบายไว้ในเอกสาร etcd: เรียกใช้กลุ่ม etcd ภายในคอนเทนเนอร์ - เรียกใช้โหนดเดียว etcd. ฉันเรียกใช้สิ่งนี้บน Debian 11 ด้วย Podman 3.0.1
ข้อเสนอแนะใด ๆ เกี่ยวกับวิธีที่ฉันจะเริ่ม etcd ด้วย podman เป็นบริการ systemd