The Rise of Machines: Real World Applications of AI
Umělá inteligence není v budoucnosti, je zde přímo v současnosti V tomto blogu si přečtěte, jak aplikace umělé inteligence ovlivnily různé sektory.
Supervizor je systém klient/server používaný k řízení řady UNIXových procesů, konkrétněji procesů souvisejících s projektem nebo zákazníkem. Můžete například použít správce k vytvoření a sledování libovolného počtu pracovních front vaší webové aplikace.
Komponenty tohoto systému jsou:
V tomto tutoriálu nainstalujeme nejaktuálnější verzi supervizora, předvedeme, jak vytvářet a spravovat programy prostřednictvím supervisorctl, a nakonfigurujeme webové rozhraní pro správu našich programů.
Budeme instalovat supervizor prostřednictvím easy_install, což je funkce instalačních nástrojů pythonu.
Nejprve aktualizujte seznam místních balíčků a poté nainstalujte python setuptools.
sudo apt-get update && sudo apt-get install python-setuptools
Nyní můžeme nainstalovat supervizor.
sudo easy_install supervisor
Jakmile je instalace dokončena, musíme vygenerovat náš konfigurační soubor. Vytvořte složku s názvem supervisoruvnitř /etc.
sudo mkdir /etc/supervisor
A pak proveďte následující.
echo_supervisord_conf > /etc/supervisor/supervisord.conf
Pokud nejste přihlášeni jako rootuživatel, může se zobrazit Permission deniedchyba (i s sudo). To je způsobeno přesměrováním. Chcete-li to překonat, přihlaste se jako root.
sudo su
Poté můžete příkaz spustit znovu.
echo_supervisord_conf > /etc/supervisor/supervisord.conf
Nyní můžete nechat rootuživatele s exitpříkazem. echo_supervisord_confPříkaz byl poskytnut naším instalace supervizora.
Otevřete /etc/supervisor/supervisord.confsoubor a zkontrolujte jeho obsah. Všimněte si, že tento konfigurační soubor odpovídá INIsyntaxi a je rozdělen do sekcí (reprezentovaných závorkami jako v [section-name]).
Chcete-li přidat programy, které má spravovat supervizor, stačí vytvořit příslušné [program]sekce. Abychom se však vyhnuli problémům s hlavním konfiguračním souborem pokaždé, když potřebujeme přidat (nebo změnit) program, budeme používat [include]sekci. Najděte tuto sekci, odkomentujte ji a poté ji upravte, aby vypadala takto.
[include]
files=conf.d/*.conf
Nyní pro každý program, který chceme přidat, vytvoříme .inisoubor uvnitř /etc/supervisor/conf.d/adresáře. Pojďme vytvořit tuto složku.
sudo mkdir /etc/supervisor/conf.d
Jak bylo uvedeno výše, supervizor se skládá ze serveru a klientů, kteří se k němu připojují. Abychom mohli spravovat a ovládat programy, musíme spustit server. Za tímto účelem zaregistrujeme server dohledu v systemd, aby bylo možné server spustit při startu systému.
Chcete-li tak učinit, vytvořte soubor s názvem supervisord.servicev /etc/systemd/systemadresáři.
sudo touch /etc/systemd/system/supervisord.service
Přidejte do souboru následující obsah.
[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
Aktivujte službu dohledu.
sudo systemctl start supervisord.service
Dokud je soubor služby umístěn v /etc/systemd/systemadresáři, bude automaticky spuštěn při startu systému.
Můžete zkontrolovat stav služby.
systemctl status supervisord.service
Také si můžete prohlédnout protokoly.
sudo journalctl -u supervisord.service
Programy řízené supervizorem jsou dány různými [program]sekcemi v konfiguraci. Pro každý program, který chceme spravovat, vytvoříme samostatný konfigurační soubor informující o cestě ke spustitelnému příkazu, případných proměnných prostředí, jak postupovat v případě vypnutí.
Nejprve vytvoříme jednoduchý skript, který zaznamená časové razítko. Vytvořte soubor s názvem hello_supervisor.sh(kdekoli budete chtít, budeme odkazovat na úplnou cestu tohoto skriptu).
touch hello_supervisor.sh
Nyní do něj vložte následující obsah
#!/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
Nyní jej udělejte spustitelným
chmod +x hello_supervisor.sh
V praxi je tento skript v podstatě k ničemu. Můžeme ji však použít k demonstraci síly supervizora. Vytvořte odpovídající konfigurační soubor spuštěním následujícího.
sudo touch /etc/supervisor/conf.d/hello_supervisor.conf
Nyní do tohoto souboru vložte následující obsah.
[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
Poznámka: Nezapomeňte nahradit USERsvým uživatelským jménem.
Tuto konfiguraci zkontrolujeme krok za krokem.
[program:hello_supervisor]
command=/home/USER/hello_supervisor.sh
Nejprve konfigurace začíná definováním programu s názvem hello_supervisor . Také informuje o úplné cestě spustitelného souboru, který má být spuštěn.
autostart=true
Tento řádek uvádí, že tento program by měl být automaticky spuštěn při spuštění supervizora.
autorestart=true
Pokud se program z jakéhokoli důvodu ukončí, tento řádek informuje nadřízeného, aby proces automaticky restartoval.
stderr_logfile=/var/log/hello_supervisor.err.log
stdout_logfile=/var/log/hello_supervisor.out.log
Tyto řádky definují umístění souboru protokolu pro stderra stdout.
Nyní, když jsme nainstalovali a nakonfigurovali supervizora, jsme schopni řídit naše procesy.
Po přidání nového programu bychom měli spustit následující dva příkazy, abychom informovali server, aby znovu načetl konfigurační soubory a použil jakékoli změny.
sudo supervisorctl reread
sudo supervisorctl update
Nyní spusťte supervisorctlklienta.
sudo supervisorctl
Uvítá vás seznam zaregistrovaných procesů. Uvidíte proces vyvolaný hello_supervisorse RUNNINGstavem.
hello_supervisor RUNNING pid 6853, uptime 0:22:30
supervisor>
Zadejte helppro seznam dostupných příkazů.
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
Stručně řečeno, můžeme start, stopa restartprogramovat předáním názvu programu jako argumentu příslušnému příkazu.
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>
tailPříkazem se můžeme také podívat na výstup programu .
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
Pro stderrvýstup můžete použít tailtaké.
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!
Vyvoláním statuspříkazu můžete zobrazit stav všech registrovaných programů.
Jakmile skončíte, můžete skončit.
supervisor> quit
Chcete-li povolit přístup k dozorovanému webovému serveru, otevřete konfigurační soubor dozoru a vyhledejte příslušnou [inet_http_server]sekci.
nano /etc/supervisor/supervisord.conf
Nyní aktualizujte konfiguraci této sekce pomocí následujícího.
[inet_http_server]
port=*:9001
username=your_username
password=your_password
Nahraďte your_usernamea your_passwordpožadovanými přihlašovacími údaji uložte své úpravy a službu supervize restartu.
sudo systemctl restart supervisord.service
Nezapomeňte povolit TCPpřístup k portu 9001na vašem firewallu a poté přístup http://{server-ip}:9001z vašeho prohlížeče. Na požádání uveďte své usernamea password. Nyní můžete ovládat své procesy z webu.
Nainstalovali jsme nejaktuálnější verzi supervizoru, naučili jsme se, jak jej nakonfigurovat pro automatické spouštění systému pomocí systemd, a také jsme zkontrolovali základní použití supervisorctl. Pro pokročilejší konfiguraci a případy použití se můžete obrátit na oficiální supervizní dokumentaci .
Umělá inteligence není v budoucnosti, je zde přímo v současnosti V tomto blogu si přečtěte, jak aplikace umělé inteligence ovlivnily různé sektory.
Jste také obětí DDOS útoků a nemáte jasno v metodách prevence? Chcete-li vyřešit své dotazy, přečtěte si tento článek.
Možná jste slyšeli, že hackeři vydělávají spoustu peněz, ale napadlo vás někdy, jak takové peníze vydělávají? Pojďme diskutovat.
Chcete vidět revoluční vynálezy Google a jak tyto vynálezy změnily život každého dnešního člověka? Pak si přečtěte na blogu a podívejte se na vynálezy od Googlu.
Koncept aut s vlastním pohonem, která vyrazí na silnice s pomocí umělé inteligence, je snem, který už nějakou dobu máme. Ale přes několik slibů nejsou nikde vidět. Přečtěte si tento blog a dozvíte se více…
Jak se věda vyvíjí rychlým tempem a přebírá mnoho našeho úsilí, stoupá také riziko, že se vystavíme nevysvětlitelné singularitě. Přečtěte si, co pro nás může znamenat singularita.
Přečtěte si blog, abyste co nejjednodušším způsobem poznali různé vrstvy v architektuře velkých dat a jejich funkce.
Způsoby ukládání dat se mohou vyvíjet od narození dat. Tento blog se zabývá vývojem ukládání dat na základě infografiky.
V tomto digitálním světě se chytrá domácí zařízení stala klíčovou součástí života. Zde je několik úžasných výhod chytrých domácích zařízení o tom, jak náš život stojí za to žít a zjednodušit jej.
Apple nedávno vydal doplňkovou aktualizaci macOS Catalina 10.15.4, která opravuje problémy, ale zdá se, že aktualizace způsobuje další problémy, které vedou k zablokování počítačů mac. Přečtěte si tento článek a dozvíte se více