Install Confluent Platform with Ansible Playbooks

This topic describes the installation steps for Confluent Platform:

Use Ansible 2.11 or higher to install Confluent Platform

  1. Configure required settings in the hosts.yml file as described in Configure Ansible Playbooks for Confluent Platform.

  2. (Optional) Validate hosts before installing Confluent Platform:

    ansible-playbook -i hosts.yml confluent.platform.validate_hosts
    

    To validate hosts for an individual component, use the --tag flag as below:

    ansible-playbook -i hosts.yml confluent.platform.validate_hosts --tags=<component-name>
    

    <component-name> can be zookeeper, kafka_broker, schema_registry, kafka_rest, kafka_connect, ksql, or control_center.

  3. Install or update all Confluent Platform by running the all.yml playbook:

    ansible-playbook -i hosts.yml all.yml
    

Install individual Confluent Platform components

Install individual components, using the Ansible tags. You must follow the correct order given below to satisfy the dependencies among the components. For example, Kafka will not install until the certificate authority is generated and ZooKeeper is installed.

Similarly, when you update a component section in the hosts.yml file, you can optionally update the component and the preceding components in the order.

  1. Generate the certificate authority (CA) if TLS encryption is enabled and using self-signed certificates.

    ansible-playbook -i hosts.yml confluent.platform.all --tags=certificate_authority
    
  2. Generate secrets protection masterkey if secrets protection enabled.

    ansible-playbook -i hosts.yml confluent.platform.all --tags=masterkey
    
  3. Install ZooKeeper.

    ansible-playbook -i hosts.yml confluent.platform.all --tags=zookeeper
    
  4. Install Kafka.

    ansible-playbook -i hosts.yml confluent.platform.all --tags=kafka_broker
    
  5. Install Schema Registry, REST Proxy, Connect, and ksqlDB in any order.

    ansible-playbook -i hosts.yml confluent.platform.all --tags=schema_registry
    ansible-playbook -i hosts.yml confluent.platform.all --tags=kafka_rest
    ansible-playbook -i hosts.yml confluent.platform.all --tags=kafka_connect
    ansible-playbook -i hosts.yml confluent.platform.all --tags=ksql
    
  6. Install Control Center (Legacy).

    ansible-playbook -i hosts.yml confluent.platform.all --tags=control_center
    

Use Ansible 2.9 or 2.10 to install Confluent Platform

  1. Install the community.general collection. Ansible Playbooks for Confluent Platform uses this collection for a string operation:

    ansible-galaxy collection install community.general:==4.8.1
    
  2. Configure other required settings in the hosts.yml file as described in Configure Ansible Playbooks for Confluent Platform.

  3. Install or update all Confluent Platform components by running the playbooks/all.yml playbook:

    ansible-playbook -i hosts.yml playbooks/all.yml
    

Install individual Confluent Platform components

Install individual components, using the Ansible tags. You must follow the correct order given below to satisfy the dependencies among the components. For example, Kafka will not install until the certificate authority is generated and ZooKeeper is installed.

Similarly, when you update a component section in the hosts.yml file, you can optionally update the component and the preceding components in the order.

  1. Generate the certificate authority (CA) if TLS encryption is enabled and using self-signed certificates.

    ansible-playbook -i hosts.yml playbooks/all.yml --tags=certificate_authority
    
  2. Generate secrets protection masterkey if secrets protection enabled.

    ansible-playbook -i hosts.yml playbooks/all.yml --tags=masterkey
    
  3. Install ZooKeeper.

    ansible-playbook -i hosts.yml playbooks/all.yml --tags=zookeeper
    
  4. Install Kafka.

    ansible-playbook -i hosts.yml playbooks/all.yml --tags=kafka_broker
    
  5. Install Schema Registry, REST Proxy, Connect, and ksqlDB in any order.

    ansible-playbook -i hosts.yml playbooks/all.yml --tags=schema_registry
    ansible-playbook -i hosts.yml playbooks/all.yml --tags=kafka_rest
    ansible-playbook -i hosts.yml playbooks/all.yml --tags=kafka_connect
    ansible-playbook -i hosts.yml playbooks/all.yml --tags=ksql
    
  6. Install Control Center (Legacy).

    ansible-playbook -i hosts.yml playbooks/all.yml --tags=control_center
    

Next step