Hvordan sette opp en Tekkit Classic Server på Ubuntu 16.10
Bruker du et annet system? Hva er Tekkit Classic? Tekkit Classic er en modpack for spillet alle kjenner og elsker; Minecraft. Den inneholder noe av ver
Supervisor er et klient/serversystem som brukes til å kontrollere en rekke UNIX-prosesser, nærmere bestemt prosesser knyttet til et prosjekt eller en kunde. Du kan for eksempel bruke supervisor til å skape og overvåke et vilkårlig antall arbeiderkøer i nettapplikasjonen din.
Komponentene i dette systemet er:
I denne opplæringen vil vi installere den mest oppdaterte versjonen av supervisor, demonstrere hvordan du spawner og administrerer programmer gjennom supervisorctl
, og konfigurerer et nettgrensesnitt for å administrere programmene våre.
Vi vil installere supervisor gjennom easy_install
, en funksjon i pythons oppsettverktøy.
Oppdater først den lokale pakkelisten og installer deretter python setuptools
.
sudo apt-get update && sudo apt-get install python-setuptools
Nå kan vi installere supervisor.
sudo easy_install supervisor
Når installasjonen er fullført, må vi generere konfigurasjonsfilen vår. Lag en mappe som heter supervisor
inni /etc
.
sudo mkdir /etc/supervisor
Og utfør deretter følgende.
echo_supervisord_conf > /etc/supervisor/supervisord.conf
Hvis du ikke er logget inn med root
brukeren, kan du få en Permission denied
feilmelding (selv med sudo
). Dette er på grunn av omdirigeringen. For å overvinne dette, logg inn som root.
sudo su
Deretter kan du kjøre kommandoen på nytt.
echo_supervisord_conf > /etc/supervisor/supervisord.conf
Du kan nå la root
brukeren stå med exit
kommandoen. Den echo_supervisord_conf
kommandoen ble levert av vår veileder installasjon.
Åpne /etc/supervisor/supervisord.conf
filen og sjekk innholdet. Du vil merke at denne konfigurasjonsfilen følger INI
syntaksen, og den er delt inn etter seksjoner (representert med parentes som i [section-name]
).
For å legge til programmer som skal administreres av veileder, trenger vi bare å lage de riktige [program]
delene. Men for å unngå å rote rundt med hovedkonfigurasjonsfilen hver gang vi trenger å legge til (eller endre) et program, vil vi bruke [include]
delen. Finn denne delen, fjern kommentarer og rediger den slik at den ser slik ut.
[include]
files=conf.d/*.conf
Nå for hvert program vi ønsker å legge til, vil vi lage en .ini
fil inne i /etc/supervisor/conf.d/
katalogen. La oss lage denne mappen.
sudo mkdir /etc/supervisor/conf.d
Som nevnt tidligere, er supervisor sammensatt av en server og klienter som kobles til den. For å kunne administrere og kontrollere programmer, må vi starte serveren. For å gjøre dette, vil vi registrere supervisor-serveren i systemd
, slik at serveren kan startes ved systemstart.
For å gjøre det, lag en fil som heter supervisord.service
i /etc/systemd/system
katalogen.
sudo touch /etc/systemd/system/supervisord.service
Legg til følgende innhold i filen.
[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
Aktiver veiledertjenesten.
sudo systemctl start supervisord.service
Så lenge tjenestefilen ligger i /etc/systemd/system
katalogen, vil den automatisk startes ved systemstart.
Du kan sjekke statusen til tjenesten.
systemctl status supervisord.service
Du kan også sjekke loggene.
sudo journalctl -u supervisord.service
Programmene kontrollert av veileder er gitt av forskjellige [program]
seksjoner i konfigurasjonen. For hvert program vi ønsker å administrere, vil vi lage en frittstående konfigurasjonsfil som informerer om den kjørbare kommandobanen, eventuelle miljøvariabler, hvordan de skal utføres i tilfelle en nedleggelse.
La oss først lage et enkelt skript som logger et tidsstempel. Opprett en fil kalt hello_supervisor.sh
(hvor som helst du ønsker, vi vil referere til hele banen til dette skriptet).
touch hello_supervisor.sh
Legg nå følgende innhold inn i den
#!/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
Gjør den nå kjørbar
chmod +x hello_supervisor.sh
Rent praktisk er dette skriptet ganske ubrukelig. Vi kan imidlertid bruke det til å demonstrere makten til veileder. Opprett den tilsvarende konfigurasjonsfilen ved å kjøre følgende.
sudo touch /etc/supervisor/conf.d/hello_supervisor.conf
Legg nå følgende innhold inn i denne filen.
[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
Merk: Pass på å erstatte USER
med brukernavnet ditt.
Vi vil gå gjennom denne konfigurasjonen trinn for trinn.
[program:hello_supervisor]
command=/home/USER/hello_supervisor.sh
Først begynner konfigurasjonen med å definere et program med navnet hello_supervisor . Den informerer også hele banen til den kjørbare filen som skal kjøres.
autostart=true
Denne linjen sier at dette programmet skal startes automatisk når supervisor startes.
autorestart=true
Hvis programmet avsluttes, av en eller annen grunn, informerer denne linjen veilederen om automatisk å starte prosessen på nytt.
stderr_logfile=/var/log/hello_supervisor.err.log
stdout_logfile=/var/log/hello_supervisor.out.log
Disse linjene definerer loggfil stedet for stderr
og stdout
, henholdsvis.
Nå som vi har installert og konfigurert supervisor, kan vi administrere prosessene våre.
Etter å ha lagt til et nytt program, bør vi kjøre følgende to kommandoer, for å informere serveren om å lese konfigurasjonsfilene på nytt og ta i bruk eventuelle endringer.
sudo supervisorctl reread
sudo supervisorctl update
Utfør nå supervisorctl
klienten.
sudo supervisorctl
Du vil bli møtt med en liste over de registrerte prosessene. Du vil se en prosess kalt hello_supervisor
med en RUNNING
status.
hello_supervisor RUNNING pid 6853, uptime 0:22:30
supervisor>
Skriv help
for en liste over tilgjengelige kommandoer.
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
I et nøtteskall kan vi start
, stop
og restart
programmer ved å sende programnavnet som et argument til den respektive kommandoen.
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>
Vi kan også ta en titt på programutgangen med tail
kommandoen.
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
For stderr
utgangen kan du også bruke 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!
Ved å påkalle status
kommandoen kan du se statusen til alle registrerte programmer.
Når du er ferdig, kan du slutte.
supervisor> quit
For å gi tilgang til supervisor-nettserveren, åpne supervisor-konfigurasjonsfilen og finn [inet_http_server]
seksjonen.
nano /etc/supervisor/supervisord.conf
Oppdater nå denne delens konfigurasjon med følgende.
[inet_http_server]
port=*:9001
username=your_username
password=your_password
Bytt ut your_username
og your_password
med ønsket legitimasjon, lagre endringene og start tilsynstjenesten på nytt.
sudo systemctl restart supervisord.service
Husk å gi TCP
tilgang til porten 9001
på brannmuren og deretter tilgang http://{server-ip}:9001
fra nettleseren. Når du blir spurt, oppgi din username
og password
. Du kan nå kontrollere prosessene dine fra nettet.
Vi har installert den mest oppdaterte versjonen av supervisord, lært hvordan du konfigurerer den for automatisk systemstart med systemd og har også gjennomgått en grunnleggende bruk av supervisorctl
. For mer avansert konfigurasjon og brukstilfeller kan du se den offisielle veilederdokumentasjonen .
Bruker du et annet system? Hva er Tekkit Classic? Tekkit Classic er en modpack for spillet alle kjenner og elsker; Minecraft. Den inneholder noe av ver
Bruker du et annet system? Jekyll er et flott alternativ til WordPress for blogging eller deling av innhold. Det krever ingen databaser, og det er veldig enkelt, jeg
PHP og relaterte pakker er de mest brukte komponentene når du distribuerer en webserver. I denne artikkelen vil vi lære hvordan du setter opp PHP 7.0 eller PHP 7.1 o
Squid er et populært, gratis Linux-program som lar deg lage en webproxy for videresending. I denne veiledningen vil du se hvordan du installerer Squid på CentOS for å gjøre deg om
Introduksjon Lighttpd er en apachegaffel som har som mål å være mye mindre ressurskrevende. Den er lett, derav navnet, og er ganske enkel å bruke. Installer
Yii er et PHP-rammeverk som lar deg utvikle applikasjoner raskere og enklere. Det er enkelt å installere Yii på Ubuntu, som du vil lære nøyaktig
Denne opplæringen forklarer hvordan du setter opp en DNS-server ved å bruke Bind9 på Debian eller Ubuntu. Bytt ut ditt-domenenavn.com gjennom hele artikkelen. På th
VULTR har nylig gjort endringer på sin side, og alt skal nå fungere bra ut av boksen med NetworkManager aktivert. Skulle du ønske å deaktivere
Icinga2 er et kraftig overvåkingssystem, og når det brukes i en master-klient-modell, kan det erstatte behovet for NRPE-baserte overvåkingskontroller. Mester-klienten
Bruker du et annet system? Red5 er en åpen kildekode medieserver implementert i Java som lar deg kjøre Flash flerbrukerapplikasjoner som live streamin
I denne artikkelen vil vi se hvordan du kompilerer og installerer Nginx mainline fra de offisielle kildene til Nginx med PageSpeed-modulen, som lar deg t
Bruker du et annet system? Apache Cassandra er et gratis og åpen kildekode NoSQL-databasebehandlingssystem som er designet for å gi skalerbarhet, høy
Bruker du et annet system? Apache Cassandra er et gratis og åpen kildekode NoSQL-databasebehandlingssystem som er designet for å gi skalerbarhet, høy
Bruker du et annet system? Vanilla forum er en åpen kildekode-forumapplikasjon skrevet i PHP. Det er en fullt tilpassbar, enkel å bruke og støtter ekstern
Bruker du et annet system? Introduksjon Kanboard er et gratis og åpen kildekodeprogram for prosjektledelse som er designet for å forenkle og visualisere
Bruker du et annet system? Introduksjon Kanboard er et gratis og åpen kildekodeprogram for prosjektledelse som er designet for å forenkle og visualisere
Bruker du et annet system? Gitea er et alternativt åpen kildekode, selvdrevet versjonskontrollsystem drevet av Git. Gitea er skrevet på Golang og er
Bruker du et annet system? Gitea er et alternativt, selvdrevet versjonskontrollsystem med åpen kildekode drevet av git. Gitea er skrevet på Golang og er
Bruker du et annet system? Thelia er et åpen kildekodeverktøy for å lage e-business-nettsteder og administrere nettinnhold skrevet i PHP. Thelia kildekode i
Bruker du et annet system? MODX Revolution er et raskt, fleksibelt, skalerbart, gratis og åpen kildekode, enterprise-grade Content Management System (CMS) skrevet i
Kunstig intelligens er ikke i fremtiden, det er her akkurat i nåtiden I denne bloggen Les hvordan kunstig intelligens-applikasjoner har påvirket ulike sektorer.
Er du også et offer for DDOS-angrep og forvirret over forebyggingsmetodene? Les denne artikkelen for å løse spørsmålene dine.
Du har kanskje hørt at hackere tjener mye penger, men har du noen gang lurt på hvordan tjener de den slags penger? la oss diskutere.
Vil du se revolusjonerende oppfinnelser fra Google og hvordan disse oppfinnelsene forandret livet til alle mennesker i dag? Les deretter til bloggen for å se oppfinnelser fra Google.
Konseptet med selvkjørende biler som skal ut på veiene ved hjelp av kunstig intelligens er en drøm vi har hatt en stund nå. Men til tross for flere løfter, er de ingen steder å se. Les denne bloggen for å lære mer...
Ettersom vitenskapen utvikler seg raskt og tar over mye av innsatsen vår, øker også risikoen for å utsette oss for en uforklarlig singularitet. Les hva singularitet kan bety for oss.
Lagringsmetodene for dataene har vært i utvikling kan være siden fødselen av dataene. Denne bloggen dekker utviklingen av datalagring på grunnlag av en infografikk.
Les bloggen for å kjenne ulike lag i Big Data Architecture og deres funksjoner på den enkleste måten.
I denne digitaldrevne verden har smarthusenheter blitt en avgjørende del av livet. Her er noen fantastiske fordeler med smarthusenheter om hvordan de gjør livet vårt verdt å leve og enklere.
Nylig lanserte Apple macOS Catalina 10.15.4 en tilleggsoppdatering for å fikse problemer, men det ser ut til at oppdateringen forårsaker flere problemer som fører til muring av mac-maskiner. Les denne artikkelen for å lære mer