Devops Best Practices
2 min readMay 6, 2020
Here is a list of few devops practices that can be helpful in planning the infrastructre deployment/maintainance/migration in an easy way.
Tools and Tech
- Selection of tool which can provide an abstraction for infrastructure provisioning.
- Compatibility across tools (output of one can be input to another/several)
Automate and Orchestrate
- Everything should be automated (from image creation till infrastructure deployment, Application/Service Deployment) ⇒ Single Click Deployment
- Automated Testing of the automated process
- Self Healing (consisting of replacing an unhealthy instance with a healthy one)
- Scope for improvements
Maintainance
- Upgradations/Migrations (eg, redis upgradation without downtime)
- Automated scripts written during the early stage of the project ideally helps for upgradation and improvements.
Monitoring
- Not limiting just to heap memory, CPU utilization etc monitoring/logging
- Creation of a simulated environment with the end user’s perspective.
- Checking request time from all the servers (app/dbs etc), effectiveness of the load balancers.
- Using the simulated environment to create alerts and at the same time following up with counter-actions
- Dashboard for effective and quick counter-measures
Security
- System/Application/Infrastructure/Network Security
- Scheduled job which updates an environment with the latest security patches
- Following few security standards such as Penetration Testing/ Vulnerability Assessment etc.
Culture
- Leveraging the existing skills and using the relevant tools accordingly. A python programmer would be able to use ansible as a configuration mgmt tool which has support for python scripts.