Disclaimer: This is a personal blog, any views or opinions expressed in this blog are personal and belong solely to the blog author and do not represent those of people, institutions, or organizations that the author may or may not be associated with in a professional or personal capacity, unless explicitly stated. Any views or opinions are not intended to malign any religion, ethnic group, club, organization, company, or individual.
This post is part of our series on how to Create a Multi-Tier Auto-Scaling WordPress Site on Amazon Web Services. If you haven’t checked out our previous posts, be sure to click the link above.
As a reminder, we’ll follow the AWS Reference architecture as close as possible; however, we will try to use Free Tier resources whenever available. For this tutorial, we are going to create a Cache Cluster on AWS ElastiCache to use for WordPress.
Scalability does come with some drawbacks with regard to keeping themes/plugins up to date; however, it all depends on your goal and what you need for your site. The way you’ve traditionally managed WordPress will be different with this architecture and that needs to be taken into account long-term.
Please note that we are going to put the whole WordPress installation on EFS which does have some latency and performance concerns. We will try to overcome this with caching and CDN; however, if that’s not performant enough for your use case, you may want to only put the “uploads” directory on EFS and then have a process to update the base AMI going forward.
Prerequisite: AWS Reference Architecture and Previous Posts
Once you are logged into your AWS Management Console, navigate to the “ElastiCache” Service.
Once there, simply click on “Get Started Now” in the top banner.
Create Redis Cluster
We are going to proceed with a Redis Cluster
- Cluster Engine: Redis
- Location: Amazon Cloud
- Name: Give the cache cluster a friendly name
- Node Type: Select either cache.t3.micro or cache.t2.micro to stay in the Free Tier
- Number of Nodes: 1 for the tutorial, but add additional for a Production use case/High Availability
- Advanced Settings
- VPC ID: Select the VPC you created
- The Wizard can create your subnet group for ElastiCache or you can manually create it. Make sure to use the subnets we created for our “data” tier.
- Security Group: Select the Security Group you created for ElastiCache
Click on “Create” and this will start creating your ElastiCache Redis service.
Note: We are keeping settings simple for our tutorial purposes. If you are using these guides for a Production use case, you’ll want to create a Multi Availability Zone cluster with additional replicas.
Note Important Details
Click on the cluster name to get to important details about your ElastiCache Cluster.
Note the endpoint and you’re all set!