Running the following command as root worked for me only temporary. As the real issue was with SELinux.
pm2 update
When I checked the systemd entry of pm2, I could see that the PID file could not be opened due to SELinux. So I had to create a new rule to allow SELinux to allow systemd to check if the PID file exists.
sudo cat /var/log/audit/audit.log | grep systemd | grep pm2 | audit2allow -M systemdpm2
Then I applied the new rule:
sudo semodule -i systemdpm2.pp