This project provides a set of scripts and configurations to automate the deployment, configuration, and management of a Vertica EON cluster using AWS CloudFormation and Ansible.
- CloudFormation Stack Management: Create and delete AWS CloudFormation stacks for Vertica EON.
- Inventory Generation: Automatically generate an inventory file for Ansible.
- Ansible Playbook Execution: Run Ansible playbooks to configure and manage Vertica nodes.
- S3 Bucket Management: Automatically empty S3 buckets associated with a CloudFormation stack.
- AWS CLI: Ensure the AWS CLI is installed and configured with appropriate permissions.
- Python 3: Required for running the inventory generation script.
- Ansible: Required for running the playbooks.
- Bash: The main script is written in Bash.
Run the vertica_menu.sh script to access the interactive menu:
./vertica_menu.sh- Create a folder on your remote linux machine mkdir -p /CloudFormation
- make sure you have aws cli installed and able to access your AWS account as admin
- at this stage, VPC, Subnets and Keys should be created manually
- pull these scripts to the folder created in step 1
- download your PEM file and locate it under /CloudFormation
- Create a sub folder and copy your Vertica rpm there - /CloudFormation/VerticaRPMs
- copy your Vertica license file to /CloudFormation
- now you can start the instllation by running vertica_menu.sh script (make sure it's executable - chmod +x)
-
Delete CloudFormation Stack
Deletes an existing CloudFormation stack and empties associated S3 buckets. -
Create CloudFormation Stack
Creates a new CloudFormation stack using the provided template. -
Generate Inventory File
Generates an inventory file (inventory.ini) for Ansible using thegenerate_inventory.pyscript. -
Run CreateVertica Playbook
Executes the Ansible playbook (installVerticaPlayBook.yaml) to configure and manage Vertica nodes. -
Exit
Exits the menu.
-
Create a CloudFormation Stack
Select option2from the menu to create a new CloudFormation stack. Provide the stack name and template file when prompted. -
Generate Inventory File
Select option3to generate theinventory.inifile for Ansible. -
Run Ansible Playbook
Select option4to run theinstallVerticaPlayBook.yamlplaybook and configure the Vertica cluster. -
Delete CloudFormation Stack
Select option1to delete the CloudFormation stack and clean up associated resources.
- Ensure the
vertica_menu.shscript and all supporting files are in the same directory. - Update the CloudFormation template (
VerticaTemplate.yaml) with your specific AWS configuration (e.g., Subnet ID, AMI ID, Key Pair Name). - Modify the Ansible playbook (
installVerticaPlayBook.yaml) as needed for your environment.
This project uses the Vertica license file (license.key) for installation. Ensure you have the appropriate license to use Vertica.
For any issues or questions, please contact the project maintainer.

