Run installation playbooks#
Important
This page describes steps for new installations.
For instructions to upgrade an existing installation, see Upgrade with playbooks instead.
You must complete the steps in Prepare nodes before running the instructions here.
You must run the playbooks in the sequence specified.
A playbook run is successful if has 0 failed tasks.
The following is an example
PLAY RECAP
from a successful (failed=0
) single node playbook run:PLAY RECAP ****************************************************************************************** application-node : ok=64 changed=44 unreachable=0 failed=0 skipped=12 rescued=0 ignored=0 localhost : ok=1 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
Single node/small deployments#
Tip
Not recommended for production systems.
Use the 6 node
and 11 node
deployment
configurations instead.
See Production deployments
Run the following commands to install the IC on a single managed node:
Tip
Install Logstash
Logstash is not installed by default. To install Logstash, add --tags=all,logstash
to each ansible-playbook
command.
On the control node:
(Optional) Run the pre-requisites playbook to install OS updates on your managed node:
ansible-playbook --tags=all,logstash -i inventories/ic-1host-test.yml pb-pre_requisites.yml
You must reboot the managed node after this playbook completes.
Run the install playbook:
ansible-playbook --tags=all,logstash -i inventories/ic-1host-test.yml pb-install_intelligence_center.yml
Make sure services have started:
ansible-playbook --tags=all,logstash -i inventories/ic-1host-test.yml pb-start_services.yml
Run database migrations:
ansible-playbook --tags=all,logstash -i inventories/ic-1host-test.yml pb-migrate_databases.yml
Start services:
ansible-playbook --tags=all,logstash -i inventories/ic-1host-test.yml pb-start_services.yml
Production deployments#
The following covers instructions to install the IC on multi-node scenarios.
You must configure and use the correct inventory file for your deployment. See Prepare nodes for more information.
The following table lists the inventory files
for each deployment scenario. Replace <inventory_file.yml>
in the commands below with the path to the
inventory file appropriate to your configuration.
Deployment |
Inventory file |
1 node |
|
2 node |
|
4 node |
|
6 node |
|
11 node |
|
Tip
Use at least 6 nodes when deploying for production.
Tip
Install Logstash
Logstash is not installed by default. To install Logstash, add --tags=all,logstash
to each ansible-playbook
command.
On the control node,
run playbooks with the ansible-playbook
command.
For example (omit --tags=all,logstash
if your deployment configuration does not include Logstash):
ansible-playbook --tags=all,logstash -i inventories/<inventory_file.yml> <pb-playbook.yml>
Run the playbooks in this sequence:
(Optional) Run the pre-requisites playbook to install OS updates on your managed nodes:
pb-pre_requisites.yml
You must reboot all managed nodes after this playbook completes.
Run the install playbook:
pb-install_intelligence_center.yml
Make sure services have started at least once:
pb-start_services.yml
Run database migrations:
pb-migrate_databases.yml
Start services:
pb-start_services.yml
(Only deployments with more than one Elasticsearch node) Bootstrap Elasticsearch cluster. This allows the IC to address more than one Elasticsearch nodes as data nodes.
Warning
This purges data from all Elasticsearch nodes.
Set Elasticsearch multi-node configuration:
pb-elasticsearch_fix_ic_config_multinode.yml
Remove the Elasticsearch data directory on Elasticsearch nodes:
pb-elasticsearch_destroy_cluster.yml
Run database migrations:
pb-migrate_databases.yml
Start services:
pb-start_services.yml
(Only for deployments with more than one PostgreSQL nodes)
To initialize replicas in a PostgreSQL cluster, run the PostgreSQL replication playbook:
Danger
This purges data from all PostgreSQL nodes set in your inventory file with the property:
eiq_ic_pg_replication__node_role: replica
Initialize replication:
pb-pg_start_replication.yml
Then make sure all services are running:
pb-start_services.yml