Difference between revisions of "Monit"

From Amahi Wiki
Jump to: navigation, search
Line 65: Line 65:
 
{{code|mkdir -p /var/certs}}
 
{{code|mkdir -p /var/certs}}
  
== Update Certificate ==
+
== Create New Certificate ==
A default certificate is installed by the Amahi application (Ubuntu).  To change the certificate, do the following steps as root user (For Ubuntu, prefix the command lines with <code>sudo</code>):
+
A default certificate is installed by the Amahi application (Ubuntu).  To create a new certificate, do the following steps as root user (<b>Ubuntu NOTE:</b> prefix commands with <code>sudo</code> except the second openssl requires the actual '''''root''''' user environment (<code>sudo su -</code>):
 
{{Code|cd /var/certs
 
{{Code|cd /var/certs
 
openssl req -new -x509 -days 365 -nodes -config ./monit.cnf -out /var/certs/monit.pem -keyout /var/certs/monit.pem
 
openssl req -new -x509 -days 365 -nodes -config ./monit.cnf -out /var/certs/monit.pem -keyout /var/certs/monit.pem
Line 72: Line 72:
 
openssl x509 -subject -dates -fingerprint -noout -in /var/certs/monit.pem
 
openssl x509 -subject -dates -fingerprint -noout -in /var/certs/monit.pem
 
chmod 700 /var/certs/monit.pem}}
 
chmod 700 /var/certs/monit.pem}}
 
'''NOTE:'''  For Ubuntu, the second openssl (openssl gendh) step requires the actual '''''root''''' user  environment (<code>sudo su -</code>).
 
 
 
Restart Monit:
 
Restart Monit:
 
* Ubuntu
 
* Ubuntu

Revision as of 18:49, 20 November 2013

Monit (Amahi's watchdog) is a utility for managing and monitoring processes, programs, files, directories and filesystems on a Unix system. It is integrated in Amahi and managed using the Servers section of the Settings tab.

Monit has an integrated web interface which can exposed using the Monit Service Manager one-click app. This app (currently BETA status) provides additional detail about the processes currently running on your HDA.

We will add additional customizations to this page over time.

File location for Monit configuration file (monitrc):

  • Ubuntu
bash code
​cd /etc/monit​
  • Fedora 19
bash code
​cd /etc​


Change Hostname

Edit monitrc and change localhost.localdomain to match your system:

Text
​check system localhost.localdomain​

Email Notifications

This will only work if you have set up your HDA to send emails. The Gmail as Relay tutorial is one option or you can do it in Monit directly.

Edit monitrc and update as follows:

Text
​set mailserver smtp.gmail.com port 587 username "MYUSER" password "MYPASSWORD" using tlsv1​

NOTE: Replace "MYUSER" and "MYPASSWORD" with your Gmail user name and password.

Enable email notifications by editing monitrc and uncomment (remove #) the following lines (Change as needed to match your system):

Text
​#set mailserver localhost #set mail-format { from: monit@localhost } #set alert root@localhost​

Restart Monit:

  • Ubuntu
bash code
​/etc/init.d/monit restart​
  • Fedora 19
bash code
​systemctl restart monit.service​


Change Message Format

Edit monitrc and comment out (add #) the following line:

Text
​#set mail-format { from: monit@localhost }​

Add this text below it (modify as needed):

Text
​set mail-format { from: monit@localhost subject: [ $SERVICE ] $EVENT - $DATE message: This is an $ACTION: $DESCRIPTION [$SERVICE], tested remotely from $HOST }​

Restart Monit:

  • Ubuntu
bash code
​/etc/init.d/monit restart​
  • Fedora 19
bash code
​systemctl restart monit.service​


Change Access Credentials

Edit monitrc and change as desired:

Text
​allow admin:admin​

Restart Monit:

  • Ubuntu
bash code
​/etc/init.d/monit restart​
  • Fedora 19
bash code
​systemctl restart monit.service​


Enable Secure access (Fedora 19)

Edit monitrc and add below set httpd port 2812 and (line 116):

Text
​SSL ENABLE PEMFILE /var/certs/monit.pem​

Create a directory for the certs, then follow "Update Certificate" guidance:

bash code
​mkdir -p /var/certs​


Create New Certificate

A default certificate is installed by the Amahi application (Ubuntu). To create a new certificate, do the following steps as root user (Ubuntu NOTE: prefix commands with sudo except the second openssl requires the actual root user environment (sudo su -):

bash code
​cd /var/certs openssl req -new -x509 -days 365 -nodes -config ./monit.cnf -out /var/certs/monit.pem -keyout /var/certs/monit.pem openssl gendh 512 >> /var/certs/monit.pem openssl x509 -subject -dates -fingerprint -noout -in /var/certs/monit.pem chmod 700 /var/certs/monit.pem​

Restart Monit:

  • Ubuntu
bash code
​sudo /etc/init.d/monit restart​
  • Fedora 19
bash code
​systemctl restart monit.service​


Configuration Examples

Monit Configuration Examples: Covers many common processes that users may want to monitor. Some minor changes may be needed for Fedora or Ubuntu.