Case Study- Security and Investigation company
A Services Company that works on multiple verticals and domains with a focus on security gave DevOps Enabler & Co. an opportunity to work on the DevOps part of Solutions for enterprise zero-trust security solutions.
Outcomes
- All the Manual processes got into the Automation.
- The complete progress of each Individual was tracked using the ticketing system also the Dashboards for reporting and reviewing.
- Compared with the Previous Implementation lot of Automation was Implemented, and a lot of work became easier and more efficient also, and Time saved.
- Team had the ability to all capture the process Knowledge of Implementation and Advanced DevOps tools into the team.
- The communication increased between the client and the DevOps and development team.
The customer was a contractor for projects in various security agencies in the U.S., Canada, and the E.U. The mission of the customer was to revolutionize the enterprise zero-trust security solutions landscape. client beginning to play an important role in the enterprise threat detection landscape.
The Client solutions for discovering deception are straightforward to deploy, user-friendly, and have scientifically proven reliability.
Challenges
- There is no plan to Implement the Process in the team.
- The team lacked complete knowledge of the foundation and architecture of the Process implementation.
- The customer was not using the Source code management tool to track the change request.
- The code was completely into the Developer’s machines.
- The customer team did not maintain a proper ticketing system to create the Issues and stories according to the project.
- Deployments were now done using Continuous Integration and Continuous Deployment. The deployments were done Manually.
Solution
- During The POC and R&D Process related strategies were discussed on what should be implemented with Management and DevOps team.
- Implement the required Tools for Source code management, Cloud Automation, Ticketing system, Continuous Integration, and Deployment processes.
- GitLab Community Edition was chosen as the Source code management tool, and migrate the Machine level code into the Repositories.
- Implement end-to-end Cloud Infrastructure automation using the Automation tool terraform.
- Jenkins was chosen for the Deployment of CI-CD Pipelines.
- Weekly Sprints were planned to Baseline and to Improve the DevOps teams to work more efficiently
- Coordinated the Daily communication with the DevOps Internal team and weekly Communication with the Client to get Improvements and feedback.
Process
The customer was keen on using open-source tools and Jenkins was the natural choice
Jenkins:
- Jenkins is one of the most famous Open-Source CI/CD tools.
- The leading open-source automation server
- It provides hundreds of plugins to support building, deploying and automating any project
Advantages:
- Platform independent as it is developed in java.
- It is an Open-Source tool
- Has a huge community with more than 1000 plug-ins.
The architecture of CI-CD Work Flow:
Pre-requisites:
- Set up the Jenkins server and install docker on it.
- Kubernetes (EKS) cluster up and running.
- Install below Jenkins plugins:
- Amazon ECR plugin
- Docker Pipeline
Steps for CICD Flow:
- Git: Developers push their change to git.
- Jenkins: Using the CICD server(Jenkins) we pulled the code from git, compile the code and create a docker image.
- ECR: Newly created docker image we push to the AWS ECR repo.
- EKS: Deploy the docker image into the EKS using k8s deployment YAML.