I want to assemble a checklist of key software components for an entire model Production Environment, for running and maintaining a web app on top of Docker in a DevOps way. Specifically, I need all key architecture components for a well developed and mature system.
Many components will be the same regardless of what technology the web app is using, but I will appreciate also checklists for more specific scenarios, such as a collection of Java-based Microservices (or more traditional things like SAP Hybris Commerce), and for a PHP-based application (such as PrestaShop).
For Prestashop example - it requires at minimum a LAMP bundle just to run. But it is necessary to think immediately also about elements like WAF and Load Balancing in multiple places. On top of that Prestashop is compatible right out of the box with Memcached and CDN for static content, and SAP Hybris can be extended in a similar way.
However, to facilitate DevOps, it needs additional components, like Ansible, APM, AppDynamics, Bucky, Docker Swarm, ELK Stack, Fluentd, GoCD, Grafana, Graylog, Heap, Jenkins, Munin, Pingdom, Prometheus and/or addressing topics like Infrastructure as a Code, CI/CD, Continuous Green/Blue Deployments, Rolling Deployments, Configuration Management, Automatic Scaling, Network and Security, and maybe other topics important from Architecture perspective, that I missed here.
Please provide at least one components list from these below:
- Open Source only.
- Best in Class.
- Budget friendly.
It is important that all elements of the lists need to be easily manageable through web browser at least after installation. If you can, please describe your experience and point out best practices.