Puncte:0

service systemd raportează „port necunoscut”

drapel fr

Pe un server CentOS 7, creez un nou serviciu systemd de la zero pentru un nou serviciu, prometheus-slurm-exporter. (Este o aplicație care exportă date din planificatorul SLURM pe un cluster HPC.) În mod implicit, folosește portul 8080, dar deoarece acel port este deja utilizat de un alt serviciu, l-am setat să folosească Portul 9090. Rulați din linia de comandă, comanda arată astfel:

/opt/prometheus-slurm-exporter/bin/prometheus-slurm-exporter --listen-address="0.0.0.0:9090"

Funcționează bine din linia de comandă, dar vreau să creez un serviciu systemd din el, așa că am creat următorul fișier, /etc/systemd/system/prometheus-slurm-exporter.service:

[Unitate]
Descriere=SLURM Prometheus Exporter pentru Grafana
După=network.target syslog.target

[Serviciu]
ExecStart=/opt/prometheus-slurm-exporter/bin/prometheus-slurm-exporter --listen-address="0.0.0.0:9090"

[Instalare]
WantedBy=multi-user.target

După alergare systemctl daemon-reload urmat de systemctl porniți prometheus-slurm-exporter, serviciul eșuează, raportând un port necunoscut:

30 septembrie 12:21:14 ada prometheus-slurm-exporter: time="2021-09-30T12:21:14-04:00" level=info msg="Se pornește serverul: \"0.0.0.0:9090\"" source="main.go:59"
30 septembrie 12:21:14 ada prometheus-slurm-exporter: time="2021-09-30T12:21:14-04:00" level=fatal msg="ascultă tcp: adresa tcp/9090\": port necunoscut" source="main.go:62"
30 septembrie 12:21:14 ada systemd: prometheus-slurm-exporter.service: proces principal ieșit, cod=ieșit, stare=1/Eșec
30 septembrie 12:21:14 ada systemd: Unitatea prometheus-slurm-exporter.service a intrat în stare eșuată.
30 septembrie 12:21:14 ada systemd: prometheus-slurm-exporter.service a eșuat.

De ce rulează din linia de comandă, dar nu ca serviciu systemd și de ce nu poate recunoaște systemd portul 9090?

AlexAvardo avatar
drapel fr
Încercați `--listen-address=:9090`
Puncte:0
drapel fr

Mi-am răspuns la întrebarea mea. Se pare că nu puteți transmite argumente de linie de comandă către ExecStart. În schimb, trebuie să folosesc

EnvironmentFile=-/etc/default/prometheus-slurm-exporter
ExecStart=/opt/prometheus-slurm-exporter/bin/prometheus-slurm-exporter $OPTIONS

Și în fișierul de mediu, am

OPȚIUNI=--listen-address="0.0.0.0:9090"

Funcționează bine acum.

Puncte:0
drapel mx

Vechi, dar răspunde în cazul în care altcineva lovește acest lucru - puteți transmite argumente în linia de comandă, dar citarea nu este așa cum vă așteptați: https://github.com/systemd/systemd/issues/624. Fără ghilimele de ex. asta merge bine:

ExecStart=/usr/local/bin/prometheus-slurm-exporter --listen-address=0.0.0.0:9341

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.