AWS Deployment - CPNV-ES-MAS3-X/LibreNMS-Containerization GitHub Wiki

AWS Deployment

Prepare instance

  • To update the packages
[INPUT]
sudo apt update

Storage settings

  • Identify the dedicated disk for LibreNMS
[INPUT]
lsblk

[OUTPUT]
NAME         MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
nvme1n1      259:0    0   50G  0 disk                                       //le disque à monter
nvme0n1      259:1    0    8G  0 disk
├─nvme0n1p1  259:2    0  7.9G  0 part /
├─nvme0n1p14 259:3    0    3M  0 part
└─nvme0n1p15 259:4    0  124M  0 part /boot/efi
  • Set File System
[INPUT]
sudo mkfs.ext4 /dev/nvme1n1

[OUTPUT]
mke2fs 1.47.0 (5-Feb-2023)
Creating filesystem with 13107200 4k blocks and 3276800 inodes
Filesystem UUID: 4b581a36-a477-4067-bcc0-e32ef2c7acfa
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
        4096000, 7962624, 11239424

Allocating group tables: done
Writing inode tables: done
Creating journal (65536 blocks): done
Writing superblocks and filesystem accounting information: done
  • Setup mount point
[INPUT]
sudo mkdir /media/librenms
sudo blkid

[OUTPUT]
[...]
/dev/nvme1n1: UUID="4b581a36-a477-4067-bcc0-e32ef2c7acfa" BLOCK_SIZE="4096" TYPE="ext4"
//record to add to /etc/fstab
UUID=4b581a36-a477-4067-bcc0-e32ef2c7acfa /media/librenms ext4 defaults 1 1
  • Check config before reboot attempt
[INPUT]
sudo mount -a

[OUTPUT]
none
  • Reboot and validation
[INPUT]
lblk

[OUTPUT]
NAME         MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
nvme0n1      259:0    0    8G  0 disk
├─nvme0n1p1  259:2    0  7.9G  0 part /
├─nvme0n1p14 259:3    0    3M  0 part
└─nvme0n1p15 259:4    0  124M  0 part /boot/efi
nvme1n1      259:1    0   50G  0 disk /media/librenms
  • Set symbolic link
[INPUT]
cd /opt
sudo ln -s /media/librenms librenms
ls -la

[OUTPUT]
lrwxrwxrwx  1 root root   15 Dec 18 09:11 librenms -> /media/librenms

Install librenms

  • Install dependencies
[INPUT]
apt install acl curl fping git graphviz imagemagick mariadb-client mariadb-server mtr-tiny nginx-full nmap php-cli php-curl php-fpm php-gd php-gmp php-json php-mbstring php-mysql php-snmp php-xml php-zip rrdtool snmp snmpd unzip python3-pymysql python3-dotenv python3-redis python3-setuptools python3-systemd python3-pip whois traceroute

//try again
[OUTPUT]
whois is already the newest version (5.5.17).
traceroute is already the newest version (1:2.1.2-1).
0 upgraded, 0 newly installed, 0 to remove and 20 not upgraded.