Cloud CMS Showcase Setup
Skillbyte GmbH has their own Content Management System (CMS). Few biggest enterprise clients in the German market asked for the system showcase with the requirement for it to be set up on the AWS. Therefore, we built an out-of-the-box solution that uses the cloud technology to rapidly deliver scalable, easily configurable and manageable infrastructure to score the contracts.
The main customer pains were the following:
- The CMS itself is a monolith product built in Java, with more than 100 modules.
- There are more than 15 processes interacting with each other, creating high workload.
- A setup process was a real pain for the customers and required following a complicated checklist.
The product is now enterprise-grade and production-ready. The customers acquired by this setup are a truck manufacturing giant, several leading media and a popular retailer, just to list a few. The process of the CMS setup and deployment is now fully-automated and the product has also got features like:
- 3 commands and around 15 minutes of time to deploy the CMS(previously it took 2 weeks to deploy)
- Auto-scaling of the cluster nodes(to handle the load and optimize the costs)
- In-depth logging and analytics,
- Real-time monitoring and smart alerts.
Location: Cologne Area, Germany
Partnership period: May 2016 – ongoing
Team size: 2 – 8 people
Team location: Kharkiv, Ukraine
Services: Cloud infrastructure design and development, DevOps-as-a-Service, Big Data solutions, Web Development, QA and testing, product and infrastructure monitoring
Expertise delivered: AWS cloud administration, DevOps services, microservices and containerization, DevOps support team, cloud monitoring solutions
Technologies: AWS, Kubernetes, Docker, Ansible, Jenkins
One of the features of the CMS is the rigidity of the page layout, which is configured in front end service. It allows the content to be updated in a web interface by anyone who has appropriate permissions, without the necessity to meddle with the source code itself. The client wanted us to provide the following improvements:
- Migrate the showcase from Mesos/Marathon environment to Kubernetes
- Shorten the product deployment time
- Add the missing features
- Configure error-proof update and recovery procedures
- Introduce the Continuous Delivery pipeline to automate the setup and configuration as much as possible.
- Split the monolith app into microservices to provide stability
- Containerize the components for scalability
- Deploy an in-depth monitoring and logging solution
That would make the product enterprise-ready, as it was aimed to be offered to high-level EU enterprises.
IT Svit performed a test deployment of the CMS and analyzed all the dependencies and possible bottlenecks an IT engineer might face. We then performed the following improvements:
- Moving the CMS from a Mesos/Marathon environment to a redundant Kubernetes cluster,
- Containerizing the system components using Docker
- Using Jenkins to enable Continuous Implementation / Continuous Delivery (CI/CD) pipeline
- Automating the product build and deployment using Ansible.
- Automating the process of recovery for all the components in case of an interruption during the system update
- Enabling the auto-scaling for the front-end service and automating its release cycle
- Designing and developing a customized monitoring too