Introduksjon
Forutsetninger
Oppdater systemet
Forbereder brannmuren
Installerer Grafana
Aktivering av et HTTPS-sertifikat for Grafana (valgfritt)
Introduksjon
Grafana er en åpen kildekode-programvare som transformerer flere feeder fra systemer som Graphite, Telegraf og InfluxDB til vakre beregninger i et sentralisert dashbord.
Denne opplæringen vil dekke prosessen med å installere Grafana-nettgrensesnittet.
Forutsetninger
Oppdater systemet
Oppdater systemet før du installerer Grafana.
apt-get update && apt-get upgrade
Forbereder brannmuren
La oss først herde bildet litt. La oss også sjekke om bildet som er klargjort er ufwaktivert.
root@vultr:~# ufw status
Status: inactive
Som standard er den deaktivert, så vi må legge til noen regler:
- Regel 1: ssh: TCP-port 22
- Regel 2: http: TCP-port 3000 (standard Grafana-port)
Utfør følgende kommandoer en etter en.
ufw allow 22/tcp
ufw allow 3000/tcp
Aktiver brannmurtjenestene.
ufw enable
Brannmuren vil be en dialogboks for å godta endringer. Bare trykk på Y.
Command may disrupt existing ssh connections. Proceed with operation (y|n)?
Installerer Grafana
Som standard er ikke Grafana i depotene. Legg til repo-nøkkelen og pakkene.
curl https://packagecloud.io/gpg.key | sudo apt-key add -
Deretter legger du til "packagecloud"-depotet til depotene dine.
add-apt-repository "deb https://packagecloud.io/grafana/stable/debian/ stretch main"
Oppdater for aptå hente den nyeste informasjonen fra vår nylig lagt til "packagecloud"-repo.
apt-get update
Nå kan vi installere Grafana.
apt-get install grafana
Når Grafana er installert, start den med systemctl.
systemctl start grafana-server
Dette vil vise en fungerende Grafana-tjeneste.
systemctl status grafana-server
Start Grafana-tjenesten ved oppstart.
systemctl enable grafana-server
Deaktivere Grafana-registreringer og anonym tilgang
Ut av esken lar Grafana besøkende opprette brukerkontoer og forhåndsvise dashboards uten å registrere seg. Dette betyr at vi utsetter Grafana for det offentlige internett. Men ikke bekymre deg, la oss finne og deaktivere disse innstillingene.
Åpne først Grafanas konfigurasjonsfil.
nano /etc/grafana/grafana.ini
Finn allow_sign_upinnstillingene under [users]overskriften.
[users]
# disable user signup / registration
;allow_sign_up = true
Som standard er den satt til true, så endre den til falseog opphev kommentarfeltet.
[users]
# disable user signup / registration
allow_sign_up = false
Deretter kontrollerer du at anonym tilgang er deaktivert. Denne finner du under [auth.anonymous]innstillingene.
[auth.anonymous]
# enable anonymous access
;enabled = false
Endre den til falseog fjern kommenter linjen.
[auth.anonymous]
enabled = false
Avslutt nanoog lagre filen.
For å aktivere endringene, start Grafana på nytt.
systemctl restart grafana-server
Bekreft nå at alt fungerer ved å sjekke Grafanas servicestatus.
systemctl status grafana-server
Grafana-demonen lytter til port 3000. For å besøke Grafana Dashboard, pek nettleseren din til http://192.168.0.1:3000(erstatt denne IP-en med din faktiske server-IP), og bruk standard påloggingsinformasjon nedenfor.
Username: admin
Password: admin
Aktivering av et HTTPS-sertifikat for Grafana (valgfritt)
Dette er et valgfritt trinn. Hvis vi har et konfigurert DNS-navn, kan vi bruke Let's encrypt for å aktivere HTTPSvår nye Grafana-installasjon.
Installasjon og konfigurasjon av Nginx
For å oppnå dette vil vi bruke Nginx, da denne programvaren er i stand til å bruke Let's Encrypt-sertifikater.
Start med å installere Nginx.
apt-get install nginx
Når den er installert, rediger standardkonfigurasjonen.
nano /etc/nginx/sites-available/default
Erstatt standardkonfigurasjonen med følgende konfigurasjon.
server {
listen 0.0.0.0:80;
proxy_request_buffering off;
proxy_buffering off;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $server_name;
}
}
Dette vil opprette en proxy for nettstedet som kjører ved port 80. Start Nginx på nytt, og aktiver det ved oppstart.
systemctl restart nginx
systemctl enable nginx
Sørg for at alt fungerer.
systemctl status nginx
Deaktiver den gamle Grafana-porten 3000og tillat trafikk på havnen 80.
ufw allow 80/tcp
ufw delete allow 3000/tcp
Installerer Let's Encrypt
Før vi kan bruke certbot, må vi legge til riktig PPA til systemet som inneholder våre certbot-pakker.
add-apt-repository ppa:certbot/certbot
Trykk for ENTERå godta konfigurasjonsendringen.
Oppdater for aptå samle de nye pakkene.
apt-get update
Installer deretter Nginx-modulen for å tildele sertifikatene.
apt-get -y install python-certbot-nginx
Konfigurering av sertifikater
Konfigurer brannmuren for å tillate HTTPSgjennom brannmuren.
ufw allow 443/tcp
Før vi kan be om nye sertifikater, trenger vi et DNS-navn.
nano /etc/nginx/sites-available/default
Legg til følgende server_nameinnstilling. Dette er DNS-navnet vårt.
server_name grafana.example.com;
Endre konfigurasjonen for å gjenspeile denne nye innstillingen.
server {
server_name grafana.example.com;
listen 0.0.0.0:80;
proxy_request_buffering off;
proxy_buffering off;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $server_name;
}
}
Pass på at vi ikke gjorde noen feil og start Nginx på nytt.
nginx -t
systemctl restart nginx
Be nå om et sertifikat med certbot.
certbot --nginx -d grafana.example.com
Oppgi e-posten din og godta spørsmål fra installatøren. Du kan trygt si "Nei" til å dele e-posten din. Certbot vil automatisk spørre hva de skal gjøre med HTTPS. Vi vil bruke alternativ 2: omdirigere til HTTPS.
Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
-------------------------------------------------------------------------------
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
-------------------------------------------------------------------------------
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2
Automatisk fornyelse av sertifikater
La oss kryptere sertifikater krever fornyelse. Heldigvis kan vi lage en cron-jobb for dette. Start med å redigere crontab.
crontab -e
Legg til følgende linje.
05 2 * * * /usr/bin/certbot renew --quiet
Dette vil sjekke klokken 02:05 om noen sertifikater krever fornyelse, og vil fornye dem.
Grafana kjører på HTTPSnå. En siste ting er å endre administratorpassordet. Besøk installasjonen din på https://grafana.example.net. Som standard er legitimasjonen for pålogging 'admin/admin'.
For å endre admin-brukernavnet, klikk på tannhjulikonet til venstre, gå til "Configuration", deretter "Server Admin" og klikk på admin-brukernavnet.