Puncte:0

Definiția serviciului systemd pentru SAP (sau orice altă aplicație) începe

drapel bj

Am probleme pentru a configura un serviciu systemd pentru pornirea și oprirea SAP (sau orice altă aplicație). Sunt nou în configurarea serviciilor systemd și vă rog să fiți milă să pun întrebări „prostice”.

Ce vreau/plan:

Aplicația în acest caz SAP este instalată pe discuri locale montate în /local/hana/H01 și /local/hana/H01/DB; acestea sunt sisteme de fișiere, care sunt montate de fstab.

Există un script care pornește SAP care se află în /local/hana/H01/bin/hana. Dacă apelați acest script cu parametrul „start”, va porni SAP sau cu „stop” va termina SAP. Acest script se va încheia după ce SAP este pornit, dar procesele SAP vor rămâne online.

Există o NIC suplimentară configurată pentru această instanță SAP eth0:1; SAP ar trebui să înceapă după ce acea NIC este disponibilă. Administratorii SAP consideră că este convenabil să se conecteze prin ssh la o gazdă pentru a verifica problemele, așa că, dacă SAP nu se închide, vor să se conecteze prin ssh pentru a verifica; sshd nu ar trebui să se termine înainte ca SAP/Appliaction să fie oprit.

/local/hana/H01/bin/hana (sau orice alt script de aplicație) va porni comenzi cu script de timeout pentru a preveni blocarea.

Obișnuiam să folosesc cadrul init.d și am folosit runlevel 4 pentru a-mi porni aplicațiile târziu în procesul de pornire.

Am creat o configurație de serviciu, pe care am reutilizat-o dintr-un serviciu existent, așa că nu înțeleg încă toate opțiunile și dependențele. Am nevoie de aceste dependențe la nivel de rulare?.target? A fost în fișierul eșantion.

[Unitate]
Descriere=Resurse de sistem pentru SAP HANA H01
Necesită=local-fs.target
După=local-fs.target
Înainte=runlevel2.target
Înainte=runlevel3.target
Înainte=runlevel4.target
Înainte=runlevel5.target
Înainte=închidere.țintă
Necesită=network.target
După=network-online.target
După=serviciu.rețea
După=sshd.service
După=local-fs.target
Conflicts=shutdown.target reboot.target
 
[Serviciu]
Tip = bifurcare
Restart=nu
StandardOutput=syslog
StandardError=syslog+consola
TimeoutSec=0
IgnoreSIGPIPE=nu
KillMode=proces
RemainAfterExit=da
ExecStart=/local/hana/H01/bin/hana start
ExecStop=/local/hana/H01/bin/hana stop
 
[Instalare]
WantedBy=multi-user.target

Mi-a scapat ceva? prea mult? Ceva sugestii despre ce ar trebui să adaug sau să renunț?

Mulțumiri Fran

drapel cn
Nu aveți nevoie de toate rândurile „Înainte”. Puneți doar `After=network-online.target`. De asemenea, nu aveți nevoie de „Conflicte”. Acest lucru este prea complicat! Există exemple [aici](https://www.freedesktop.org/software/systemd/man/systemd.service.html)
Franz avatar
drapel bj
Mulțumesc! Ceva de spus despre blocul [Service]?
drapel cn
Nu te complica! :D Accesați `Type`, `Restart`, `ExecStart/Stop` și adăugați lucruri după cum este necesar. Cred că majoritatea valorilor tale sunt implicite (de exemplu, syslog).
Franz avatar
drapel bj
Grozav! Mulțumesc mult!
Puncte:0
drapel cn

Pentru a rezuma comentariile:

Nu te complica!

[Unitate]
Descriere=Resurse de sistem pentru SAP HANA H01
După=network-online.target
 
[Serviciu]
Tip = bifurcare
Restart=nu
ExecStart=/local/hana/H01/bin/hana start
ExecStop=/local/hana/H01/bin/hana stop
 
[Instalare]
WantedBy=multi-user.target

Ar trebui să începeți și să repetați de acolo după cum este necesar. Mai multe exemple: paginile de manual

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.