The Good Old Days, Then Came Cloud
Pre-cloud and Pre-DevOps, things were much simpler. Sys Admins had a clearly defined role. If your boss was upset that the application was slow, you’d log into the server, check top, memory consumption, narrow it down per process, maybe run an strace, and continue troubleshooting until you hopefully discovered the cause.
It was only a few years ago that Rackspace did everything manually to launch new products. The process would take us two years and by the time the product launched, someone would beat us on time to market and it would diminish our hard work. We were entering the cloud market and it was clear that we either had to innovate more quickly and get products out faster or we would not be competitive in this growing, fast-paced market.
Maintaining host files on standard *nix system has been traditionally done by hand. This becomes a challenge as the number of systems grows and is more true in the cloud model, where you might add/delete servers at a higher rate. One solution would be to use DNS and use a local zone to store your host name to IP mapping. If you are using Chef for automation, here is another example on how to automatically generate the host file entries.
For the fast-growing Internet-centric and SaaS applications that you deploy weekly or even daily, you need specialized DevOps engineers who can look beyond servers to help you build the most agile and scalable platform possible.
You are pouring a sizeable portion of your life into building a world-class product. Amid the stress and passion of building out new features and fixes, it is important to also develop the discipline of automated testing and configuration management. Here’s why: