New install with playbooks#
Important
For instructions to upgrade an existing installation, see Upgrade with playbooks instead.
Requirements#
You must:
Have already completed Prepare nodes.
Run the playbooks here in sequence.
Tip
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
Run the playbooks#
Caution
You may have used an .envrc
file in earlier versions of the installation playbooks.
Rename it to .env
,
or create an .env
file using instructions in Set up .env.
On the control node,
run playbooks with the ansible-playbook
command
with these command line options:
ansible-playbook --tags=all,logstash -i inventories/<inventory_file.yml> <pb-playbook.yml>
Option |
Description |
---|---|
|
(Optional) Use |
|
Specify the path to an inventory file configured for your deployment. Inventory files are described in Prepare nodes. |
|
This is the playbook to run. |
Run the playbooks in this sequence:
Load
.env
. Run:source .env
Prepare nodes:
pb-pre_requisites.yml
ansible-playbook --tags=all,logstash -i inventories/<inventory_file.yml> pb-pre_requisites.yml
Install components:
pb-install_intelligence_center.yml
ansible-playbook --tags=all,logstash -i inventories/<inventory_file.yml> pb-install_intelligence_center.yml
Make sure services have started:
pb-start_services.yml
ansible-playbook --tags=all,logstash -i inventories/<inventory_file.yml> pb-start_services.yml
Run database migrations:
pb-migrate_databases.yml
ansible-playbook --tags=all,logstash -i inventories/<inventory_file.yml> pb-migrate_databases.yml
Start services:
pb-start_services.yml
ansible-playbook --tags=all,logstash -i inventories/<inventory_file.yml> pb-start_services.yml
Run the post-installation playbook:
pb-post.yml
ansible-playbook --tags=all,logstash -i inventories/<inventory_file.yml> pb-post.yml
Reboot your managed node(s) after
pb-post.yml
completes.
(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
ansible-playbook --tags=all,logstash -i inventories/<inventory_file.yml> pb-elasticsearch_fix_ic_config_multinode.yml
Remove the data directory on Elasticsearch nodes:
pb-elasticsearch_destroy_cluster.yml
ansible-playbook --tags=all,logstash -i inventories/<inventory_file.yml> pb-elasticsearch_destroy_cluster.yml
Run database migrations:
pb-migrate_databases.yml
ansible-playbook --tags=all,logstash -i inventories/<inventory_file.yml> pb-migrate_databases.yml
Start services:
pb-start_services.yml
ansible-playbook --tags=all,logstash -i inventories/<inventory_file.yml> 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
ansible-playbook --tags=all,logstash -i inventories/<inventory_file.yml> pb-pg_start_replication.yml
Then make sure all services are running:
pb-start_services.yml
ansible-playbook --tags=all,logstash -i inventories/<inventory_file.yml> pb-start_services.yml