Termin cloud-native można przetłumaczyć jako natywny dla chmury. Określenie to odnosi się do podejścia do tworzenia oprogramowania, które wykorzystuje technologię przetwarzania w chmurze. Aplikacje budowane są od początku z myślą o chmurze i z wykorzystaniem jej architektury oraz technologii (np.: mikroserwisy, kontenery, serverless). Systemy cloud-native korzystają z dostępnych w chmurze usług zarządzanych i narzędzi do automatyzacji.
Rozwiązania natywne dla chmury złożone są z luźno powiązanych systemów (mikroserwisów) które w przeciwieństwie do aplikacji monolitycznych, można szybko budować, wdrażać, skalować, a także wygodnie nimi zarządzać. Programowanie natywne dotyczy zarówno chmur publicznych, jak i prywatnych.
Jakie są zalety aplikacji cloud-native?
Natywne aplikacje chmurowe posiadają wszystkie zalety rozwiązań chmurowych:
- skalowalność – pozwalają z łatwością dopasować zasoby do zapotrzebowania, zapewniając nieprzerwany i płynny dostęp do usług użytkownikom,
- szybkość tworzenia – skracają czas tworzenia, usprawniania i publikacji dzięki wykorzystaniu mikrousług, strumieni ciągłej integracji / ciągłego dostarczania (CI / CD) oraz gotowych narzędzi typu open-source,
- usprawnienie pracy – likwidują konieczność zajmowania się konfiguracją i utrzymaniem infrastruktury serwerowej i sieciowej dzięki wykorzystaniu usług serverless,
- elastyczność i efektywność – można dużo szybciej je rozbudowywać o nowe funkcje, łatwiej konfigurować oraz przenosić miedzy środowiskami, a w rezultacie szybciej wdrażać na rynek,
- bezpieczeństwo – dzięki kopiom zapasowym w sieci oraz rozproszeniu geograficznym centrów danych są odporne na awarie i minimalizują ryzyko utraty danych.