Supervisori installimine ja konfigureerimine Ubuntu 16.04-s

Supervisor on klient/server süsteem, mida kasutatakse mitme UNIX-i protsesside, täpsemalt projekti või kliendiga seotud protsesside juhtimiseks. Näiteks võite kasutada supervisorit oma veebirakenduse suvalise arvu töötajate järjekordade loomiseks ja jälgimiseks.

Selle süsteemi komponendid on:

  • supervisor: süsteemi serveriosa.
  • supervisorctl: käsurea liides, mida kasutatakse serveriga suhtlemiseks.
  • Veebiserver: lihtne veebiserver ja põhifunktsioonidega veebikasutajaliides võrreldes supervisorctl-ga .
  • XML-RPC liides: sama HTTP-server, mida kasutab veebiklient, teenindab XML-RPC liidest, mida saab kasutada järelevalveprogrammide juhtimiseks.

Selles õpetuses installime supervisori uusima versiooni, näitame, kuidas luua ja hallata programme supervisorctl, ning konfigureerida veebiliidese meie programmide haldamiseks.

Paigaldamine ja põhikonfiguratsioon

Installime supervisori easy_installpythoni häälestustööriistade funktsiooni kaudu .

Esmalt värskendage oma kohalike pakettide loendit ja seejärel installige python setuptools.

sudo apt-get update && sudo apt-get install python-setuptools

Nüüd saame paigaldada supervisori.

sudo easy_install supervisor

Kui installimine on lõppenud, peame genereerima oma konfiguratsioonifaili. Looge supervisorsees nimega kaust /etc.

sudo mkdir /etc/supervisor

Ja seejärel teostage järgmine.

echo_supervisord_conf >  /etc/supervisor/supervisord.conf

Kui te pole rootkasutajaga sisse logitud , võite saada Permission deniedveateate (isegi sudo). See on tingitud ümbersuunamisest. Selle ületamiseks logige sisse administraatorina.

sudo su

Seejärel saate käsu uuesti käivitada.

echo_supervisord_conf > /etc/supervisor/supervisord.conf

Nüüd saate jätta rootkasutaja exitkäsuga. echo_supervisord_confKäsu andis meie juhendaja paigaldus.

Põhikonfiguratsioon

Avage /etc/supervisor/supervisord.conffail ja kontrollige selle sisu. Pange tähele, et see konfiguratsioonifail järgib INIsüntaksit ja see on jagatud osadeks (esinevad sulgudes nagu [section-name]).

Juhendaja poolt hallatavate programmide lisamiseks peame lihtsalt looma vastavad [program]jaotised. Kuid selleks, et vältida peamise konfiguratsioonifailiga segamist iga kord, kui peame programmi lisama (või muutma), kasutame [include]jaotist. Otsige üles see jaotis, tühjendage selle kommentaarid ja seejärel muutke seda nii, et see näeks välja järgmine.

