There’s been a bunch of info in the past few emails. Taking all that in can be difficult.

Let’s recap:

  • There are 3 major components of automating your infrastructure to get back to what you really love doing:
    • Infrastructure as Code
    • CI/CD
    • Immutable Infrastructure
  • Infrastructure as Code lets you avoid clicking around in a GUI every time you want to spin up a new resource.
  • CI/CD makes your builds and deployments more repeatable and automatic.
  • Immutable Infrastructure reduces the amount of time you have to spend manually changing things.

All of that is well and good, Joe, but how can I actually get started on this?

You’re right, of course. Each of those is a giant topic, worthy of entire books just on their own.

But that doesn’t mean getting started is difficult.

How do you eat a whale? One bite at a time.

Action Steps

Benefits come from taking action. If you want to keep moving forward and improving your processes, here’s a few more action steps to guide you along the path:

  • Pick one of your projects. Add scripts to build, test, and deploy it. Configure a CI/CD server to do so automatically when code is committed in your repository.
  • Take your standard tool stack (LAMP, MERN, LEPP, etc.) and make a base image for it. Use that for deploying your test builds, and once you’re comfortable your production builds too.
  • Set up an IaC template to quickstart your standard hosting architecture. Load balancer, 2+ app nodes, database node, cache node, etc. Use your standard tool stack image to speed up the process even more.
  • Containerize your app, and run multiple copies of it on multiple hosts. Instant redundancy.
  • Set up basic orchestration using Docker Compose and/or Auto-scaling groups. Now you have automatic remediation of server downtime problems.

If you want even more than what you’re getting here, follow me on Twitter for daily tips just like this: https://twitter.com/Solo_DevOps