|
@@ -1,2 +1,66 @@
|
|
|
# cloud-aws-stack
|
|
|
Host default provisioning templates for Nuxeo
|
|
|
+
|
|
|
+## What's in this modules?
|
|
|
+
|
|
|
+This is a set of Terraform modules for configuring infrastructure environments with AWS.
|
|
|
+
|
|
|
+
|
|
|
+The Stack implements the current procedure at https://wiki.nuxeo.com/display/INFRA/Cloud+Provisioning
|
|
|
+
|
|
|
+
|
|
|
+* Create Subnets for the Stack
|
|
|
+ * One Public with a /24 size.
|
|
|
+ * One private Subnet to run Nuxeo
|
|
|
+ * At least 2 Private Subnets for Databases
|
|
|
+* Create a NAT Gateway in one of the Public Subnets
|
|
|
+* Create a Route with the Internet Gateway as default route, associate it with the Public Subnet(s)
|
|
|
+* Create a Route with the NAT Gateway as default route, *_that should be associated to all Private Subnets when they are created_*
|
|
|
+* Create a Security Group for ELBs that accepts HTTP and HTTPS from anywhere
|
|
|
+* Create a Security Group for Bastion Hosts that accepts SSH from anywhere
|
|
|
+* Create a Bastion Host with bastion host SG associated to ti, install NTP and Userify on it
|
|
|
+
|
|
|
+
|
|
|
+## Requirements
|
|
|
+
|
|
|
+Before we start, you'll first need:
|
|
|
+
|
|
|
+* an AWS account with API access
|
|
|
+* locally configured AWS credentials
|
|
|
+* to create a keypair in AWS
|
|
|
+* Download and install [terraform|https://www.terraform.io/downloads.html]
|
|
|
+
|
|
|
+
|
|
|
+## Quick Start
|
|
|
+
|
|
|
+To be able to use this stack create a terraform like:
|
|
|
+
|
|
|
+```
|
|
|
+module "nuxeo-env" {
|
|
|
+ source = "github.com/nuxeo/cloud-aws-stack"
|
|
|
+
|
|
|
+ stack_name = "acme"
|
|
|
+ vpc_id="vpc-8beb14ec"
|
|
|
+ public_subnets = ["10.0.10.0/24"]
|
|
|
+ private_subnets = ["10.0.11.0/24"]
|
|
|
+ private_db_subnets = ["10.0.100.0/24","10.0.101.0/24"]
|
|
|
+ public_key_path="/Users/<user>/.ssh/id_rsa.pub"
|
|
|
+}
|
|
|
+```
|
|
|
+
|
|
|
+Run:
|
|
|
+
|
|
|
+```
|
|
|
+terraform get
|
|
|
+terraform plan
|
|
|
+```
|
|
|
+
|
|
|
+You should get all that is going to be installed.
|
|
|
+
|
|
|
+If you want to see the resource dependency graph, install Graphviz and run:
|
|
|
+
|
|
|
+```
|
|
|
+terraform graph | dot -Tpng > graph.png
|
|
|
+```
|
|
|
+
|
|
|
+
|