Skip to content

Latest commit

 

History

History
68 lines (50 loc) · 4.1 KB

File metadata and controls

68 lines (50 loc) · 4.1 KB

AWS NGINX Instance Manager Basic Reference Architecture

This directory contains templates and scripts to deploy an NGINX Instance Manager Ubuntu image to AWS

Requirements

  • You have followed the generic README, situated here
  • You will need programmatic access to your AWS environment

Getting Started

  • For deploying to AWS with terraform, you will need to setup your AWS credentials:
AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY
AWS_SECURITY_TOKEN
  • Set terraform parameters in an optional .tfvars file
cp terraform.tfvars.example terraform.tfvars
  • Use an environment variable to store the admin password you would like to use.
export TF_VAR_admin_password=xxxxxxxxxxxxxxx
  • Add the required IP ranges to the "mgmt_cidr_blocks" and "dataplane_cidr_blocks" in order to access the NMS and Dataplane services.

  • Initialise Terraform

        terraform init
  • Apply Terraform

       terraform apply

Configuration

Parameter Description Default Required
admin_password The password for the admin user - Yes
nms_ami_id AMI Id of the NGINX Instance Manager image to use - Yes
nginx_ami_id AMI Id of the NGINX image to use - Yes
agent_instance_group_name Agent Instance group name - Yes
agent_count The number of agents to deploy - No
nms_instance_type AWS Instance type for NGINX Instance Manager t2.medium No
nginx_instance_type AWS Instance type for the NGINX instances Instance t3.micro No
aws_region Region to deploy instance us-west-1 No
license_file_path The path to the NGINX API Connectivity Manger license file - Yes
ssh_user User account name allowed access via ssh. ubuntu No
ssh_pub_key Path to the ssh pub key that will be used for sshing into the host ~/.ssh/id_rsa.pub No
mgmt_cidr_blocks List of CIDR blocks to allow access to NGINX Instance Manager UI. - No
Add the ip of the host you are running the terraform to access while applying the license.
dataplane_cidr_blocks List of CIDR blocks to allow access to the dataplane instances. - No
disk_config Map of size and device paths for attached storage See example file Yes
tags Map of tags to apply to resulting AWS resources {} No
prefix Prefix to add in the name of the deployment "" Yes

Note: See AWS documentation regarding aws_instance types and block device names for ebs attached storage