15 Do's & Don'ts you must know to get the best out of AWS
Tags: devops, aws, devjournal, infrastructure
Published: 2023-03-07 02:32:00

AWS is one of the top four public cloud computing companies in the globe. 

Here are 15 Do's & Don'ts that you must know to get the best out of it.


![AWS](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5qjp8e60uos7viumxqkp.png)

## 1. Do:
Use RDS instead of putting a database on an EC2 instance. Amazon tells you to do that yourself!

## 2. Don't:
Make your security groups open to the world.

## 3. Do:
Open only certain ports to certain groups or IP addresses in your security groups.

## 4. Don't:
Use your own load balancer when you could use an Elastic Load Balancer.

## 5. Do:
Use Amazon Certificate Manager to make websites & applications more secure over HTTPS. It’s free! Just put in the domain(s) you want a cert for and Amazon will send a verification email. Click the link & then associate the cert with available AWS services and you're ready.

## 6. Do:
Use names for resources! Can you imagine how hard it would be to find something if it isn’t named properly? Don’t imagine it. Avoid naming things vaguely or not naming them at all!

## 7. Don't:
Rely on IP addresses on servers. If you need a static IP address for a server, assign an Elastic IP to it. Otherwise, if you stop and start the server, the IP address will change.

## 8. Do:
Look into Amazon’s own AMIs for your servers. They aren’t as costly as some other AMIs provided by third parties, and they also come bundled with basic software.

## 9.  Don't:
Be complacent. AMIs can be taken off the marketplace, and if you want to spin up a copy server, you may have to try another AMI, which might be problematic. Make sure that your AMIs are all still available.

## 10. Do:
Alternatively, research if making your own AMI is right for your software stack. Instead of installing software you spin up an instance, bake it into a custom AMI to save deploy time and to not run into issues with AMIs being taken off the marketplace.

## 11.  Don't:
Spend time developing deployment scripts for simple applications when you could just use Elastic Beanstalk instead.

## 12.  Do:
If you can't use ElasticBeanstalk, still invest in some form of deployment scripts and configuration management! You can just copy a server’s data and make a new one, but if you want to scale in dealing with outages, having a deployment framework in place is essential.

## 13. Do:
Make your servers disposable. You should be able to spin up new ones and replace old ones within a short span. If a server has hardware maintenance at a period of time, and you can’t handle that time frame, you need to be able to adapt and put something else in place.

## 14. Do:
Compare costs and choose which options are best for your business and application.

## 15. Do:
AWS is one super store of options, and not all of them are created equal. Be a discerning buyer.


AWS offers many unique features. 

Unfortunately, those features are also responsible for the confusion and bad practices. I hope this post helps you to make the best of it.

Thanks for reading this.

If you have an idea and want to build your product around it, schedule a call with [me](https://calendly.com/pragyanatvade).

If you want to learn more in DevOps and Backend space, [follow me](https://dev.to/pragyanatvade).

If you want to connect, reach out to me on [Twitter](https://twitter.com/pragyanatvade) and [LinkedIn](https://www.linkedin.com/in/pragyanatvade/).