- Easy Installation
- Installation with log monitoring
- Installation with TLS encrypted REST API
- Installation with TLS encrypted communication between Snap and it's plugins
- Advanced Installation
- Uninstalling the Agent
To find the easy installation guide, go to AppOptics home page and click on the "Add Host" button. It will show you these steps to install the SolarWinds Snap Agent via our install wrapper script:
Download install wrapper script from https://files.solarwinds.cloud/solarwinds-snap-agent-installer.sh:Copy
$ curl -sSO https://files.solarwinds.cloud/solarwinds-snap-agent-installer.sh
Run install wrapper script, passing in the API token with the
$ sudo bash solarwinds-snap-agent-installer.sh --token <your api token> [--yes] [--debug]
The easy install walk through will include the API token. If you want to create your own token, follow the instructions described in API Tokens and Token Roles.
The metrics API token can also be set via the
$ export SOLARWINDS_TOKEN=<your api token>
$ sudo -E bash solarwinds-snap-agent-installer.sh [--yes] [--debug]
More information about different options provided by installer script can be found using the
--help option. To troubleshoot issues during installation
--debug option can be used.
For manual installation without install script follow Advanced Installation
To enable log monitoring installation script has to be invoked with additional option –detect-logs:Copy
$ sudo bash solarwinds-snap-agent-installer.sh --token <your api token> --detect-logs [--yes] [--debug]
If you are Loggly client with different Loggly and AppOptics tokens, you have to invoke installation script with additional option:Copy
$ sudo bash solarwinds-snap-agent-installer.sh --token <your api token> --detect-logs --loggly-token <your loggly token> [--yes] [--debug]
After script execution API token would be stored in logs plugin configuration file
For now PaperTrail configuration need to be done by changing configuration file. Follow Logs page to find more detailed inforamation about PaperTrail settings
During installation process user will be asked if found logs should be monitored. If "no" option is chosen configuration with detected logs will be stored in example file:
/opt/SolarWinds/Snap/etc/tasks-autoload.d/task-logs-system.yaml.example.newand detected logs will not be monitored.
--yesoption in installation script skips direct question to user. Detected logs are monitored by default
Configuring log files:
Enter the full paths to the logs you want to monitor under config: > sources: > log_files in
/opt/SolarWinds/Snap/etc/task-autoload.d/task-logs-system.yamlfile on your server
Follow Logs page to find more details about configuration file.
After installation log plugin will be started.
Change permissions for log files
User solarwinds has to have permission to read log file to be able to report its content. User solarwinds is a member of adm group, which is designed for accessing logs. If necessary you have to add solarwinds user to other group owning log files or change log files permissions.
If the files were already added to the
/opt/SolarWinds/Snap/etc/task-autoload.d/task-logs-system.yamlbefore setting the correct permissions on the directory and files, restart the swisnapd service:Copy
$ sudo service swisnapd restart
To enable encrypted REST API user has to pass
--secure option to installation script:
$ sudo bash solarwinds-snap-agent-installer.sh [--yes] [--debug] --token <your api token> --secure
Installer will ask for REST authentication password and paths to REST certificate and key -
solarwinds user has to have read access to both certificate and key.
REST Certificate should be signed by trusted CA (it has to be stored in system's keychain).
User now has three options of running Snap's CLI:
# then, each swisnap call will ask for API password.
swisnap plugin list
swisnap --password --url https://<listen_address>:<listen_port> plugin list
Mix of config and environment variable:Copy
cat > swisnap-config.json <<EOF
swisnap --config swisnap-config.json plugin list
To enable encrypted communication between Snap and its plugins, the user has to:
- either provide copy of previously generated CA certificate and certificate-key pairs for Snap and plugins, or let the installer script generate them.
If user chooses to generate keys and certificates, then it is required to provide passphrases to each of the key.
Passing previously generated certificates:
$ sudo bash solarwinds-snap-agent-installer.sh [--debug] --token <your api token> [--yes] --secure --ca-path /path/to/ca.crt --plugin-cert-path /path/to/plugin.crt --plugin-key-path /path/to/plugin.pem --snap-cert-path /path/to/snap.crt --snap-key-path /path/to/snap.pem
Letting script generate required files:
$ sudo bash solarwinds-snap-agent-installer.sh [--debug] --token <your api token> [--yes] --secure --ca-passphrase <capassphrase> --plugin-passphrase <pluginpassphrase> --snap-passphrase <snappassphrase>
If user omits optional
[--yes] flag, then the script will ask for confirmation before generating each certificate.
Generated certificates, sign requests and keys are stored in
Autoload plugins will use certificate and key specified by
Follow these steps to upgrade the agent:
For deb based platforms:
$ sudo apt-get install solarwinds-snap-agent
For rpm based platforms:
$ sudo yum update solarwinds-snap-agent
If you've made local changes to
/opt/SolarWinds/Snap/etc/config.yaml or default task files under
/opt/SolarWinds/Snap/etc/tasks.d, the package manager should preserve those changes either by default or with an optional setting, please refer to your package manager manual for details.
SolarWinds Snap Agent package by default contains logrotate configuration file
/opt/SolarWinds/Snap/etc/logrotate.d/solarwinds-snap-agent for rotating
/var/log/SolarWinds/Snap/swisnapd.log. The logrotate configuration file is automatically linked to
/etc/logrotate.d/ folder during agent installation if logrotate is present on the system. If logrotate is not installed while installing agent, you will need to link logrotate configuration file manually.
Follow these steps to manually install the agent, by setting up the required repository and running your system's package management commands:
Set up the repository using the appropriate
Set the metrics API token using the
$ export SOLARWINDS_TOKEN=<your api token>
Optionally, to not start the agent at the end of installation, set the AGENT_INSTALL_ONLY environment variable to 1:Copy
$ export AGENT_INSTALL_ONLY=1
Install the agent package
For deb based platforms:Copy
$ sudo -E apt-get install solarwinds-snap-agent
For rpm based platforms:Copy
$ sudo -E yum install solarwinds-snap-agent
To learn more about how to restart the SolarWinds Snap Agent, where its log file is located, and other common troubleshooting techniques, please check the Troubleshooting page.
For deb based systems:
$ sudo apt-get remove solarwinds-snap-agent
Configuration files will remain on deb based system after uninstalling the Snap Agent. Do not remove these manually. To remove all configuration files from your system after uninstalling the Snap Agent, run the following command:
$ sudo apt-get remove --purge solarwinds-snap-agent
for RPM based systems:
$ sudo yum erase solarwinds-snap-agent
$ sudo bash /opt/SolarWinds/Snap/support/before-remove.sh
$ sudo bash /opt/SolarWinds/Snap/support/after-remove.sh
The SolarWinds Snap Agent will be automatically removed from the Infrastructure Host view after 60 minutes.
The scripts are not supported under any SolarWinds support program or service. The scripts are provided AS IS without warranty of any kind. SolarWinds further disclaims all warranties including, without limitation, any implied warranties of merchantability or of fitness for a particular purpose. The risk arising out of the use or performance of the scripts and documentation stays with you. In no event shall SolarWinds or anyone else involved in the creation, production, or delivery of the scripts be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or other pecuniary loss) arising out of the use of or inability to use the scripts or documentation.