Otwarta przyszłość technologii

Sukces coraz większej liczby organizacji na świecie zależy od oprogramowania. I coraz częściej zadają sobie one pytania: jak szybciej pisać lepszy kod, jak tworzyć bardziej innowacyjne rozwiązania, jak zabezpieczać technologie oraz jak optymalizować cały proces wytwarzania oprogramowania. Dobrych odpowiedzi warto szukać w świecie otwartych technologii. O najlepszych praktykach i sprawdzonych technologiach oraz ofercie usługowej dla aktualnych i potencjalnych użytkowników open source dyskutowaliśmy podczas pierwszej edycji konferencji Open Source Tech, która odbyła się 19 maja 2021 r.

Otwarta przyszłość technologii

W miarę jak organizacje w coraz większym stopniu zaczynają polegać na systemach IT oraz produkcji oprogramowania, coraz szerzej otwierają się na technologie open source i włączają je do swoich środowisk. Dobrym przykładem jest platforma konteneryzacyjna Kubernetes, która stała się dziś de facto „systemem operacyjnym” dla chmury. Lekkie i przenośne kontenery znacznie ułatwiają migrację, pozwalają budować szybciej i łatwiej. Idealnie sprawdzają się w projektach mających na celu modernizację aplikacji oraz w hybrydowych środowiskach multicloud.

Wykorzystywanie kontenerów nie jest jednak wolne od wyzwań. Trzeba umiejętnie dobierać narzędzia, optymalizować procesy CI/CD (Continuous Integration/Continuous Delivery) i wiedzieć jak zapewnić sobie niezawodne wsparcie.

„Niezwykle istotne jest, żeby planując konteneryzację przygotować odpowiednią strategię wejścia w tę technologię. Nie można jedynie podążać za ogólnym trendem. Dobre przygotowania to podstawa sukcesu w tym obszarze. Nie każdą aplikację można i trzeba konteneryzować – to powinno za każdym razem wynikać z postawionych celów, które chcemy osiągnąć” – mówił Bartłomiej Noculak, Cloud Native Strategy and OpenRAN Specialist, Open Source Evangelist, IBM in support of Kyndryl

„Istnieje wiele przepisów na sukces. Kluczowe jest, żeby za każdym razem dobierać taki, który będzie pasował do konkretnej sytuacji. Na rynku istnieje mnóstwo narzędzi i łatwo się w ich gąszczu pogubić. Co więcej, trzeba budować równocześnie całą kulturę pracy cloud native, która istotnie rożni się od tradycyjnego podejścia do budowania aplikacji silosowych” – dodawał Piotr Szewczuk, Open Source Technology Evangelist, IBM in support of Kyndryl.

Wybieraj mądrze i optymalizuj

Jednen z najważniejszych wniosków płynących z konferencji Open Source Tech dotyczy ogólnego podejścia do produkcji oprogramowania: nie chodzi o wdrażanie technologii, ale o budowanie systemów, a kluczem do sukcesu jest umiejętne łączenie wszystkich elementów wykorzystywanych w procesie.

Sformułował go już na początku konferencji Tomasz Cholewa, Head of Cloud Infrastructure w DevSkiller, który opowiadał podczas swojej prezentacji właśnie o umiejętnym dobieraniu narzędzi i ich łączeniu, które umożliwia efektywne wdrażanie aplikacji skonteneryzowanych na platformie Kubernetes. W skali całego tego procesu trzeba zmierzyć się z wieloma wyzwaniami, które obejmują nie tylko sam development, ale także infrastrukturę oraz bezpieczeństwo, zaczynając od szybkiego i łatwego budowanie obrazów kontenerów aż po shift left, czyli włączanie bezpieczeństwa na jak najwcześniejszych etapach produkcji oprogramowania. Podczas prezentacji Tomasz Cholewa rekomendował wiele sprawdzonych narzędzi, które zwiększają efektywność wdrożeń. Były to m.in. Cloud Native Buildpacks, Skaffold, Kustomize, Helm, AgroCD, Trivy czy Harbor. Razem zapewniają istotne przyspieszenie, rozwiązują wiele kluczowych problemów oraz uwalniają od wielu manualnych czynności a przy tym zapewniają wzrost bezpieczeństwa.

Zanim zaczniesz, dobrze się przygotuj

Tematem dyskusji było nowoczesne podejście do procesu wytwórczego oprogramowania oraz wykorzystanie w tym celu narzędzi open source. Przedsiębiorstwa przepisują dzisiaj aplikacje silosowe na architekturę mikroserwisową. Nowe aplikacje składają się z setek mikrousług, które są obsługiwane przez setki developerów. W ciągu jednej godziny wdrażanych może być nawet kilkadziesiąt nowych wersji. Dlatego kwestie integracji prac poszczególnych zespołów i eliminowania błędów wysuwają się na pierwszy plan.

„Jakie są korzyści z wdrożenia metodologii CI/CD? To przede wszystkim duża szybkość wdrażania nowych wersji oprogramowania oraz nowych funkcjonalności. Dla wielu współczesnych organizacji oznacza to możliwość uzyskania przewagi konkurencyjnej. Tylko przy pomocy CI/CD można błyskawicznie modyfikować oprogramowanie, dopasowując je do zmieniających się potrzeb a zarazem ograniczać występowanie błędów” – mówił Jacek Kędzierski, TSS Sales Manager, IBM Polska i Kraje Bałtyckie.

„Konstruowanie modelu CI/CD należy zacząć od dobrego planowania. Nie można najpierw wdrażać a dopiero później myśleć o budowaniu pipeline. Najpierw trzeba określić jak pipeline ma wyglądać i jakie narzędzia będziemy wykorzystywać. Trzeba przygotować się nie tylko w kontekście generowania kodu, ale także jego późniejszego utrzymywania” – dodawał Jacek Kędzierski.

