8.Wordpress
1. WordPress: fault tolerant and scalable (MySQL)
Use this CloudFormation template to create a fault tolerant and scalable WordPress environment on AWS running on MySQL.
1.1. Features
- HTTPS only
 - CDN caching static files
 - Scalable file storage
 - Fault tolerance due to multi-AZ setup
 
1.2. Services
This template combines the following services:
- CloudFront: CDN for dynamic and static content
 - ELB: load balancer forwarding requests to EC2 instances and terminating SSL
 - EC2: virtual machines running the web servers
 - EFS: storage for WordPress files (WordPress core, plugins, themes, user uploads, ...)
 - RDS: MySQL database
 

1.3. Installation Guide
Important: A custom domain name (e.g. www.yourdomain.com) is needed before installing Wordpress based on this template. 
- This templates depends on one of our 
vpc-*azs.yamltemplates.
 - Create an ACM certificate for your custom domain name within the region you want to launch your stack in. Copy the ARN of the certificate. This is for the ELB.
 - Create another ACM certificate for your custom domain name in region 
us-east-1. Copy the ARN of the certificate. This is for CloudFront (note: CloudFront only supports ACM certificates in us-east-1) - This templates depends on one of our 
zone-*.yamltemplates.
 
- Click Next to proceed with the next step of the wizard.
 - Specify a name and all parameters for the stack.
 - Click Next to proceed with the next step of the wizard.
 - Click Next to skip the Options step of the wizard.
 - Check the I acknowledge that this template might cause AWS CloudFormation to create IAM resources. checkbox.
 - Click Create to start the creation of the stack.
 - Wait until the stack reaches the state CREATE_COMPLETE
 - Copy the value of 
CloudFrontDomainNamefrom the Outputs tab of your stack. - Create or update a CNAME/Alias record for your custom domain name pointing to the 
CloudFrontDomainNamefrom the previous step. 
1.4. Dependencies
vpc/vpc-*azs.yaml(required)vpc/zone-*.yaml(required)vpc/vpc-*-bastion.yaml(recommended)security/auth-proxy-*.yamloperations/alert.yaml(recommended)
1.5. Limitations
- WordPress will only run in two Availability Zones, even if your VPC stack has more.
 - PHP files are cached for 300 seconds on the web servers.
 - Static files 
wp-includesandwp-contentare cached for 15 minutes on the CDN. - Pre-defined auto-scaling might not be able to cover your requirements and needs load and performance testing.
 - No backup of EFS file system
 
2. WordPress: fault tolerant and scalable (Aurora)
Use this CloudFormation template to create a fault tolerant and scalable WordPress environment on AWS running on Aurora.
3 or more AZs required
2.1. Features
- HTTPS only
 - CDN caching static files
 - Scalable file storage
 - Fault tolerance due to multi-AZ setup
 
2.2. Services
This template combines the following services:
- CloudFront: CDN for dynamic and static content
 - ELB: load balancer forwarding requests to EC2 instances and terminating SSL
 - EC2: virtual machines running the web servers
 - EFS: storage for WordPress files (WordPress core, plugins, themes, user uploads, ...)
 - RDS: Aurora database
 

2.3. Installation Guide
Important: A custom domain name (e.g. www.yourdomain.com) is needed before installing Wordpress based on this template. 
- This templates depends on one of our 
vpc-*azs.yamltemplates.
 - Create an ACM certificate for your custom domain name within the region you want to launch your stack in. Copy the ARN of the certificate. This is for the ELB.
 - Create another ACM certificate for your custom domain name in region 
us-east-1. Copy the ARN of the certificate. This is for CloudFront (note: CloudFront only supports ACM certificates in us-east-1) - This templates depends on one of our 
zone-*.yamltemplates.
 
- Click Next to proceed with the next step of the wizard.
 - Specify a name and all parameters for the stack.
 - Click Next to proceed with the next step of the wizard.
 - Click Next to skip the Options step of the wizard.
 - Check the I acknowledge that this template might cause AWS CloudFormation to create IAM resources. checkbox.
 - Click Create to start the creation of the stack.
 - Wait until the stack reaches the state CREATE_COMPLETE
 - Copy the value of 
CloudFrontDomainNamefrom the Outputs tab of your stack. - Create or update a CNAME/Alias record for your custom domain name pointing to the 
CloudFrontDomainNamefrom the previous step. 
2.4. Dependencies
vpc/vpc-*azs.yaml(required, 3 or more AZs required)vpc/zone-*.yaml(required)vpc/vpc-*-bastion.yaml(recommended)security/auth-proxy-*.yamloperations/alert.yaml(recommended)
2.5. Limitations
- WordPress will only run three Availability Zones, even if your VPC stack has more.
 - PHP files are cached for 300 seconds on the web servers.
 - Static files 
wp-includesandwp-contentare cached for 15 minutes on the CDN. - Pre-defined auto-scaling might not be able to cover your requirements and needs load and performance testing.
 - No backup of EFS file system