Automate HA Config Generation
Warning
Chef Automate 4.10.1 released on 6th September 2023 includes improvements to the deployment and installation experience of Automate HA. Please read the blog to learn more about key improvements. Refer to the pre-requisites page (On-Premises, AWS) and plan your usage with your customer success manager or account manager.
Command Usage
chef-automate config gen config.toml
config.toml is the file where all the generated config will be saved at the end, you can choose to not provide this then the output will be shown to stdout.
Refer the fields below to generate Chef Automate High Availability (HA) configuration using chef-automate config gen command.
Automate HA Topology
- You need to have
Chef Automate HAas a topology for HA deployments. On-Premiseto deploy on customer created Automate HA cluster.Awsto deploy in AWS environment, Cluster will be created by Automate HA.Deploymentis a config type, we may have different type of configs in future.
SSH User and Group
ssh user nameuser name to ssh to cluster instances.ssh group namegroup name which is associated with ssh user.ssh port noport to do ssh, default is 22 incase you have different port then provide the ssh port number.ssh key file pathssh key file path, same will be used to ssh to cluster instances Example~/.ssh/my-key.pem.
Automate Load Balancer FQDN
Automate FQDNautomate FQDN name Examplechefautomate.example.com.Automate FQDN ARNfor Aws deployment ARN name is required for Automate FQDN domain.Automate FQDN Root Certificatessl root certificate for Automate FQDN domain.
Automate Admin
Automate Admin PasswordAdmin password to login to automate dashboard.
Chef Server Load Balancer FQDN
Chef Server FQDNautomate FQDN name Examplechefserver.example.com.Chef Server FQDN ARNfor Aws deployment ARN name is required for Chef Servers FQDN domain.Chef Server FQDN Root Certificatessl root certificate for Chef Server FQDN domain.
Number of Nodes in Automate HA Cluster
Automate node countnumber of nodes we want to keep for automate, in case of On-Premise deployment need to provide IP Address for all nodes.Chef Server node countnumber of nodes we want to keep for Chef Server, in case of On-Premise deployment need to provide IP Address for all nodes.Opensearch node countnumber of nodes we want to keep for Opensearch, in case of On-Premise deployment need to provide IP Address for all nodes.Postgresql node countnumber of nodes we want to keep for Postgresql, in case of On-Premise deployment need to provide IP Address for all nodes.
Private/Public Key For Automate
Private key for AutomateIn case to have custom certificate for Automate node provide your private for Automate, If you have custom certificates for each Automate node then provide different private key for each of Automate node.Public key for AutomateIn case to have custom certificate for Automate node provide your public for Automate, If you have custom certificates for each Automate node then provide different public key for each of Automate node.
Private/Public Key For Chef Server
Private key for Chef ServerIn case to have custom certificate for Chef Server node provide your private for Chef Server, If you have custom certificates for each Chef Server node then provide different private key for each of Chef Server node.Public key for Chef ServerIn case to have custom certificate for Chef Server node provide your public for Chef Server, If you have custom certificates for each Chef Server node then provide different public key for each of Chef Server node.
OpenSearch Certificate and Private/Public Key
Root CA for Open SearchIn case of have custom certificates for Open Search node provide root certificates.Admin Key certificate for Open SearchIn case of have custom certificates for Open Search node provide admin key certificates.Admin certificate for Open SearchIn case of have custom certificates for Open Search node provide admin certificates.Private key for Open SearchIn case to have custom certificate for Open Search node provide your private for Open Search, If you have custom certificates for each Open Search node then provide different private key for each of Open Search node.Public key for Open SearchIn case to have custom certificate for Open Search node provide your public for Open Search, If you have custom certificates for each Open Search node then provide different public key for each of Open Search node.
PostgreSQL Certificate and Private/Public Key
Root CA for PostgresqlIn case of have custom certificates for Postgresql node provide root certificates.Private key for PostgresqlIn case to have custom certificate for Postgresql node provide your private for Postgresql, If you have custom certificates for each Postgresql node then provide different private key for each of Postgresql node.Public key for PostgresqlIn case to have custom certificate for Postgresql node provide your public for Postgresql, If you have custom certificates for each Postgresql node then provide different public key for each of Postgresql node.
AWS Deployment
- Details required for AWS deployment:
VPC IDVPC Id in which you want to create cluster.Private subnet idsthree private subnets are required to create cluster.Public subnet idsin case you want to have public load balancer then, Three public subnets are required to create cluster.Instance typeinstance type to create cluster.EBS volume sizeit should be based on your load needs.EBS volume typedefault isgp3, change based on your need.EBS volume IOPSit should be based on your load needs.ssh key pair namessh key pair name on AWS Examplemy-key.RegionAWS region to create cluster.AMI IdAWS AMI Id for specific region to create cluster of particular AMI.AWS profile name. AWS profile name configured in .aws/credentials, Skip this if the IAM role is configured on the bastion host.
External Databases
In Case of AWS managed or Customer managed databases below fields will be required.
OpenSearch
Opensearch domain nameOpensearch domain name deployed on AWS or customer environment.Opensearch domain urlFor AWS managed provide domain url without port and protocol Example:opensearch.example.com, and for customer managed opensearch provide domain url along with port Exampleopensearch.example.com:9200.Opensearch user name, username to login to opensearch.Opensearch user passwordspassword to login to opensearch.Opensearch root-caSSL root certificates to connect with opensearch, In Case of AWS managed databases we have option to use default aws certificates - - If using default certificates then no need to provide root certificates.
PostgreSQL
Postgresql URL and portPostgresql url along with port Example:postgresql.example.com:5432.PostgreSQL super usernamemaster username to login to postgresql.PostgreSQL super user passwordmaster password to login to postgresql.PostgreSQL database usernamedatabase username to login to postgresql.PostgreSQL database user passworddatabase password to login to postgresql.
AWS OpenSearch
Aws OpenSearch snapshot arnsnapshot arn is required to take a backup from aws OpenSearchAws OpenSearch snapshot user accesskeysnapshot user accesskey is required to take a backup from aws OpenSearchAws OpenSearch snapshot secret keysnapshot user accesskey is required to take a backup from aws OpenSearch. Refer to the Enabling OpenSearch Backup Restore section, to create them and get their values.
Backup
- If configuring backup at the time of deployment the we many need following fields:
Bucket namefor object storage or AWS S3 type of backup provide bucket name, for AWS deployment bucket will be created if not exist in AWS.Access KeyS3 access key.Secret KeyS3 secret key.Endpointfor object storage provide endpoint of object storage.Regionfor S3 provide region.Mount pathin case of file system/efs backup provide mount path of backup directory.