Install and Manage Squirro with Ansible#

This page provides instructions on how to install Squirro using Red Hat’s Ansible Automation Platform.

Note

If you prefer to deploy Squirro as a service, see Squirro Self-Service.

Quick Example#

If you know Ansible, this section shows how to install and manage a single-node Squirro instance. Refer to Ansible Quickstart Examples for a more detailed introduction.

Create a file called playbook-quickstart.yml with the following content:

- name: Quickstart Install Squirro
  hosts: all
  become: true
  vars:
    squirro_clusternode: True
    squirro_storagenode: True
    yum_user: ...
    yum_password: ...
    squirro_channel: stable
    squirro_version: latest
    elasticsearch_discovery_type: single-node
  roles:
    - role: squirro-ansible

Install Squirro using the following command:

ansible-playbook --connection=local --inventory 127.0.0.1, playbook-quickstart.yml

There are tons of options to customize the installation, see Role Variables for details.

Overview#

The Ansible plugin is the recommended way of deploying and managing Squirro. It supports standalone installations as well as highly customized, multi-node deployments using Ansible AWX/Tower.

If despite this you want to install Squirro manually, see Installing Squirro on Linux. With that said, Squirro strongly recommends the Ansible plugin.

The main reasons for using Squirro Ansible are:

  • Idempotent: You can run the same playbook multiple times without side effects. This is useful for upgrades and maintenance. Manual installations are not idempotent; you can’t run the same commands multiple times without side effects. The role is smart as well, it will detect if Squirro is already installed, and needs an upgrade or just configuration changes.

  • Reproducible: You can use the same playbook to install Squirro on multiple machines. This is useful for multi-node installations.

  • Customizable: You can customize the installation by setting variables in the playbook, giving you more control over the installation process.

  • Documentation: The playbook is a form of documentation. It shows exactly how Squirro is installed and configured.

  • Speed: Running a playbook is much faster than installing Squirro manually, especially on multiple machines. The role consists of hundreds of tasks, maintained by the Squirro team.

  • Packer: The playbook can be used to create a Packer image, which can be used to create a custom AMI for AWS, or a custom image for other cloud providers.

  • We use it: Squirro uses the same role to install and manage its own infrastructure.

Download#

Download the Squirro Ansible Module.

Note: You must have a valid Squirro mirror user account to access this download. If you require assistance, contact Squirro Support.

Get started with Squirro Ansible#

See Ansible Quickstart Examples to learn how to install Squirro in a variety of configurations.

Backup and Restore of Elasticsearch#

See Automate the Backup of Elasticsearch for details on how to backup and restore the all important Elasticsearch data.

Enable TLS for Elasticsearch#

See Secure Elasticsearch with SSL/TLS for details on how to enable & manage TLS for Elasticsearch.

Leverage direct attached but volatile NVMe storage for increased performance#

Are Squirro queries not fast enough?

Cloud instances typically have very slow storage. This is not great for an application like Squirro, which is very I/O intensive. Especially the underlying Elasticsearch thrives on fast storage.

See Leveraging NVMe SSDs for Elasticsearch speed on how you can leverage direct attached but volatile NVMe storage for much better query and indexing performance, while keeping costs under control.