Introducció
Requisits previs
Actualitzar el sistema
Preparant el tallafoc
Instal·lació de Grafana
Habilitació d'un certificat HTTPS per a Grafana (opcional)
Introducció
Grafana és un programari de codi obert que transforma múltiples fonts de sistemes com Graphite, Telegraf i InfluxDB en boniques mètriques en un tauler centralitzat.
Aquest tutorial tractarà el procés d'instal·lació de la interfície web de Grafana.
Requisits previs
- Una instància de servidor Ubuntu 16.04 LTS x64.
- Un usuari sudo (o compte root) .
- Opcional: un nom DNS (per utilitzar-lo amb els certificats Let's Encrypt)
Actualitzar el sistema
Actualitzeu el vostre sistema abans d'instal·lar Grafana.
apt-get update && apt-get upgrade
Preparant el tallafoc
Primer endurim una mica la imatge. Comprovem també si la imatge que s'ha subministrat està ufwhabilitada.
root@vultr:~# ufw status
Status: inactive
Per defecte està desactivat, per tant haurem d'afegir algunes regles:
- Regla 1: ssh: port TCP 22
- Regla 2: http: port TCP 3000 (port de Grafana per defecte)
Executeu les ordres següents una per una.
ufw allow 22/tcp
ufw allow 3000/tcp
Habiliteu els serveis del tallafoc.
ufw enable
El tallafoc demanarà un diàleg per acceptar els canvis. Només cal prémer Y.
Command may disrupt existing ssh connections. Proceed with operation (y|n)?
Instal·lació de Grafana
Per defecte, Grafana no es troba als repositoris. Afegiu la clau de repo i els paquets.
curl https://packagecloud.io/gpg.key | sudo apt-key add -
A continuació, afegiu el dipòsit "packagecloud" als vostres dipòsits.
add-apt-repository "deb https://packagecloud.io/grafana/stable/debian/ stretch main"
Actualitzeu aptper obtenir la informació més recent del nostre repositori "packagecloud" recentment afegit.
apt-get update
Ara podem instal·lar Grafana.
apt-get install grafana
Un cop instal·lat Grafana, inicieu-lo amb systemctl.
systemctl start grafana-server
Això mostrarà un servei Grafana en funcionament.
systemctl status grafana-server
Inicieu el servei Grafana a l'arrencada.
systemctl enable grafana-server
Desactivació de registres de Grafana i accés anònim
Fora de la caixa, Grafana permet als visitants crear comptes d'usuari i visualitzar els taulers de control sense registrar-se. Això vol dir que estem exposant Grafana a Internet pública. Però no et preocupis, cerquem i desactivem aquests paràmetres.
Obriu primer el fitxer de configuració de Grafana.
nano /etc/grafana/grafana.ini
Localitzeu la allow_sign_upconfiguració sota l' [users]encapçalament.
[users]
# disable user signup / registration
;allow_sign_up = true
De manera predeterminada, s'estableix a true, així que canvieu-lo a falsei descomenteu la línia.
[users]
# disable user signup / registration
allow_sign_up = false
A continuació, comproveu que l'accés anònim estigui desactivat. Això es pot trobar a la [auth.anonymous]configuració.
[auth.anonymous]
# enable anonymous access
;enabled = false
Canvieu-lo a falsei descomenteu la línia.
[auth.anonymous]
enabled = false
Sortiu nanoi deseu el fitxer.
Per activar els canvis, reinicieu Grafana.
systemctl restart grafana-server
Ara comproveu que tot funciona comprovant l'estat del servei de Grafana.
systemctl status grafana-server
El dimoni Grafana escolta el port 3000. Per visitar el tauler de Grafana, apunteu el vostre navegador a http://192.168.0.1:3000(substituïu aquesta IP per la IP real del vostre servidor) i utilitzeu les credencials d'inici de sessió predeterminades a continuació.
Username: admin
Password: admin
Habilitació d'un certificat HTTPS per a Grafana (opcional)
Aquest és un pas opcional. Si tenim un nom DNS configurat, podem utilitzar Let's encrypt per habilitar la HTTPSnostra nova instal·lació de Grafana.
Instal·lació i configuració de Nginx
Per aconseguir-ho, utilitzarem Nginx, ja que aquest programari és capaç d'utilitzar certificats Let's Encrypt.
Comenceu instal·lant Nginx.
apt-get install nginx
Un cop instal·lat, editeu la configuració predeterminada.
nano /etc/nginx/sites-available/default
Substituïu la configuració predeterminada per la configuració següent.
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;
}
}
Això crearà un servidor intermediari per al lloc web que s'executa al port 80. Reinicieu Nginx i activeu-lo a l'arrencada.
systemctl restart nginx
systemctl enable nginx
Assegureu-vos que tot funcioni.
systemctl status nginx
Desactiveu l'antic port de Grafana 3000i permeteu el trànsit al port 80.
ufw allow 80/tcp
ufw delete allow 3000/tcp
Instal·lació de Let's Encrypt
Abans de poder utilitzar certbot, hem d'afegir el PPA correcte al sistema que conté els nostres paquets de certbot.
add-apt-repository ppa:certbot/certbot
Premeu ENTERper acceptar el canvi de configuració.
Actualitzeu aptper reunir els nous paquets.
apt-get update
A continuació, instal·leu el mòdul Nginx per assignar els certificats.
apt-get -y install python-certbot-nginx
Configuració de certificats
Configureu el tallafoc per permetre el HTTPSpas del tallafoc.
ufw allow 443/tcp
Abans de poder sol·licitar nous certificats, necessitem un nom DNS.
nano /etc/nginx/sites-available/default
Afegiu la server_nameconfiguració següent . Aquest és el nostre nom DNS.
server_name grafana.example.com;
Canvieu la configuració per reflectir aquesta nova configuració.
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;
}
}
Assegureu-vos que no hem comès cap error i reinicieu Nginx.
nginx -t
systemctl restart nginx
Ara sol·liciteu un certificat amb certbot.
certbot --nginx -d grafana.example.com
Proporcioneu el vostre correu electrònic i accepteu les preguntes de l'instal·lador. Pots dir "No" amb seguretat per compartir el teu correu electrònic. Certbot demanarà automàticament què fer amb HTTPS. Farem servir l'opció 2: redirigir a 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
Renovació automàtica de certificats
Xifrem els certificats que requereixen renovació. Afortunadament, podem crear un treball cron per a això. Comenceu editant el crontab.
crontab -e
Afegiu la línia següent.
05 2 * * * /usr/bin/certbot renew --quiet
Això comprovarà a les 2:05 AM si cal renovar algun certificat i els renovarà.
Grafana continuarà funcionant HTTPSara. Una darrera cosa és canviar la contrasenya d'administrador. Visiteu la vostra instal·lació a https://grafana.example.net. Per defecte, les credencials per iniciar sessió són "admin/admin".
Per canviar el nom d'usuari de l'administrador, feu clic a la icona de l'engranatge de l'esquerra, aneu a "Configuració", després "Administrador del servidor" i feu clic al nom d'usuari de l'administrador.