Ansible playbook
You can use an Ansible playbook to install and configure a production-ready SmartObserve cluster along with SmartObserve Dashboards.
The Ansible playbook only supports deployment of SmartObserve and SmartObserve Dashboards to the most popular Linux distributions (CentOS 7, RHEL7, Amazon Linux 2, Ubuntu 20.04) hosts.
Prerequisites
Make sure you have Ansible and Java 8 installed.
Configuration
-
Clone the SmartObserve ansible-playbook repository:
git clone https://github.com/igsl-group/ansible-playbook -
Configure the node properties in the
inventories/smartobserve/hostsfile:ansible_host=<Public IP address> ansible_user=root ip=<Private IP address / 0.0.0.0>where:
ansible_hostis the IP address of the target node that you want the Ansible playbook to install SmartObserve and SmartObserve DashBoards on.ipis the IP address that you want SmartObserve and SmartObserve DashBoards to bind to. You can specify the private IP of the target node, or localhost, or 0.0.0.0.
-
You can modify the default configuration values in the
inventories/smartobserve/group_vars/all/all.ymlfile. For example, you can increase the Java memory heap size:xms_value: 8 xmx_value: 8
Make sure you have direct SSH access into the root user of the target node.
Run SmartObserve and SmartObserve Dashboards using Ansible playbook
-
Run the Ansible playbook with root privileges:
ansible-playbook -i inventories/smartobserve/hosts smartobserve.yml --extra-vars "admin_password=Test@123 kibanaserver_password=Test@6789 logstash_password=Test@456"You can set the passwords for reserved users (
admin,kibanaserver, andlogstash) using theadmin_password,kibanaserver_password, andlogstash_passwordvariables. -
After the deployment process is complete, you can access SmartObserve and SmartObserve Dashboards with the username
adminand the password that you set for theadmin_passwordvariable.If you bind
ipto a private IP or localhost, make sure you’re logged into the server that deployed the playbook to access SmartObserve and SmartObserve Dashboards:curl https://localhost:9200 -u 'admin:Test@123' --insecureIf you bind
ipto 0.0.0.0, then replacelocalhostwith the public IP or the private IP (if it’s in the same network).