Managing Cloud Deployment

Natarajan Santhosh
2 min readMar 27, 2024

We should keep things simple, KISS. My few key points for the future myself:

  1. Be cloud agnostic. Everyone operates on margins and a slight increase in a cloud provider’s fees could be a death sentence for your business. Remember, cloud providers are not your friends; they are in the business of taking your money and putting it in their pockets.
  2. 2. Consider using bare metal if it’s feasible for your operations. The price/performance ratio of bare metal is unbeatable, and it encourages a simpler infrastructure. It also presents an opportunity to learn about devops, making it harder for others to sell you junk as a premium service. This approach also discourages the proliferation of multiple databases/tech/tools for the sake of CV updates by your colleagues, keeping your infrastructure streamlined.
  3. 3. Opt for versatile tools like Ansible that can handle a variety of tasks. Don’t be swayed by what’s popular among the “cool kids”. Your focus should be on making your business succeed, not on experimenting with every new tool in the market. Master it well.
  4. 4. Make sure you can replicate your whole production stack on your box in a few seconds, a minute max. If you can’t, well, back to the drawing board.
  5. 5. Use old and tried tech. Choose your tech wisely. Docker is no longer cool, and Podman is a rage on HN, but there are hundreds of man-hours of documentation online of every Docker issue you can think of. And Docker will stay for a while. The same for Java/Rails/PHP…
  6. 6. Keep everything reproducible in your repository: code, documentation, deployment scripts, and infra diagrams. I’ve seen people use one service for infra diagrams and another to describe database schema. It’s madness.
  7. 7. (addon) Stay away from monorepos. They are cool, they are “googly,” but you are not Google or Microsoft. They are notoriously hard to scale and secure without custom tooling, no matter what people say. If you have problems with the code sharing between repos, back to the drawing board.

--

--