Kan AI vechten met toenemend aantal ransomware-aanvallen?
Ransomware-aanvallen nemen toe, maar kan AI helpen het nieuwste computervirus het hoofd te bieden? Is AI het antwoord? Lees hier weten is AI boezem of vloek
Supervisor is een client / serversysteem dat wordt gebruikt om een aantal UNIX-processen te besturen, meer specifiek processen die verband houden met een project of een klant. U kunt bijvoorbeeld supervisor gebruiken om een willekeurig aantal werkwachtrijen van uw webtoepassing uit te voeren en te bewaken.
De componenten van dit systeem zijn:
In deze tutorial zullen we de meest up-to-date versie van supervisor installeren, demonstreren hoe programma's kunnen worden voortgebracht en beheerd supervisorctl
en een webinterface configureren om onze programma's te beheren.
We zullen supervisor installeren via easy_install
, een functie van de setuptools van python.
Werk eerst uw lijst met lokale pakketten bij en installeer vervolgens python setuptools
.
sudo apt-get update && sudo apt-get install python-setuptools
Nu kunnen we supervisor installeren.
sudo easy_install supervisor
Zodra de installatie is voltooid, moeten we ons configuratiebestand genereren. Maak een map met de naam supervisor
binnen /etc
.
sudo mkdir /etc/supervisor
En voer dan het volgende uit.
echo_supervisord_conf > /etc/supervisor/supervisord.conf
Als je niet bent ingelogd met de root
gebruiker, krijg je mogelijk een Permission denied
foutmelding (zelfs met sudo
). Dit komt door de omleiding. Om dit te ondervangen, log in als root.
sudo su
Vervolgens kunt u de opdracht opnieuw uitvoeren.
echo_supervisord_conf > /etc/supervisor/supervisord.conf
U kunt de root
gebruiker nu verlaten met de exit
opdracht. De echo_supervisord_conf
opdracht werd gegeven door onze supervisor-installatie.
Open het /etc/supervisor/supervisord.conf
bestand en controleer de inhoud. U zult opmerken dat dit configuratiebestand de INI
syntaxis volgt en wordt gedeeld door secties (weergegeven door haakjes zoals in [section-name]
).
Om programma's toe te voegen die door de supervisor moeten worden beheerd, hoeven we alleen de juiste [program]
secties te maken. Om te voorkomen dat we elke keer dat we een programma moeten toevoegen (of wijzigen) met het hoofdconfiguratiebestand rommelen, gebruiken we de [include]
sectie. Zoek dit gedeelte, verwijder het commentaar en bewerk het zodat het er als volgt uitziet.
[include]
files=conf.d/*.conf
Voor elk programma dat we willen toevoegen, maken we nu een .ini
bestand aan in de /etc/supervisor/conf.d/
directory. Laten we deze map maken.
sudo mkdir /etc/supervisor/conf.d
Zoals eerder opgemerkt bestaat de supervisor uit een server en clients die er verbinding mee maken. Om programma's te kunnen beheren en controleren, moeten we de server starten. Om dit te doen, zullen we de supervisor-server registreren in systemd
, zodat de server kan worden gestart bij het opstarten van het systeem.
Maak hiervoor een bestand met de naam supervisord.service
in de /etc/systemd/system
directory.
sudo touch /etc/systemd/system/supervisord.service
Voeg de volgende inhoud toe aan het bestand.
[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
Activeer de supervisordienst.
sudo systemctl start supervisord.service
Zolang het servicebestand zich in de /etc/systemd/system
directory bevindt, wordt het automatisch gestart bij het opstarten van het systeem.
U kunt de status van de dienst controleren.
systemctl status supervisord.service
Je kunt ook de logboeken bekijken.
sudo journalctl -u supervisord.service
De programma's die door de supervisor worden beheerd, worden gegeven door verschillende [program]
secties in de configuratie. Voor elk programma dat we willen beheren, zullen we een stand-alone configuratiebestand maken met informatie over het uitvoerbare pad van de opdracht, eventuele omgevingsvariabelen en hoe deze moeten worden uitgevoerd in het geval van een shutdown.
Laten we eerst een eenvoudig script maken dat een tijdstempel vastlegt. Maak een bestand met de naam hello_supervisor.sh
(waar u maar wilt, we verwijzen naar het volledige pad van dit script).
touch hello_supervisor.sh
Plaats nu de volgende inhoud erin
#!/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
Maak het nu uitvoerbaar
chmod +x hello_supervisor.sh
Praktisch gezien is dit script vrijwel nutteloos. We kunnen het echter gebruiken om de kracht van de supervisor te demonstreren. Maak het bijbehorende configuratiebestand door het volgende uit te voeren.
sudo touch /etc/supervisor/conf.d/hello_supervisor.conf
Zet nu de volgende inhoud in dit bestand.
[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
Opmerking: zorg ervoor dat u deze vervangt USER
door uw gebruikersnaam.
We zullen deze configuratie stap voor stap bekijken.
[program:hello_supervisor]
command=/home/USER/hello_supervisor.sh
Ten eerste begint de configuratie met het definiëren van een programma met de naam hello_supervisor . Het informeert ook het volledige pad van het uit te voeren bestand.
autostart=true
Deze regel geeft aan dat dit programma automatisch moet worden gestart wanneer de supervisor wordt gestart.
autorestart=true
Als het programma om welke reden dan ook stopt, informeert deze regel de supervisor om het proces automatisch opnieuw te starten.
stderr_logfile=/var/log/hello_supervisor.err.log
stdout_logfile=/var/log/hello_supervisor.out.log
Deze regels bepalen de logfile locatie stderr
en stdout
resp.
Nu we supervisor hebben geïnstalleerd en geconfigureerd, kunnen we onze processen beheren.
Nadat we een nieuw programma hebben toegevoegd, moeten we de volgende twee opdrachten uitvoeren om de server te informeren de configuratiebestanden opnieuw te lezen en eventuele wijzigingen toe te passen.
sudo supervisorctl reread
sudo supervisorctl update
Voer nu de supervisorctl
client uit.
sudo supervisorctl
U wordt begroet met een lijst van de geregistreerde processen. U ziet een proces dat wordt opgeroepen hello_supervisor
met een RUNNING
status.
hello_supervisor RUNNING pid 6853, uptime 0:22:30
supervisor>
Typ help
voor een lijst met beschikbare opdrachten.
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
In een notendop, kunnen we start
, stop
en restart
programma's die door het passeren van de naam van het programma als een argument om de betreffende opdracht.
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>
We kunnen ook de programma-uitvoer bekijken met de tail
opdracht.
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
Voor de stderr
uitvoer kunt u ook gebruiken tail
.
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!
Door de status
opdracht op te roepen , kunt u de status van alle geregistreerde programma's bekijken.
Als je klaar bent, kun je stoppen.
supervisor> quit
Om toegang tot de supervisord-webserver toe te staan, opent u het supervisord-configuratiebestand en zoekt u de [inet_http_server]
sectie.
nano /etc/supervisor/supervisord.conf
Werk nu de configuratie van deze sectie bij met het volgende.
[inet_http_server]
port=*:9001
username=your_username
password=your_password
Vervang your_username
en your_password
met uw gewenste gegevens, sla uw wijzigingen en de herstart-supervisordienst op.
sudo systemctl restart supervisord.service
Vergeet niet om TCP
toegang tot de poort 9001
op uw firewall toe te staan en vervolgens toegang http://{server-ip}:9001
vanuit uw browser. Geef desgevraagd uw username
en password
. U kunt nu uw processen vanaf het web beheren.
We hebben de meest up-to-date versie van supervisord geïnstalleerd, hebben geleerd hoe deze te configureren voor automatisch starten van het systeem met systemd en hebben ook een basisgebruik van beoordeeld supervisorctl
. Voor meer geavanceerde configuratie en gebruikssituaties kunt u de officiële supervisordocumentatie raadplegen .
Ransomware-aanvallen nemen toe, maar kan AI helpen het nieuwste computervirus het hoofd te bieden? Is AI het antwoord? Lees hier weten is AI boezem of vloek
ReactOS, een open source en gratis besturingssysteem is hier met de nieuwste versie. Kan het voldoen aan de behoeften van moderne Windows-gebruikers en Microsoft uitschakelen? Laten we meer te weten komen over deze oude stijl, maar een nieuwere OS-ervaring.
WhatsApp heeft eindelijk de Desktop-app voor Mac- en Windows-gebruikers gelanceerd. Nu heb je eenvoudig toegang tot WhatsApp vanuit Windows of Mac. Beschikbaar voor Windows 8+ en Mac OS 10.9+
Lees dit om te weten hoe kunstmatige intelligentie populair wordt onder de kleinschalige bedrijven en hoe het de kansen vergroot om ze te laten groeien en hun concurrenten voorsprong te geven.
Onlangs heeft Apple macOS Catalina 10.15.4 uitgebracht, een aanvullende update om problemen op te lossen, maar het lijkt erop dat de update meer problemen veroorzaakt die ertoe leiden dat mac-machines worden gemetseld. Lees dit artikel voor meer informatie
13 Commerciële data-extractietools voor big data
Onze computer slaat alle gegevens op een georganiseerde manier op, het zogenaamde Journaling-bestandssysteem. Het is een efficiënte methode waarmee de computer bestanden kan zoeken en weergeven zodra u op zoeken drukt.https://wethegeek.com/?p=94116&preview=true
Naarmate de wetenschap zich snel ontwikkelt en veel van onze inspanningen overneemt, nemen ook de risico's toe om onszelf te onderwerpen aan een onverklaarbare singulariteit. Lees, wat singulariteit voor ons kan betekenen.
Een inzicht in 26 Big Data-analysetechnieken: deel 1
AI in de zorg heeft de afgelopen decennia grote sprongen gemaakt. De toekomst van AI in de gezondheidszorg groeit dus nog steeds met de dag.