[include]
files=conf.d/*.conf

Nüüd loome iga programmi jaoks, mida tahame lisada, kataloogis .inifaili /etc/supervisor/conf.d/. Loome selle kausta.

sudo mkdir /etc/supervisor/conf.d

Supervisor serveri käivitamine

Nagu eelnevalt märgitud, koosneb supervisor serverist ja sellega ühenduse loovatest klientidest. Programmide haldamiseks ja juhtimiseks peame serveri käivitama. Selleks registreerime järelevalveserveri asukohas systemd, et serverit saaks süsteemi käivitamisel käivitada.

Selleks looge fail nimega supervisord.serviceon /etc/systemd/systemkataloog.

sudo touch /etc/systemd/system/supervisord.service

Lisage faili järgmine sisu.

[Unit]
Description=Supervisor daemon
Documentation=http://supervisord.org
After=network.target

[Service]
ExecStart=/usr/local/bin/supervisord -n -c /etc/supervisor/supervisord.conf
ExecStop=/usr/local/bin/supervisorctl $OPTIONS shutdown
ExecReload=/usr/local/bin/supervisorctl $OPTIONS reload
KillMode=process
Restart=on-failure
RestartSec=42s

[Install]
WantedBy=multi-user.target
Alias=supervisord.service

Aktiveerige järelevalveteenus.

sudo systemctl start supervisord.service

Kuni teenusefail asub /etc/systemd/systemkataloogis, käivitatakse see automaatselt süsteemi käivitamisel.

Saate vaadata teenuse olekut.

systemctl status supervisord.service

Samuti saate vaadata logisid.

sudo journalctl -u supervisord.service

Programmide lisamine

Ülevaataja juhitavad programmid on antud [program]konfiguratsiooni erinevate osade kaupa. Iga programmi jaoks, mida me tahame hallata, loome eraldiseisva konfiguratsioonifaili, mis annab teavet käsu käivitatava tee, mis tahes keskkonnamuutujate kohta, kuidas toimida seiskamise korral.

Kõigepealt loome lihtsa skripti, mis logib ajatempli. Looge fail nimega hello_supervisor.sh(kõikjal, kus soovite, viitame selle skripti täielikule teele).

touch hello_supervisor.sh

Nüüd pange sinna järgmine sisu

#!/bin/bash
while true
do 
    # Echo current timestamp to stdout
    echo Hello Supervisor: `date`
    # Echo 'error!' to stderr
    echo An error ocurred at `date`! >&2
    sleep 1
done

Nüüd tehke see käivitatavaks

chmod +x hello_supervisor.sh

Praktikas on see skript üsna kasutu. Siiski saame seda kasutada järelevaataja võimu demonstreerimiseks. Looge vastav konfiguratsioonifail, käivitades järgmise.

sudo touch /etc/supervisor/conf.d/hello_supervisor.conf

Nüüd sisestage sellesse faili järgmine sisu.

[program:hello_supervisor]
command=/home/USER/hello_supervisor.sh
autostart=true
autorestart=true
stderr_logfile=/var/log/hello_supervisor.err.log
stdout_logfile=/var/log/hello_supervisor.out.log

Märkus. Asendage kindlasti USERoma kasutajanimega.

Vaatame selle konfiguratsiooni samm-sammult üle.

[program:hello_supervisor]
command=/home/USER/hello_supervisor.sh

Esiteks algab konfigureerimine programmi nimega hello_supervisor määratlemisega . Samuti teatab see käivitatava käivitatava faili täieliku tee.

autostart=true

Sellel real on kirjas, et see programm peaks supervisori käivitamisel automaatselt käivituma.

autorestart=true

Kui programm mingil põhjusel sulgub, teavitab see rida juhendajat, et ta protsessi automaatselt taaskäivitaks.

stderr_logfile=/var/log/hello_supervisor.err.log
stdout_logfile=/var/log/hello_supervisor.out.log

Need read määravad vastavalt logifaili asukoha stderrja stdout.

Programmide haldamine

Nüüd, kui oleme supervisori installinud ja konfigureerinud, saame oma protsesse hallata.

Pärast uue programmi lisamist peaksime käivitama järgmised kaks käsku, et teavitada serverit konfiguratsioonifailide uuesti lugemisest ja muudatuste rakendamisest.

sudo supervisorctl reread
sudo supervisorctl update

Nüüd täitke supervisorctlklient.

sudo supervisorctl

Teid tervitatakse registreeritud protsesside loendiga. Näete proccess nimetatakse hello_supervisorkoos RUNNINGolekut.

hello_supervisor                 RUNNING   pid 6853, uptime 0:22:30
supervisor>

helpSaadaolevate käskude loendi kuvamiseks tippige .

supervisor> help

default commands (type help <topic>):
=====================================
add    exit      open  reload  restart   start   tail   
avail  fg        pid   remove  shutdown  status  update 
clear  maintail  quit  reread  signal    stop    version

Lühidalt öeldes saame start, stopja restartprogrammid, edastades programmi nime argumendina vastavale käsule.

supervisor> stop hello_supervisor 
hello_supervisor: stopped
supervisor> start hello_supervisor 
hello_supervisor: started
supervisor> restart hello_supervisor 
hello_supervisor: stopped
hello_supervisor: started
supervisor> 

Samuti saame tailkäsuga vaadata programmi väljundit .

supervisor> tail hello_supervisor 
Hello Supervisor: Mon Sep 25 19:27:29 UTC 2017
Hello Supervisor: Mon Sep 25 19:27:30 UTC 2017
Hello Supervisor: Mon Sep 25 19:27:31 UTC 2017

Sest stderrtoodangu, mida saab kasutada tailsamuti.

supervisor> tail hello_supervisor stderr
An error ocurred at Mon Sep 25 19:31:12 UTC 2017!
An error ocurred at Mon Sep 25 19:31:13 UTC 2017!
An error ocurred at Mon Sep 25 19:31:14 UTC 2017!

Autor tuginedes statuskäsk, saate vaadata olekut kõik registreeritud programmid.

Kui olete lõpetanud, võite lõpetada.

supervisor> quit

Veebiserveri klient

Juurdepääsu lubamiseks ülevaataja veebiserverile avage järelevaataja konfiguratsioonifail ja leidke [inet_http_server]jaotis.

nano /etc/supervisor/supervisord.conf

Nüüd värskendage selle jaotise konfiguratsiooni järgmisega.

[inet_http_server]
port=*:9001
username=your_username
password=your_password

Asendage your_usernameja your_passwordsoovitud mandaatidega, salvestage oma muudatused ja taaskäivitage järelevalveteenus.

sudo systemctl restart supervisord.service

Ärge unustage lubada TCPjuurdepääsu 9001tulemüüri pordile ja seejärel juurdepääsu http://{server-ip}:9001brauserist. Kui küsitakse, esitage oma usernameja password. Nüüd saate oma protsesse veebist juhtida.

Järeldus

Oleme installinud supervisordi uusima versiooni, õppinud, kuidas seda süsteemi automaatseks käivitamiseks süsteemiga konfigureerida, ja vaadanud üle ka rakenduse põhikasutuse supervisorctl. Täpsema konfiguratsiooni ja kasutusjuhtude jaoks võite vaadata ametlikku järelevaataja dokumentatsiooni .


Seadistage Cacti Debian Jessies

Seadistage Cacti Debian Jessies

Sissejuhatus Cacti on avatud lähtekoodiga seire- ja graafikutööriist, mis põhineb täielikult RRD andmetel. Cacti kaudu saate jälgida peaaegu igat tüüpi seadmeid

Installige Lets Encrypt SSL ühe klõpsuga WordPressi rakendusse

Installige Lets Encrypt SSL ühe klõpsuga WordPressi rakendusse

Sissejuhatus Lets Encrypt on sertifikaatide väljastamise teenus, mis pakub tasuta TLS/SSL-sertifikaate. Paigaldusprotsessi lihtsustab Certbot,

Tekkiti klassikalise serveri seadistamine Ubuntu 16.10-s

Tekkiti klassikalise serveri seadistamine Ubuntu 16.10-s

Kas kasutate teistsugust süsteemi? Mis on Tekkit Classic? Tekkit Classic on modifikatsioonipakett mängule, mida kõik teavad ja armastavad; Minecraft. See sisaldab mõningaid ver

Seadistage iRedMail Debian Wheezys

Seadistage iRedMail Debian Wheezys

Kas kasutate teistsugust süsteemi? See õpetus näitab teile, kuidas installida grupitöö iRedMail Debian Wheezy värskele installile. Peaksite kasutama servi

Jekylli ajaveebi loomine Ubuntus 16.04

Jekylli ajaveebi loomine Ubuntus 16.04

Kas kasutate teistsugust süsteemi? Jekyll on suurepärane alternatiiv WordPressile ajaveebi pidamiseks või sisu jagamiseks. See ei nõua andmebaase ja see on väga lihtne

Järelevalveta versiooniuuenduste seadistamine Debian 9-s (venitamine)

Järelevalveta versiooniuuenduste seadistamine Debian 9-s (venitamine)

Kas kasutate teistsugust süsteemi? Kui ostate Debiani serveri, peaksid teil alati olema uusimad turvapaigad ja värskendused, olenemata sellest, kas magate või mitte

PHP 7.0 või PHP 7.1 installimine ja konfigureerimine Ubuntu 16.04-s

PHP 7.0 või PHP 7.1 installimine ja konfigureerimine Ubuntu 16.04-s

PHP ja sellega seotud paketid on veebiserveri juurutamisel kõige sagedamini kasutatavad komponendid. Selles artiklis õpime, kuidas seadistada PHP 7.0 või PHP 7.1 o

Kuidas installida CentOS-i Squid Proxy

Kuidas installida CentOS-i Squid Proxy

Squid on populaarne tasuta Linuxi programm, mis võimaldab teil luua edastamise veebipuhverserveri. Selles juhendis näete, kuidas installida Squid CentOS-i, et teid pöörata

Lighttpd (LLMP Stack) installimine CentOS 6-sse

Lighttpd (LLMP Stack) installimine CentOS 6-sse

Sissejuhatus Lighttpd on Apache'i hark, mille eesmärk on olla palju vähem ressursimahukas. See on kerge, sellest ka oma nimi, ja seda on üsna lihtne kasutada. Installin

Kolm tasuta serveri juhtpaneeli (kiire installimine)

Kolm tasuta serveri juhtpaneeli (kiire installimine)

1. Virtualmin/Webmin Virtualmin on võimas ja paindlik veebimajutuse juhtpaneel Linuxi ja UNIX süsteemidele, mis põhineb tuntud avatud lähtekoodiga veebibaasil

Yii rakenduse seadistamine Ubuntu 14.04-s

Yii rakenduse seadistamine Ubuntu 14.04-s

Yii on PHP raamistik, mis võimaldab teil rakendusi kiiremini ja lihtsamalt arendada. Yii installimine Ubuntule on lihtne, nagu saate täpselt teada

Ekraani kasutamine Ubuntu 14.04-s

Ekraani kasutamine Ubuntu 14.04-s

Ekraan on rakendus, mis võimaldab ühes aknas mitut terminaliseanssi kasutada. See võimaldab simuleerida mitut terminali akent, kus see ma

Seadistage Debianis/Ubuntus oma DNS-server

Seadistage Debianis/Ubuntus oma DNS-server

See õpetus selgitab, kuidas seadistada DNS-serverit Bind9 abil Debianis või Ubuntus. Asendage kogu artikli vältel oma-domeen-nimi.com vastavalt. Kell th

Logrotate kasutamine logifailide haldamiseks

Logrotate kasutamine logifailide haldamiseks

Sissejuhatus Logrotate on Linuxi utiliit, mis lihtsustab logifailide haldamist. Tavaliselt töötab see kord päevas cron-töö kaudu ja haldab logibaasi

Staatilise võrgu ja IPv6 konfigureerimine CentOS 7-s

Staatilise võrgu ja IPv6 konfigureerimine CentOS 7-s

VULTR on hiljuti teinud nende osas muudatusi ja kõik peaks nüüd töötama hästi, kui NetworkManager on lubatud. Kui soovite keelata

Icinga2 muutmine, et kasutada CentOS 6 või CentOS 7 põhi-/kliendimudelit

Icinga2 muutmine, et kasutada CentOS 6 või CentOS 7 põhi-/kliendimudelit

Icinga2 on võimas seiresüsteem ja kui seda kasutatakse põhikliendi mudelis, võib see asendada vajaduse NRPE-põhiste seirekontrollide järele. Meister-klient

Seadistage Red5 Media Server versioonis Ubuntu 16.04

Seadistage Red5 Media Server versioonis Ubuntu 16.04

Kas kasutate teistsugust süsteemi? Red5 on Java-s realiseeritud avatud lähtekoodiga meediumiserver, mis võimaldab käivitada mitme kasutajaga Flashi rakendusi, näiteks otseülekandeid.

Kompileerige ja installige Nginx mooduliga PageSpeed ​​Debian 8

Kompileerige ja installige Nginx mooduliga PageSpeed ​​Debian 8

Selles artiklis näeme, kuidas kompileerida ja installida Nginxi põhiliini ametlikest Nginxi allikatest mooduliga PageSpeed, mis võimaldab teil

Apache Cassandra 3.11.x installimine Ubuntu 16.04 LTS-i

Apache Cassandra 3.11.x installimine Ubuntu 16.04 LTS-i

Kas kasutate teistsugust süsteemi? Apache Cassandra on tasuta ja avatud lähtekoodiga NoSQL-i andmebaasihaldussüsteem, mis on loodud pakkuma skaleeritavust, hig.

Apache Cassandra 3.11.x installimine opsüsteemi CentOS 7

Apache Cassandra 3.11.x installimine opsüsteemi CentOS 7

Kas kasutate teistsugust süsteemi? Apache Cassandra on tasuta ja avatud lähtekoodiga NoSQL-i andmebaasihaldussüsteem, mis on loodud pakkuma skaleeritavust, hig.

Masinate tõus: AI tegelikud rakendused

Masinate tõus: AI tegelikud rakendused

Tehisintellekt ei ole tulevik, see on siin, olevikus. Sellest blogist loe, kuidas tehisintellekti rakendused on mõjutanud erinevaid sektoreid.

DDOS-i rünnakud: lühike ülevaade

DDOS-i rünnakud: lühike ülevaade

Kas olete ka DDOS-i rünnakute ohver ja olete segaduses ennetusmeetodite osas? Oma päringute lahendamiseks lugege seda artiklit.

Kas olete kunagi mõelnud, kuidas häkkerid raha teenivad?

Kas olete kunagi mõelnud, kuidas häkkerid raha teenivad?

Võib-olla olete kuulnud, et häkkerid teenivad palju raha, kuid kas olete kunagi mõelnud, kuidas nad sellist raha teenivad? arutleme.

Googlei revolutsioonilised leiutised, mis muudavad teie elu lihtsaks.

Googlei revolutsioonilised leiutised, mis muudavad teie elu lihtsaks.

Kas soovite näha Google'i revolutsioonilisi leiutisi ja seda, kuidas need leiutised muutsid iga inimese elu tänapäeval? Seejärel lugege ajaveebi, et näha Google'i leiutisi.

Reede oluline osa: mis juhtus tehisintellektiga juhitavate autodega?

Reede oluline osa: mis juhtus tehisintellektiga juhitavate autodega?

Isejuhtivate autode kontseptsioon tehisintellekti abil teedele jõudmiseks on meil juba mõnda aega unistus. Kuid vaatamata mitmele lubadusele pole neid kusagil näha. Lisateabe saamiseks lugege seda ajaveebi…

Tehnoloogiline singulaarsus: inimtsivilisatsiooni kauge tulevik?

Tehnoloogiline singulaarsus: inimtsivilisatsiooni kauge tulevik?

Kuna teadus areneb kiiresti, võttes üle suure osa meie jõupingutustest, suureneb ka oht, et allume seletamatule singulaarsusele. Loe, mida singulaarsus meie jaoks tähendada võiks.

Andmesalvestuse areng – infograafik

Andmesalvestuse areng – infograafik

Andmete säilitamise meetodid on arenenud alates andmete sünnist. See ajaveeb käsitleb infograafiku alusel andmete salvestamise arengut.

Suurandmete viitearhitektuuri kihtide funktsioonid

Suurandmete viitearhitektuuri kihtide funktsioonid

Lugege ajaveebi, et kõige lihtsamal viisil teada saada Big Data Architecture'i erinevaid kihte ja nende funktsioone.

6 hämmastavat eelist nutikate koduseadmete olemasolust meie elus

6 hämmastavat eelist nutikate koduseadmete olemasolust meie elus

Selles digipõhises maailmas on nutikad koduseadmed muutunud elu oluliseks osaks. Siin on mõned nutikate koduseadmete hämmastavad eelised, mis muudavad meie elu elamisväärseks ja lihtsamaks.

macOS Catalina 10.15.4 täienduse värskendus põhjustab rohkem probleeme kui lahendamine

macOS Catalina 10.15.4 täienduse värskendus põhjustab rohkem probleeme kui lahendamine

Hiljuti andis Apple välja macOS Catalina 10.15.4 täiendusvärskenduse probleemide lahendamiseks, kuid tundub, et värskendus põhjustab rohkem probleeme, mille tulemuseks on Maci masinate tellimine. Lisateabe saamiseks lugege seda artiklit