Încerc să încep etcd ca serviciu systemd rulat într-un container cu podman.
După pornire, primesc acest jurnal de erori de la systemd:
systemd[1]: etcd.service: Am primit un mesaj de notificare de la PID 4696, dar recepția este permisă numai pentru PID-ul principal 4868
Dar etcd pare să poată începe o încercare de a notifica demonul container:
21T15:31:08.817Z","caller":"etcdserver/server.go:2500","msg":"versiunea cluster>
21 august 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":"notificare demon init>
21 august 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":"notificat cu succes>
Dar systemd pare să nu fie conștient de acest lucru și termină serviciul etcd:
21 aug 15:32:34 ip-10-0-0-71 systemd[1]: etcd.service: start operation time a expirat. Încheiere.
21 august 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":"semnul primit>
21 august 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":"se închide serverul etcd","n>
Aceasta este starea serviciului systemd:
$ sudo systemctl status etcd.service
â etcd.service - etcd
Încărcat: încărcat (/etc/systemd/system/etcd.service; activat; prestabilit furnizor: activat)
Activ: eșuat (Rezultat: expirare) din sâmb. 2021-08-21 15:32:35 UTC; acum 8 minute
Proces: 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 -nort>
PID principal: 4868 (cod=ieșit, stare=0/SUCCES)
CPU: 3.729s
Acesta este fișierul meu de serviciu al unității systemd pentru etcd început cu podman:
pisica <<EOF | sudo tee /etc/systemd/system/etcd.service
[Unitate]
Descriere=etcd
După=podman_ecr_login.service mk_etcd_data_dir.service
[Serviciu]
Tip = notificare
ExecStart=/usr/bin/podman run -p 2380:2380 -p 2379:2379 --volume=/var/lib/etcd:/etcd-data:z \
--name etcd <contul-my-aws>.dkr.ecr.eu-north-1.amazonaws.com/etcd:v3.5.0 \
/usr/local/bin/etcd --data-dir=/etcd-data \
--name etcd0 \
--advertise-client-urls http://127.0.0.1:2379 \
--listen-client-urls http://0.0.0.0:2379 \
--initial-advertise-peer-urls http://127.0.0.1:2380 \
--listen-peer-urls http://0.0.0.0:2380 \
--initial-cluster etcd0=http://127.0.0.1:2380
[Instalare]
WantedBy=multi-user.target
EOF
sudo systemctl enable etcd
sudo systemctl start etcd
Bănuiesc că asta ar putea avea legătură cu Tip = notificare
sau poate modul în care folosesc podman sau etcd. Încep etcd într-un mod similar cu cel descris în documentația etcd: Rulați clustere etcd în interiorul containerelor - Rularea unui singur nod etcd. Rulez asta pe Debian 11 cu Podman 3.0.1.
Orice sugestii despre cum pot porni etcd cu podman ca serviciu systemd?