Blog
Vollautomatische CI/CD-Pipeline für über 900 Bots und Dienste: Der Fall GotBit & Dysnix

Vollautomatische CI/CD-Pipeline für über 900 Bots und Dienste: Der Fall GotBit & Dysnix

Alex Vorona
April 4, 2024

Wir freuen uns, GotBit zu unseren Kunden zu haben. Jedes Mal, wenn wir an einem solchen Projekt teilnehmen, können wir die gesamte Infrastruktur fast von Grund auf neu einrichten und gleichzeitig die Hauptaufgabe lösen.

Über GotBit

GotBit.io wurde 2017 gegründet und hat durch das Angebot von Market-Making- und Risikokapitaldienstleistungen erheblich zum Kryptowährungssektor beigetragen.

Market-Making-Dienste bieten Handelslösungen für Token-Emittenten, die es ihnen ermöglichen, verschiedene Market-Making-Strategien zu entwickeln und umzusetzen und ihre Token mit Liquidität zu versorgen. Dieser Service hilft Emittenten, den Handel anzukurbeln und die Liquidität ihrer Tokens zu verwalten, wodurch reibungslosere Transaktionen und eine kontrolliertere Marktpräsenz ermöglicht werden.

Das Unternehmen konzentriert sich auf die Entwicklung und Umsetzung von Marktstrategien, die Verbesserung der Tokenomik und die Bereitstellung von Liquidität für Kryptowährungsplattformen. GotBit.io bedient in erster Linie die Web3-Startup-Branche und hat sich weiterentwickelt, um verschiedene Zweige des Kryptomarktes abzudecken, darunter Market-Making, Startup-Inkubation und Beratung.

Sie mussten ihre gesamte Infrastruktur neu konzipieren, um ihre Dienste mit einer Zuverlässigkeitsgarantie anbieten zu können.

Anfrage

Die Herausforderung bestand darin, eine unterstützte und skalierbare Infrastruktur zu entwickeln, um die GotBit-Dienste reibungslos und ohne Verzögerungen und Datenverlust auszuführen. Bevor sie sich an uns wandten, hatten sie bereits einige Projekte, Umgebungen und den Kubernetes-Cluster. Somit hatte das Dysnix-Team einiges an Vermächtnis und Basis, mit dem es sich auseinandersetzen musste. Angesichts der vom GotBit-Team geleisteten Vorarbeit mussten die Dysnix-Ingenieure eine zuverlässige, praktikable Lösung entwickeln und Verbesserungen implementieren.

Ein weiteres Upgrade, das der Kunde wollte, war die Entwicklung einer CI/CD-Pipeline, um Dutzende von Basisdiensten und mehr als 900 Kunden-Bots abzuwickeln. Eine der Herausforderungen im Zusammenhang mit der Pipeline bestand darin, eine Funktion für die automatische Bereitstellung solcher Bots im Kubernetes-Cluster bei Bedarf ohne Beteiligung von Softwareingenieuren hinzuzufügen.

Mit all dem auf dem Teller machte sich das Dysnix-Team an die Arbeit.

Verhandlungen und die SOW

Der gesamte Verhandlungsprozess war so kurz wie möglich. Wir hatten ein erstes Gespräch mit GotBit, um die Bedürfnisse und Erwartungen an Ergebnisse zu besprechen. Anschließend erstellte unser Cloud-Architekt einen Entwurf der Architektur und bereitete die Leistungsbeschreibung vor. Nach der Genehmigung begann das Dysnix-Team mit der Implementierung der Infrastruktur und ging entsprechend der Leistungsbeschreibung vor.

Unser Plan umfasste zunächst die Infrastrukturlösungen in zwei Umgebungen und die CI/CD-Lösung. Außerdem bat GotBit um eine maßgeschneiderte Proxy-Lösung, um einige Proxy-Pools für die Datenanalyse mit festen IP-Adressen zu entwickeln und zu implementieren.

Um den Prozess zu verwalten, hatten wir wöchentliche Synchronisationen, um Updates und Pläne für den nächsten Zeitraum auszutauschen. Außerdem führten wir Demos durch, damit der Kunde den Fortschritt in einer möglichst einfachen Präsentation verfolgen konnte. Wir haben alle neuen Aufgaben und Anfragen zum Backlog hinzugefügt und sie im Verlauf des Projekts priorisiert.

Um effizient und ohne bürokratische Verzögerungen kommunizieren zu können, hatten wir einen Arbeits-Chat für schnelle Chats und betriebliche Fragen, in dem unsere Techniker alle Probleme freundlich und aufmerksam beantworteten.

Lösung

Im Kern haben wir eine Architektur und Infrastruktur von Grund auf auf Kubernetes mit GitLab CI/CD sowie Entwicklungs- und Produktionsumgebungen erstellt. Wir haben alles in AWS aufbewahrt, da ein Kunde es zuvor verwendet hatte.

Wir haben mehrere wichtige k8s-Versionsupgrades, mehrere Iterationen zur Kostenoptimierung, die Neugestaltung der Knotenpools und viele Wartungsaufgaben für Geschäftsdaten durchgeführt.

Das Architekturschema

Das Projekt wurde mit IaC und dem Deployment-as-a-Code-Ansatz umgesetzt, wodurch der Entwicklungsprozess überschaubar, schnell und stabil war. Das Dysnix-Team implementierte zwei zuverlässige Umgebungen, beide mit automatischer Skalierung und konfiguriertem CI/CD, zusammen mit separatem benutzerdefiniertem CI/CD, um die Bots von mehr als 900 Kunden automatisch bereitzustellen.

Eine weitere Lösung, die wir implementiert haben, ist ein mehrstufiges Proxysystem in AWS und Kubernetes, um ausgehende IP-Adressen dauerhaft zu halten und ausgehende Anfragen ohne Probleme zwischen den IP-Adressen zu verteilen. Es verarbeitet 2 Milliarden ausgehende Anfragen pro Monat bei minimaler Belastung.

Unsere Aufgabe bestand auch darin, die Leistungskosten für dieses Projekt zu optimieren, da die Standard-EKS-Einstellungen es GotBit nicht ermöglichten, das erforderliche Leistungsniveau zu erreichen.

Ein weiterer Punkt, den wir für GotBit behandelt haben, ist benutzerdefiniertes Autoscaling und erweiterte Überwachung. Da der Kunde Open-Source-Tools für die Erfassung von Geschäftskennzahlen verwendete, implementierte und konfigurierte das Dysnix-Team Prometheus und Elastic Search mit separaten Pipelines für alle Datenströme, die Daten an Grafana und Kibana senden würden, zusätzlich zu internen Hilfsprogrammen für Überwachung und Protokollierung.

Teilnehmende Ingenieure

Nur zwei Spezialisten von Dysnix-Seite waren am GotBit-Projekt beteiligt: ein Cloud-Architekt und ein Senior DevOps Engineer. Wie vom Kunden erwartet, wurden sie zu einem Experten für das Projekt.

Das Feature, das Gotbit an unseren Ingenieuren am meisten gefiel, war die ehrliche Anerkennung jedes aufkommenden Problems und die Hingabe, eine Lösung zu finden. Unsere Experten schweigen zu keinem Problem, sondern versuchen immer, die Wurzeln zu finden — sie beseitigen mit all ihrer Leidenschaft und ihrem Engagement die Komplikationen im Kern. Sogar zwei Ingenieure von Dysnix könnten ein komplexes Projekt wie GotBit bewältigen.

Einschätzungen, Pläne und Ambitionen

Der Kunde schätzt die Beratungen der Dysnix-Ingenieure zur Anwendungsarchitektur — sie waren ein wertvoller Beitrag zum Projekt. Die Ingenieure von Dysnix arbeiten an der dritten Umgebung, weiteren Leistungsverbesserungen, der CI/CD-Geschwindigkeitsoptimierung und der routinemäßigen Betriebsabwicklung.

Ab August 2023 erhalten wir neben der Hauptleistungsbeschreibung zusätzliche Beratung für die internen Ingenieure in Bezug auf ihre Projekte. Wir teilen unsere Best Practices mit dem internen DevOps-Team, stellen aufschlussreiche Fragen und weisen auf Verbesserungspotenzial bei ihrer Arbeit hin.

Mit der Sturheit unserer technischen Asse wird GotBit seine Leistung exponentiell verbessern und sie als Wettbewerbsvorteil nutzen, um auf dem Markt erfolgreich zu sein.

Alex Vorona
DevOps Lead
Sharing the in-house secrets of DevOps mastery originated from Dysnix.
Table of content
In die Zwischenablage kopiert
Fügen Sie es ein, wo immer Sie möchten