User Tools

Site Tools


tecnologia:red:monitorizacion

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
tecnologia:red:monitorizacion [2021/11/23 00:10] – josetecnologia:red:monitorizacion [2021/11/23 00:13] (current) – jose
Line 1: Line 1:
-====== Instalación Raspberry ====== +Usaremos librenms para la monitorización
-Descargamos la imagen de raspberry: +
- +
-https://www.raspberrypi.com/software/operating-systems/ +
- +
-He descargado la lite. +
- +
-La planchamos en una micro SD que no esté montada: +
-  dd if=2021-10-30-raspios-bullseye-armhf-lite.img of=/dev/mmcblk0 bs=4M +
-Tarda en mi portátil unos 50 segundos: +
-<code> +
-466+0 records in +
-466+0 records out +
-1954545664 bytes (2.0 GB, 1.8 GiB) copied, 50.1178 s, 39.0 MB/s +
- +
-real 0m50.120s +
-user 0m0.001s +
-sys 0m1.786s +
-</code> +
- +
-Para poder conectarnos sin necesidad de teclado ni pantalla, le damos IP y configuramos SSH: +
- +
-Nos ha creado dos particiones: +
-  * boot +
-  * rootfs +
- +
-===== IP Fija ===== +
-Pondremos una IP del rango admin del EKO, que es 192.168.0.x \\ +
-Por ejemplo 192.168.0.10 +
- +
-Editamos el fichero: +
-  rootfs/etc/dhcpcd.conf +
-<code> +
-interface eth0 +
-static ip_address=192.168.0.10/24 +
-static routers=192.168.0.1 +
-static domain_name_servers=8.8.8.8 +
-</code> +
- +
-===== Habilitar SSH ===== +
-Creamos un fichero que se llame ssh en la partición boot. Da igual que esté vacio. Podemos hacer:  +
-  touch boot/ssh +
- +
-Metemos la tarjeta en la Raspberry y la arrancamos. Tarda un poco al ser la primera vez porque hace resize de tarjeta, inicia servicios.... +
- +
-Conectamos por ssh y cambiamos timezone: +
-  rm /etc/timezone +
-  ln -s /usr/share/zoneinfo/Europe/Madrid /etc/timezone +
- +
-  timedatectl set-timezone Europe/Madrid +
- +
-====== Instalación de LibreMS ====== +
-Fuente: https://docs.librenms.org/Installation/Install-LibreNMS/ (para debian 11) +
- +
-Como root: +
-  apt install acl curl composer fping git graphviz imagemagick mariadb-client mariadb-server mtr-tiny nginx-full nmap php7.4-cli php7.4-curl php7.4-fpm php7.4-gd php7.4-gmp php7.4-json php7.4-mbstring php7.4-mysql php7.4-snmp php7.4-xml php7.4-zip python3-dotenv python3-pip python3-pymysql python3-redis python3-setuptools python3-systemd rrdtool snmp snmpd whois +
-   +
-  useradd librenms -d /opt/librenms -M -r -s "$(which bash)" +
- +
-  cd /opt +
-  git clone https://github.com/librenms/librenms.git +
- +
-  chown -R librenms:librenms /opt/librenms +
-  chmod 771 /opt/librenms +
-  setfacl -d -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/ +
-  setfacl -R -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/ +
- +
-Cambiamos a usuario librenms +
-  su - librenms +
-Ejecutamos script: +
-  ./scripts/composer_wrapper.php install --no-dev +
-Volvemos a root +
-  exit +
-Cambiamos timezone en php: +
-  vi /etc/php/7.4/fpm/php.ini +
-  vi /etc/php/7.4/cli/php.ini +
-En la sección [Date] cambiamos +
-  [Date] +
-  ; Defines the default timezone used by the date functions +
-  ; http://php.net/date.timezone +
-  ;date.timezone = +
- +
-Por: +
-  date.timezone = Europe/Madrid +
- +
-Configuración BBDD: +
- +
-  vi /etc/mysql/mariadb.conf.d/50-server.cnf +
-   +
-En la sección [mysqld] añadir: +
-  innodb_file_per_table=1 +
-  lower_case_table_names=0 +
-   +
-Habilitamos mariadb para que arranque al reiniciar y reiniciamos mariadb +
-  systemctl enable mariadb +
-  systemctl restart mariadb +
- +
-Creamos la BBDD de librenms +
- +
-  mysql -u root +
- +
-<code> +
-CREATE DATABASE librenms CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; +
-CREATE USER 'librenms'@'localhost' IDENTIFIED BY 'password'; +
-GRANT ALL PRIVILEGES ON librenms.* TO 'librenms'@'localhost'; +
-FLUSH PRIVILEGES; +
-exit +
-</code> +
- +
-Configuración php +
-  mv /etc/php/7.4/fpm/pool.d/www.conf /etc/php/7.4/fpm/pool.d/librenms.conf +
-  vi /etc/php/7.4/fpm/pool.d/librenms.conf +
- +
-Cambiar [www] a [librenms]:  +
- +
-Cambiar +
-  user = www-data +
-  group = www-data +
-Por +
-  user = librenms +
-  group = librenms +
- +
-Cambiar +
-  listen = /run/php/php7.4-fpm.sock +
-por +
-  listen = /run/php-fpm-librenms.sock +
- +
-Configuración nginx: +
-  vi /etc/nginx/sites-enabled/librenms.vhost +
-Cambiad server_name por el que toque: +
-<code> +
-server { +
- listen      80; +
- server_name librenmseko.lobo99.info; +
- root        /opt/librenms/html; +
- index       index.php; +
- +
- charset utf-8; +
- gzip on; +
- gzip_types text/css application/javascript text/javascript application/x-javascript image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon; +
- location / { +
-  try_files $uri $uri/ /index.php?$query_string; +
- } +
- location ~ [^/]\.php(/|$) { +
-  fastcgi_pass unix:/run/php-fpm-librenms.sock; +
-  fastcgi_split_path_info ^(.+\.php)(/.+)$; +
-  include fastcgi.conf; +
- } +
- location ~ /\.(?!well-known).* { +
-  deny all; +
- } +
-} +
-</code> +
- +
-rm /etc/nginx/sites-enabled/default +
-systemctl reload nginx +
-systemctl restart php7.4-fpm +
- +
-Activra autocompletado lnms +
-  ln -s /opt/librenms/lnms /usr/bin/lnms +
-  cp /opt/librenms/misc/lnms-completion.bash /etc/bash_completion.d/ +
- +
-Configurar snmpd +
-  cp /opt/librenms/snmpd.conf.example /etc/snmp/snmpd.conf +
- +
-Cambiamos RANDOMSTRINGGOESHERE por public +
-  vi /etc/snmp/snmpd.conf +
- +
-  com2sec readonly  default         RANDOMSTRINGGOESHERE +
-por +
-  com2sec readonly  default         public +
- +
- +
-Cronjob +
-  cp /opt/librenms/librenms.nonroot.cron /etc/cron.d/librenms +
-logrotate: +
-  cp /opt/librenms/misc/librenms.logrotate /etc/logrotate.d/librenms +
- +
-Acabamos la instalación vía web. Vamos a la url que hayamos puesto: +
- +
-http://librenmseko.lobo99.info +
- +
-Pulsamos en Configure BBDD: +
- +
-{{:tecnologia:red:librenms01.png?400|}} +
- +
-La contraseña es password (la hemos puesto al crear la bbdd) y pulsamos Check Credentials: +
- +
-{{:tecnologia:red:librenms02.png?400|}} +
- +
-Pulsamos Build Database: +
- +
-{{:tecnologia:red:librenms03.png?400|}} +
- +
-Pulsamos el siguiente paso "Create Admin User": +
- +
-{{:tecnologia:red:librenms04.png?400|}} +
- +
-Creamos el usuario: +
- +
-{{:tecnologia:red:librenms05.png?400|}} +
- +
-Pulsamos Finish install: +
- +
-{{:tecnologia:red:librenms06.png?400|}} +
- +
-Aparece esta pantalla. Pulsamos "validate your install" y nos logamos: +
- +
-{{:tecnologia:red:librenms07.png?400|}} +
- +
- +
-Aparecen estos errores y el resto ok: +
- +
-{{:tecnologia:red:librenms08.png?400|}} +
- +
-Lo primero es un warning porque no evidentemente no hemos creado ningun servidor a monitorizar. +
- +
-La segunda es de tiempo, no sé porque da... Lo arreglamos así desde la raspberry: +
-  sudo mysql -u root +
- +
-Seleccionamos la BBDD con:  +
-  use librenms +
- +
-  MariaDB [(none)]> use librenms +
- +
-  Reading table information for completion of table and column names +
-  You can turn off this feature to get a quicker startup with -A +
- +
-  Database changed +
-  MariaDB [librenms]>  +
- +
-Y copiamos los comandos que pone: +
-  SET TIME_ZONE='+00:00'; +
-  ALTER TABLE `notifications` CHANGE `datetime` `datetime` timestamp NOT NULL DEFAULT '1970-01-02 00:00:00' ; +
-  ALTER TABLE `users` CHANGE `created_at` `created_at` timestamp NOT NULL DEFAULT '1970-01-02 00:00:01' ; +
- +
-<code> +
-MariaDB [librenms]> SET TIME_ZONE='+00:00'; +
-Query OK, 0 rows affected (0.000 sec) +
- +
-MariaDB [librenms]> ALTER TABLE `notifications` CHANGE `datetime` `datetime` timestamp NOT NULL DEFAULT '1970-01-02 00:00:00' ; +
-Query OK, 0 rows affected (0.006 sec) +
-Records: 0  Duplicates: 0  Warnings: 0 +
- +
-MariaDB [librenms]> ALTER TABLE `users` CHANGE `created_at` `created_at` timestamp NOT NULL DEFAULT '1970-01-02 00:00:01' ; +
-Query OK, 0 rows affected (0.010 sec) +
-Records: 0  Duplicates: 0  Warnings: 0 +
-</code> +
- +
-Salimos con exit y reiniciamos mariadb: +
-  sudo systemctl restart mariadb +
- +
-Si ahora vamos a: +
- +
-http://librenmseko.lobo99.info/validate +
- +
-Vemos que todo está ok (menos lo de añadir un host): +
- +
-{{:tecnologia:red:librenms09.png?400|}}+
tecnologia/red/monitorizacion.1637626230.txt.gz · Last modified: by jose