Initial commit
Work-in-progress templates
Fix BOM added by Visual Studio ... the world most expensive text-file-mangler
Fix NAT wait handle / circular dependency (split EIP declaration and association)
Use b for default secondary AZ

Fix NAT template parameter mismatch
Add IAM role for NAT to provide access to EC2 CLI

Install and configure dnsmasq for internal DNS
Create script / cron job to auto-update hosts from EC2 instances
Set network host name
Use cfn user keys for mongo-master init
Pass subnet it, not stack id
Fix nat instance id format
Call stack to create mongo instance
Allow all internal ICMP traffic

Allow SSH from public to private networks
Output IP address and FQDN of mongo host

Network rules for DNS, RDP
Filter instances for dnsmasq by VPC
Formatting / naming
Allow inbound remote management (SSH/RDP) from NAT to default security group
Allow web traffic from default security group to NAT (so it can do the NAT!)
Ephemeral ports for private subnet need to be to Internet Cidr
Add TTL to cache dns requests

Fix nat server registered with 127.0.0.1 address instead of private address
Add MongoDB MMS agent to NAT instance
Upgrate NAT instance as part of setup - required to use IAM role credentials from ec2 CLI
Create mongo folders and set permissions
Define security group rules to allow mongo traffic from NAT to databases
Make sure hostname resolves to local ip address (but not loopback)

Reduce read-ahead size
Set process limits
Template / stack for mongo hidden slave (for backup purposes)
Install / start MMS on NAT
Allow mongo traffic between VPC (for replication etc. between private subnets)
Reduce oplog size on slave-backup

Fix drive mounting
File system tweaks
Simplify dnsmaq host file