Score:1

systemd ยุติบริการ etcd ที่เริ่มต้นด้วย podman - การรับอนุญาตสำหรับ PID หลักเท่านั้น

ธง jp

ฉันพยายามที่จะเริ่มต้น ฯลฯ เนื่องจากบริการ 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

Score:0
ธง jp

ตามนี้ ออกความคิดเห็นบริการเหล่านี้ควรเรียกใช้เป็น ประเภท = ง่าย เนื่องจากไม่ส่งสัญญาณกลับไปที่ systemd นี้ ประชาสัมพันธ์ ให้พอดแมนตั้งค่าเป็น ประเภท=ผู้บริหาร ซึ่งดูเหมือนจะทำงานได้ดี

หลังจากเปลี่ยนเป็น ประเภท=ผู้บริหาร ในไฟล์หน่วยบริการของฉัน ตอนนี้ใช้งานได้แล้ว:

$ sudo systemctl สถานะ etcd.service
â etcd.บริการ - etcd
     โหลดแล้ว: โหลดแล้ว (/etc/systemd/system/etcd.service; เปิดใช้งาน; การตั้งค่าล่วงหน้าของผู้ขาย: เปิดใช้งาน)
     ใช้งานอยู่: ใช้งาน (ทำงาน) ตั้งแต่วันเสาร์ 2021-08-21 15:59:23 UTC; 1 นาที 28 วินาทีที่แล้ว
   PID หลัก: 4662 (พอดแมน)
      งาน: 11 (จำกัด: 442)
     หน่วยความจำ: 137.9M
        ซีพียู: 3.576 วินาที
     CGroup: /system.slice/etcd.service
             ââ4662 /usr/bin/podman run -p 2380:2380 -p 2379:2379 --volume=/var/lib/etcd:/etcd-data:z --name etcd <my-aws- บัญชี>.dkr.ecr.eu-north-1.amaz>
             ââ4846 /usr/bin/conmon --api-เวอร์ชัน 1 -c 616b317dc255ca86b308857dc6a180510fc166975a8a28437f3434111f03e7ad -u 616b317dc255ca86b308857dc6a>
in flag
บางที Podman 3.3.0 อาจมีการเปลี่ยนแปลง? อ้างจาก [บันทึกประจำรุ่นของ Podman v3.3.0](https://github.com/containers/podman/releases/tag/v3.3.0) (เผยแพร่เมื่อเดือนสิงหาคม 2564) _Systemd unit files ที่สร้างโดย podman สร้าง systemd ตอนนี้ใช้ Type= แจ้งเตือนตามค่าเริ่มต้น แทนที่จะใช้ไฟล์ PID._ รองรับ `Type=notify` ใน _etcd_ ดูเหมือนว่าจะมีอยู่: [main.go](https://github.com/etcd-io/etcd/blob/6a32bbad756b656da23af007ac4a0256b3dab7b5/server/etcdmain/main.go#L48) [etcd .service](https://github.com/etcd-io/etcd/blob/main/contrib/systemd/etcd.service)
jp flag
@ErikSjölund น่าสนใจ! ขอขอบคุณ!

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา