logo

SellTracking

SellTracking

Firma

System SellTracking to rozwiązanie przygotowane dla firmy Vehis, które wykorzystuje moduł GPS zamontowany w pojazdach, aby umożliwić śledzenie ich lokalizacji. Ten system jest niezwykle przydatny w przypadku monitorowania pojedynczych pojazdów, jak i flot. Dzięki SellTracking, informacje o aktualnej lokalizacji pojazdów w leasingu są dostarczane w czasie rzeczywistym zarówno klientom, jak i pracownikom firmy Vehis.

Projekt

Firma Vehis zdecydowała się na migrację swojego środowiska stand-alone na środowisko oparte na Kubernetesie (k8s). Decyzja ta wynikała głównie z wyzwań związanych z wydajnością oraz skalowalnością istniejącego środowiska. Cała infrastruktura pod system SellTracking była niewydajny dla tak dużej skali samochodów. W celu poprawy wydajności oraz zapewnienia stabilności infrastruktury, zdecydowano się na migrację na mocniejsze fizyczne serwery oraz implementację Kubernetesa przy użyciu dystrybucji RKE2.

Cele projektu

Zwiększenie wydajności i stabilności środowiska Selltracking poprzez migrację na Kubernetesa.

Zapewnienie skalowalności infrastruktury wraz ze wzrostem liczby pojazdów.

Zapewnienie wysokiej dostępności usług dla klientów poprzez migrację na Kubernetesa.

Kubernetes

Kluczowym elementem projektu było zbudowanie architektury klastra Proxmox na fizycznych serwerach. Infrastruktura składa się z 6 maszyn wirtualnych oraz 3 klastrów. Kluczowymi komponentami klastra były 3 węzły master, 3 węzły worker oraz 3 węzły bazodanowe, działające niezależnie poza klastrem.

Zarządzanie bazą danych stało się priorytetem, dlatego zdecydowano się na wykorzystanie dystrybucji PostgreSQL, Patroni. Dzięki temu zapewniono nie tylko wysoką dostępność, ale również integralność danych. Bezpieczeństwo i redundancja danych zostały wzmocnione poprzez uruchomienie instancji bazy danych, które działały w trybie redundantnym. Dodatkowo, 3 serwery ETCD pełniły rolę instancji zarządczej, nadzorującej synchronizację danych i rolę master.

Architektura mikroserwisów

Architektura mikroserwisów opierała się na równoległym uruchamianiu wielu replik, co zapewnia wysoką dostępność i integralność systemu. Wdrożenie mikroserwisów w wielu replikach zapewniło większą dostępność aplikacji. Nawet w przypadku awarii jednego z serwerów, pozostałe repliki kontynuują pracę nieprzerwanie, co minimalizuje ryzyko przestojów.

Wyzwania

Podczas wdrożenia Kubernetesa zespół Core Logic miał szereg wyzwań, które znacząco wpłynęły na przebieg procesu migracji. Kolejnym wyzwaniem była optymalizacja infrastruktury. Duża liczba zleceń podczas migracji sprawiła, że operacje były zakolejkowane, co wymagało szybkiego i sprawnego działania. Warto zaznaczyć, że Artemis był systemem kolejkowym, który jest zoptymalizowany z uwagi na uruchomienie klastra oraz dostosowanie parametrów do specyfikacji sprzętowej.

Podczas wdrożenia Kubernetesa zespół Core Logic miał szereg wyzwań, które znacząco wpłynęły na przebieg procesu migracji. Kolejnym wyzwaniem była optymalizacja infrastruktury. Duża liczba zleceń podczas migracji sprawiła, że operacje były zakolejkowane, co wymagało szybkiego i sprawnego działania. Warto zaznaczyć, że Artemis był systemem kolejkowym, który jest zoptymalizowany z uwagi na uruchomienie klastra oraz dostosowanie parametrów do specyfikacji sprzętowej.

Rezultaty