Banksalad Develops GUI-Based Deployment System 'Alice' for Closed-Network IDC Environment
Key point
Banksalad's AFIT team developed its own GUI deployment system 'Alice' instead of Jenkins and applied a Canary deployment strategy to overcome financial regulatory compliance and closed-network constraints.
Details
Banksalad's Advanced Financial Infra Team (AFIT) faced a situation where it had to operate services in a closed-network environment within an IDC to ensure security and legal compliance stemming from collaboration with financial institutions. In an environment where internet connectivity was unavailable and public cloud Managed Services could not be used, the existing Slack-based 'deploybot' did not work, and without infrastructure in place, all tasks had to be handled manually.
Background of Deployment System Development and Tool Selection
To establish a stable operational foundation before expanding the team's services, building a deployment system was set as the top priority. Requirements analysis revealed the need for Docker utilization, zero-downtime deployment, a GUI, and SSO integration. The existing tool, Jenkins, was evaluated as unsuitable for all team members due to difficulties in applying staged deployment, complexity in implementing Authorization, and an unintuitive UI, leading to the final decision to develop a proprietary GUI-based deployment system.
drone.io was selected as the CI/CD tool. This was because it allows easy integration with Github Enterprise within a closed network, provides a simple UI, and supports areas beyond CD. In the CI pipeline, drone is triggered via webhook upon a Github Push, and the built Docker image is stored in Nexus, the Registry system.
Canary Deployment Strategy and System Architecture
Among Rolling, Canary, and BlueGreen, Canary was adopted as the deployment strategy. This was because the IDC (Nutanix) environment has slower VM boot speed compared to AWS, raising concerns that adopting BlueGreen would slow down overall deployment speed and increase resource costs. The Canary strategy prevents traffic loss by gradually lowering traffic from L4 to the target VM, deploying the new image, and then monitoring for service anomalies before proceeding with full deployment.
The system consists of 3 services: deploy-web (user operations), deploy-api (backend logic), and Friday (L4 and Nutanix API control). Since Container Orchestration such as Kubernetes cannot be used in the financial IDC environment, the approach of directly deploying Docker images to each VM was adopted.
Key Features and Effects
The proprietary deployment system 'Alice' provides the following features:
- Intuitive GUI-based Interface: After SSO login, it displays a list of Github Enterprise Repositories, and deployment and rollback are possible with a single button click.
- Canary Deployment Support: After selecting the desired image and pressing the Canary Deploy button, deployment begins from VM #1, and rollback is possible at each stage.
- Image Lock Feature: To prevent interference from other users during deployment, a lock is placed on the image to prevent tangling.
- Deployment History Management: Logs are kept of who took what action on which image and when.
Through this system, the convenience of Docker-based development and deployment was secured even in a closed-network environment, and a foundation was laid for future monitoring and system enhancement.
This summary was generated automatically by AI. Check the original for the author's claims and context. Copyright belongs to the original author.
Our guide explains how the AI works. Report summary errors, attribution issues, or removal requests via Contact.