Ciekawym wątkiem na konferencji było także bezpieczeństwo. Choć idee są podobne, to kontenery wymagają zastosowania odmiennej technologii. Szczególnym przypadkiem są natomiast kopie bezpieczeństwa. Ze względu na naturę mikroserwisów, można ale nie trzeba stosować tradycyjnych narzędzi i klasycznego podejścia do backupu. Wynika to z faktu, że disaster recovery jest o wiele łatwiejsze. Model infrastruktury jako kodu sprawia, że całe środowisko mamy dokładnie opisane programowo i można je bardzo szybko odtworzyć w przypadku wystąpienia awarii.

Król Kubernetes

Finałem konferencji była prowadzona w luźniejszej formule wieczorna sesja podsumowująca, podczas której prowadzący – Bartłomiej Noculak i Piotr Szewczuk - łączyli się z ekspertami mającymi wieloletnie doświadczenie z technologiami open source i rozmawiali o najnowszych trendach i wyzwaniach, z jakimi muszą zmierzyć się ich użytkownicy. Na pierwszy plan wysunęła się kwestia popularności Kubernetesa, który wygrał „wojnę formatów” kontenerowych i jest dziś niepodzielnym władcą tego świata. Jednocześnie wyszedł on daleko poza niszę, jaką były kontenery jeszcze kilka lat temu. Dzisiaj wszyscy chcą konteneryzować wszystko.

„Kubernetes jest już wykorzystywany niemal wszędzie. Nawet na platformach wiertniczych, na farmach wiatrowych i w samochodach. Dlaczego? Ponieważ chmura zmieniła oczekiwania stawiane wobec infrastruktury. Chcemy, żeby wszystko można było łatwo wyklikać, żeby było powtarzalne i przy tym skalowalne. Tego nie da się osiągnąć bez oparcia infrastruktury na kodzie. To z kolei jest niemożliwe bez Kubernetesa. Przy tym daje on – dzięki swojej otwartości – gwarancję bezpieczeństwa, a także chroni przed zamknięciem w kosztownym ekosystemie jednego dostawcy” – tłumaczył Jarosław Biniek, Preseales Engineer w SUSE.

„Rozmawiamy o kontenerach, które są praktycznie nierozłączne z chmurą. W kontekście nasilającej się migracji do chmury i powstawania środowisk hybrydowych, nie można zapominać o automatyzacji. Trudno sobie bowiem wyobrazić większe środowiska, w których mamy setki czy tysiące serwerów bez automatyzacji. Nikt sobie nie poradzi z nimi w tradycyjny sposób. Wszystkie te obszary się łączą i bardzo szybko rozwijają. To dobry czas dla wszystkich, którzy zastanawiają się czym się zajmować i w jakie technologie wchodzić. Odpowiedź jest prosta: w platformy kubernetesowe” – dodawał Arkadiusz Galarowicz, Linux Engineer z Veracomp.

Open source w praktyce

Integralnym elementem konferencji Open Source Tech były interaktywne warsztaty, podczas których uczestnicy mogli wykonywać ćwiczenia wspólnie z prowadzącymi. Równolegle odbywały się cztery sesje. Pierwsza poświęcona była automatyzacji infrastruktury z wykorzystaniem Ansible, gdzie można było zapoznać się z podstawami technologii i zarzadzania infrastrukturą za pomocą kodu a także poznać zasady automatyzacji zadań administracyjnych oraz dowiedzieć się jak utwardzać Linuxa. Druga sesje skupiała się na Kubernetesie w chmurze IBM – tam można było bliżej poznać platformy konteneryzacyjne Kubernetes oraz Red Hat OpenShift i sprawdzić jak łatwo można uruchomić własną instancji Kubernetes w modelu Platfrom-as-a-Service. Dwie pozostałe sesje były poświęcone produktom SUSE Rancher oraz Red Hat OpenShift. Uczestnicy mogli zapoznać się z tymi rozwiązaniami, uruchomić przy ich pomocy przykładowe aplikacje oraz poznać metody wdrażania obrazów kontenerów.

Dyskutowano także o planach rozwoju technologii Red Hat. Artur Poczekalewicz, Senior Solution Architect w Red Hat opowiadał m.in. o roli, jaką pełni na rynku OpenShift oraz planach rozwojowych. Kubernetes jest świetny w orkiestracji, ale brakuje w nim wielu istotnych elementów, żeby można było go uznać za rozwiązanie kompletne. Brakuje w nim np. stosu logowania, stosu monitoringu.

„Wybieramy najlepsze projekty open source, które wypełniają te luki i dodajemy je do OpenShift. Skupiamy się teraz na nowych elementach związanych ze zwiększaniem bezpieczeństwa i elastyczności - to kierunki podyktowane nam przez klientów. Oczekują oni m.in. lepszych rozwiązań CI/CD, chcą uruchamiać w OpenShift maszyny wirtualne jako kontenery. Naszym celem jest dostarczenie im wszystkiego co jest potrzebne do tego, żeby mogli tworzyć i hostować aplikacje cloud-native” – dodawał Artur Poczekalewicz.

Zainteresowanych konferencją zachęcamy do obejrzenia jej w dogodnym dla siebie czasie:https://www.youtube.com/playlist?list=PLpsB0eEHFCpbMM5_HcTltd5ayV7KNisX2

W przypadku pytań, zachęcamy do kontaktu z prelegentami:

Bartłomiej Noculak

Open Source Evangelist, IBM in support of Kyndryl

48-601683383

[email protected]

Piotr Szewczuk

Open Source Evangelist, IBM in support of Kyndryl

48-601677598

[email protected]