Suddenly cannot access WebUI - Missing dependencies!

I just deployed libreNMS last week and everything seem to be working fine until this morning when I attempt to access the WebUI, I saw this:

### Error: Missing dependencies! Run the following command to fix:
./scripts/composer_wrapper.php install --no-dev

When I attempt to execute the suggested command, I got these:

Problem 1
_ - The requested PHP extension ext-mysqlnd * is missing from your system. Install or enable PHP’s mysqlnd extension._
_ Problem 2_
_ - The requested PHP extension ext-mbstring * is missing from your system. Install or enable PHP’s mbstring extension._
_ Problem 3_
_ - Installation request for erusev/parsedown 1.7.1 -> satisfiable by erusev/parsedown[1.7.1]._
_ - erusev/parsedown 1.7.1 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system._
_ Problem 4_
_ - Installation request for laravel/framework v5.4.36 -> satisfiable by laravel/framework[v5.4.36]._
_ - laravel/framework v5.4.36 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system._
_ Problem 5_
_ - laravel/framework v5.4.36 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system._
_ - wpb/string-blade-compiler 3.4.x-dev requires laravel/framework 5.4.* -> satisfiable by laravel/framework[v5.4.36]._
_ - Installation request for wpb/string-blade-compiler 3.4.x-dev -> satisfiable by wpb/string-blade-compiler[3.4.x-dev]._

I try to install the missing components and got these:

Error: php70w-common conflicts with php-common-5.4.16-45.el7.x86_64

How is it possible that dependencies will suddenly gone missing?

It hasn’t gone missing. We are just now preferring that so you don’t have issues and following upstream recommendations.

I redeploy the vmdk image again and after getting it to work, the next day, the same error appear again:

### Error: Missing dependencies! Run the following command to fix:

./scripts/composer_wrapper.php install --no-dev

Also, the suggested commands cannot be executed at all:

I manage to resolve it with the following commands:

yum install php70w-mbstring
yum remove php70w-mysql
yum install php70w-mysqlnd
yum swap php70w-mysql php70w-mysqlnd
./scripts/composer_wrapper.php install --no-dev
restart the apache service

I still notice an error:

I have executed these commands:
chown -R librenms:librenms /opt/librenms
chmod 755 /opt/librenms/.pki/nssdb

And verify ownership:
2

But it still show the same error!

rm -r /opt/librenms/.pki or chmod -R g+w /opt/librenms/.pki… I’m going to go add an exception for that file because the amount of people posting about this “error” is silly.

It seems like a lot of people set /opt/librenms as the home directory of the librenms users, personally, I would suggest adding cd /opt/librenms in ./bashrc (or equivalent) instead.

FYI, I’m using the vmdk image provided by librenms.org. Does this mean the image is not properly configured with the recommended configuration? Also, after deploying it, it will fail the follow day with the missing dependencies error. I have tried a few time to confirm this. Maybe they should update the image again.

I looked and it is.

New issue after restoring it from backup. It generate a new network connection, so I have to remove the old one and reconfigure the new network connection to take up the original IP address. However, the web UI shows:

502 Bad Gateway

I don’t think that would be LibreNMS - do you have network/ping connectivity?

bad gateway usually means php-fpm isn’t running if you are using nginx+php-fpm.

I managed to recovered and notice that the php version in the official vmdk file provided by librenms.org is version 5.4.16 and validate.php suggest that I upgrade.

It looks like the image provided by them has many outdated components with many improper or incomplete configuration as well. The instruction guide on the website given is incomplete too.

Time zone has to be configured not just at the OS level, but also at both the php and database level. rrdcached.service is configured wrongly as well, pointing to /usr/bin/rrdcached instead of /bin/rrdcached. Root password has to be changed and this is not even mentioned on the guide too.

btw, how do I upgrade the php component? After executing these commands:

yum remove php-fpm php-cli php-common

yum install php72w-fpm-nginx php72w-cli php72w-mysqlnd

I’m suppose to amend the /etc/php-fpm.d/www.conf file right?

Documentation updates are welcome. This is a 100% community project.

Read the install docs and you should be able to figure out what you need.

After upgrading php, I got bad gateway again. I need to recreate the php-fpm.sock right?

vi /etc/php-fpm.d/www.conf
fastcgi_pass unix:/var/run/php-fpm/php7.2-fpm.sock;

vi /etc/nginx/conf.d/librenms.conf
fastcgi_pass unix:/var/run/php-fpm/php7.2-fpm.sock;

What else did I missed?