Skip to main content
DevOps

AWS DevOps

Anybody can go on the internet and lookup several different ways to deploy an application to internet but this blog is about understanding what you're doing and prioritizing availability and scaling.

Chris Norton
System Architect
2 min read
2 blocks

One of the recurring technologies that I keep coming back to is cloud. Whether it be simple storage or carefully architected deployments. For the past month or so I have been using cloud to sharpen my CI/CD skills.

Back in 2022 I earned my first AWS cloud cert and since then I have been using some element of cloud ever since. Before I was just dropping static files into s3 manually and letting AWS render it through domains in Route 53 and Cloudfront.

I recently have been sharpening my devops skills and I now have an even greater understanding on what each function actually does. It's one thing to be able to pass an exam but its another to be able to know what to use and when to use it.

In a recent video I did a demo where I spun up 4 Ec2 Instances, an s3 bucket and used it to deploy a fullstack Java application. For each instance I had:

  • Tomcat : Server
  • MariaDB : Database
  • ElastiCache : Caching System
  • RabbitMQ : Message Logging

I used the AWS CLI to upload the war file from the Java application to an S3 bucket and Route 53 to connect a domain. I made sure I used Autoscaling on my EC2 so if there was any failure they would spin another instance up automatically. The result was an app that was deployed with login functionality that was pulling data from the database and storing it in the cache so that it may be pulled later if the page was revisited.

Tags

#AWS#Cloud