DEV Community

Cover image for Applying a Reliable approach in your AWS infrastructure
sosmation
sosmation

Posted on

Applying a Reliable approach in your AWS infrastructure

AWS outlines a key number of pointers to to improve, boost and guide in decision making, to see what is fit for your product. AWS advocates for six pillar approach known as the the well architected framework, this are

  1. Operation Excellence
  2. Security
  3. Reliability
  4. Performance efficiency
  5. Cost Optimization
  6. Sustainability

In this article i will be looking at how different factors work in ac

AWS plays a key part in ensuring that your cloud experience through the shared responsibility framework, this achieved by aws maintaining and updating underlining hardware, ensuring there is low-latency networking between availability zones, enabling traffic between zones is encrypted. Companies that leverage on multi-AZ architecture create a cushion that prevents an outage incase one of the availability zones is affected by a catastrophic event, has a power-outages and environmental events like earthquakes.

In the customer side of the shared responsibility model the provisioned service determines the amount of configuration one must perform as part of the resiliency responsibility.

scenarios

An application is deployed in four ec2 instances, unfortunately some of the computation is not utilized.
In this particular case there is an issue of over provisioning, the demand does not exceed the set up resources, this one of the key points in design principles that dictates one should stop guessing capacity, this can be prevented by monitoring the workload, in this particular case the use monitoring services like cloudwatch which is set up with the right policies set through the identity and access manager (IAM). There is also the setting up of auto scaling group which adjusts the number of instances based on the threshold metrics attained, example computational threshold equal or greater than eighty percent will trigger a new instance to be spine up........

case scenario 2

A company wants to set up a test environment to see if their application is production ready, they have identified the resources they will require for the task, they manually setup the resources but along the way their infrastructure shows signs of weakness and needed to be scrapped off.

One common issue when provisioning resources by manually configuring them is they are more likely prone to human error especially as the infrastructure scales. in order to achieve a reliable infrastructure it is best practice to manage your infrastructure through automation. AWS provides a number of tools like AWS Cloudformation which is a service that assists in modeling helping you model and setting up your AWS resources, by creating a template that describes all the resources that you want and cloudformation works on the provisioning and configuring the resources for you.
for more information on getting started with cloudformation visit this link

AWS also provides a software development kit (SDK) service to allow you to build applications, and manage using your most conversant programming language and tools without the need to access your AWS console. Below is a link of the supported programming languages and tools you can use to get started with AWS SDK

Reliability is also achieved through being able to revert or recover from failure. Unforeseen issues are likely to occur in the most unpredictable time, the key thing is how are you able to manage the failure an example is an application with a MySQL database that requires minimal downtime, a disaster recovery strategy should be at the center when designing the database, this is based on how critical your application is for instance if your application can have a long downtime period, a cost-effective disaster recover strategy can be implemented. In this particular case the application requires minimal downtime, AWS provides a detailed documentation on what to select based on the application use case.

Conclusion

When adopting the AWS cloud there are a number of key points to check and one is Reliability, it is one of the key pillars in the well architect framework, we have had a brief incite on some of the reliability issues that occur when setting, implementing and managing your AWS resources. AWS offers a comprehensive documentation of how to implement a reliable system.
Here is a foundational approach that will guide you in your journey

All the best in your AWS cloud journey, feel free to comment and share, see you in the next article.

_Authored by : Sospeter Gathungu _

Top comments (0)