Blog
Fully automated CI/CD pipeline for 900+ bots and services: GotBit & Dysnix case

Fully automated CI/CD pipeline for 900+ bots and services: GotBit & Dysnix case

Alex Vorona
April 4, 2024

We’re glad to have GotBit among our clients. Each time we participate in such a project, we can set up the entire infrastructure almost from scratch, simultaneously solving the main task.

About GotBit

Established in 2017, GotBit.io has significantly contributed to the cryptocurrency sector by offering market-making and venture capital services.

Market-making services provide trading solutions for token issuers, enabling them to craft and execute various market-making strategies and provide their tokens with liquidity. This service helps issuers stimulate trade and manage their tokens' liquidity, facilitating smoother transactions and a more controlled market presence.

The company focuses on developing and executing market strategies, enhancing tokenomics, and providing liquidity to cryptocurrency platforms. Primarily serving the Web3 startup industry, GotBit.io has evolved to encompass various branches of the crypto market, including market-making, startup incubation, and consulting.

They needed to reimagine their whole infrastructure to provide their services with a reliability guarantee. 

Request

The challenge was developing a supported and scalable infrastructure to run GotBit services smoothly, without delays and data loss. Before addressing us, they previously had some projects, environments, and the Kubernetes cluster. Thus, the Dysnix team had some legacy and base to deal with. Considering the groundwork done by the GotBit team, Dysnix engineers had to build a reliable, viable solution and implement improvements. 

Another upgrade the client wanted was to develop a CI/CD pipeline to handle dozens of basic services and more than 900 clients’ bots. One of the challenges connected to the pipeline was adding a function for the automatic deployment of such bots in the Kubernetes cluster on demand without software engineers' involvement.

With all this on the plate, the Dysnix team got to work. 

Negotiations and the SOW

The whole negotiation process was as short as possible. We had an initial call with GotBit to discuss the needs and expectations for results. Then, our Cloud Architect created a draft of the architecture and prepared SoW. After approval, the Dysnix team started with infrastructure implementation and moved following the SoW.

Our plan first included the infrastructure solutions in two environments and the CI/CD solution. Also, GotBit requested a custom proxy solution to develop and implement a few proxy pools for data parsing with fixed IP addresses. 

To manage the process, we had weekly syncs to share updates and plans for the next period. Also, we conducted demos so the client could see the progress in the most straightforward presentation. We added all new tasks and requests to the backlog and prioritized them as the project progressed.

To communicate efficiently and without bureaucratic delays, we had a working chat for quick chats and operational questions, where our engineers kindly and attentively answered any issues.

Solution

In the core, we created an architecture and infrastructure from scratch on Kubernetes with GitLab CI/CD and development and production environments. We kept everything in AWS, as a client had previously used it. 

We passed through multiple major k8s version upgrades, multiple cost-optimization iterations, reshaping of the node pools, and many business data maintenance tasks.

The architecture schema

The project was implemented with IaC and the Deployment-as-a-code approach, making the development process manageable, fast, and stable. The Dysnix team deployed two reliable environments, both with auto-scaling and configured CI/CD, along with separate custom CI/CD to automatically deploy more than 900 clients’ bots.

Another solution we’ve implemented is a multi-level proxy system in AWS and Kubernetes to keep outbound IP addresses persistent and load balance outbound requests between IPs without issues. It handles 2 billion outgoing requests per month at a minimal load.

Our task was also to conduct performance-cost optimization for this project, as default EKS settings didn't allow GotBit to reach the required performance level.

Another point we managed to cover for GotBit is custom autoscaling and advanced monitoring. As the client used open-source utilities for business metrics collecting, the Dysnix team deployed and configured Prometheus and Elastic Search with separate pipelines for all data streams, which would send data to Grafana and Kibana, in addition to internal utilities for monitoring and logging.

Participated engineers

Only two specialists from the Dysnix side participated in the GotBit project: a Cloud Architect and a Senior DevOps Engineer. As the client expected, they became an expert engine for the project. 

The feature Gotbit liked the most about our engineers was an honest acknowledgment of any emerging issue and dedication to generating a solution. Our experts never remain silent on any problem but always try to find the roots—they eliminate the complications at the core with all their passion and commitment. Even two of Dysnix's engineers could handle a complex project like GotBit.

Appreciations, plans, and ambitions

The client appreciates consultations held by Dysnix engineers regarding the application architecture—they were valuable input to the project. Dysnix engineers are working on the third environment, further performance improvements, CI/CD speed optimization, and operational routine handling. 

Starting in August 2023, we have been provided additional consulting for the in-house engineers regarding their projects aside from the main SoW. We’re sharing our best practices with the in-house DevOps team, generating insightful questions, and pointing to the room for improvement in their work.

With the stubbornness of our technical aces, GotBit will exponentially improve its’ performance and use it as a competitive advantage to prosper in the market.

Alex Vorona
DevOps Lead
Sharing the in-house secrets of DevOps mastery originated from Dysnix.
Copied to Clipboard
Paste it wherever you like