The majority of this lab uses nested CloudFormation templates. The templates will enable you to create the necessary resources needed to achieve the goals of the lab without worrying about the details of getting the components set up to create the solution.
The organization of the JSON templates (use this website to convert to YAML if you like) are as follows:
flowlogs-aes-kickoff-stack – coordinates the creation of foundational elements that are used in the labs. These are:
flowlogs-aes-network – all the necessary network components such as the VPC, subnets, routes and baseline security elements
flowlogs-aes-cognito – creates the Amazon Cognito user pool and identity pool so that Kibana can be accessed securely with a login
flowlogs-aes-s3-sqs – creates the stream used for buffering data to your solution
flowlogs-aes-domain – creates the Amazon Elasticsearch Service cluster with Kibana and Elasticsearch endpoints
flowlogs-aes-kibana-proxy – creates the NGINX proxy server to broker public internet calls via Kibana to the Elasticsearch domain
flowlogs-aes-endpoints – creates the NGINX proxy server to broker public internet calls via Kibana to the Elasticsearch domain
flowlogs-aes-flowlog – enables the VPC Flow Logs in the VPC and creates the configuration to write those logs to the Amazon S3 bucket.