FreeBSD
Sensu on FreeBSD reference documentation
Install Sensu Core
IMPORTANT: Sensu Core reached end-of-life (EOL) on December 31, 2019, and we permanently removed the Sensu EOL repository on February 1, 2021.
This means the packages specified in the instructions below are no longer available. To migrate to Sensu Go, read the Sensu Core migration guide.
Sensu Core is installed on FreeBSD systems via a native system installer package (i.e. a .txz file).
WARNING: FreeBSD packages are currently as a “beta” release. Support for running Sensu on FreeBSD will be provided on a best-effort basis until further notice.
Download and install Sensu using the Sensu Universal .txz file
NOTE: As of Sensu version 0.27 package repository URLs have changed. To install or upgrade to the latest version of Sensu, please ensure you have updated existing configurations to follow the repository URL format specified below.
-
Download the Sensu FreeBSD package. NOTE: FreeBSD packages are available for FreeBSD 10 and 11.
-
Install the
sensu-1.4.1_1.txz
package using thepkg
utility:sudo pkg add ./sensu-1.4.1_1.txz
-
Configure the Sensu client. No “default” configuration is provided with Sensu, so the Sensu client will not run without the corresponding configuration. Please refer to the “Configure Sensu” section (below), for more information on configuring Sensu. At minimum, the Sensu client will need a working transport definition and client definition.
Configure Sensu
By default, all of the Sensu services on FreeBSD systems will load configuration from the following locations:
/usr/local/etc/sensu/config.json
/usr/local/etc/sensu/conf.d/
NOTE: additional or alternative configuration file and directory locations may be used by modifying Sensu’s service configuration and/or by starting the Sensu services with the corresponding CLI arguments. For more information, please consult the Sensu Configuration reference documentation.
Create the Sensu configuration directory
In some cases, the default Sensu configuration directory (i.e.
/etc/sensu/conf.d/
) is not created by the Sensu installer, in which case it is
necessary to create this directory manually.
mkdir /usr/local/etc/sensu/conf.d
Example client configuration
- Copy the following contents to a configuration file located at
/usr/local/etc/sensu/conf.d/client.json
:{ "client": { "name": "freebsd-client", "address": "127.0.0.1", "environment": "development", "subscriptions": [ "dev", "freebsd-hosts" ], "socket": { "bind": "127.0.0.1", "port": 3030 } } }
Example Transport Configuration
At minimum, the Sensu client process requires configuration to tell it how to connect to the configured Sensu Transport.
-
Copy the following contents to a configuration file located at
/usr/local/etc/sensu/conf.d/transport.json
:{ "transport": { "name": "rabbitmq", "reconnect_on_error": true } }
"name": "redis"
for your transport configuration. For more information, please visit the transport definition specification. -
If the transport being used is running on a different host, additional configuration is required to tell the Sensu client how to connect to the transport. Please see Redis or RabbitMQ reference documentation for examples.