Jak zbudować bezpieczny i skalowalny system wykrywania anomalii? – Część druga

Wiktor Franus

W pierwszej części artykułu starałem się przybliżyć, jaka wiedza jest potrzebna, żeby zbudować system. W tej części opiszę narzędzia, bez których system nie mógłby działać.

Narzędzia

Centralne repozytorium danych – CRD.

W ramach Smart RDM najczęściej wykorzystujemy repozytorium danych OSIsoft PI, czyli rozwiązanie, które zostało zaprojektowane i sprawdzone w branży produkcyjnej i utilities na całym świecie. W CRD wykorzystujemy głównie dwa jego elementy: Asset Framework (AF), w którym budujemy strukturę danych oraz Data Archive, gdzie przechowujemy ciągi czasowe. Dodatkowo zapewniamy wizualizację danych za pomocą modułu wizualizacji SmartRDM. Ten element jednak wykracza poza zakres omawianego modułu Big Data – jeśli jesteś ciekawy, więcej informacji znajdziesz na www.smartrdm.com.

Mamy zapewnione przechowywanie danych w bezpiecznym, certyfikowanym repozytorium. Teraz czas na kolejny krok w procesie analizy, czyli środowisko obliczeniowe.

Kubernetes – a co to i po co ?

Upraszczając, jest to platforma do zarządzania, automatyzacji i skalowania aplikacji kontenerowych. Kubernetes działa z wieloma narzędziami kontenerowymi. Jest również wspierany przez większość rozwiązań chmurowych.

Kontener to z kolei wirtualnie wydzielona część zasobów o określonych parametrach takich jak np. ilość rdzeni, RAM i system operacyjny. W takim odizolowanym środowisku możemy wykonać operacje związane, w naszym przypadku, z uruchomieniem procesów wykonujących analizę danych. Co jest zaletą takiego kontenera? Chyba największą jest to, że działa tylko przez określony czas. Po wykonaniu operacji jest usuwany, a przydzielone mu zasoby są uwalniane. Po drugie, jest odizolowany od innych środowisk, a przez to bezpieczny. Po trzecie, daje możliwość zminimalizowania kosztów wykorzystania zasobów, na przykład chmury, właśnie przez to, że może funkcjonować tylko przez okres czasu niezbędny do przeprowadzania obliczeń.

Wspomniałem o chmurze i od razu pojawiło mi się pytanie o bezpieczeństwo danych.

Dopytywałem o to naszych ekspertów i mogę powiedzieć z pełną odpowiedzialnością: tak, dane są bezpieczne. Mogę to stwierdzić, ponieważ chmura jest jedną z opcji rozwiązania, analizy mogą być wykonywane na zasobach lokalnych odseparowanych od sieci lub właśnie w chmurze, przy czym nie są w chmurze przechowywane.

Proces analizy zaczyna się lokalnie, w centralnym repozytorium danych (CRD), które u nas z definicji posadowione jest na zasobach klienta. Proces pozyskania z CRD danych potrzebnych do wykonania analizy uruchamiany jest na maszynie lokalnej odseparowanej od infrastruktury OT. Na tym etapie bezpieczeństwo gwarantują zabezpieczenia repozytorium oraz dodatkowo zabezpieczenia sieci lokalnej.

Następnie dane przesyłane są z wykorzystaniem bezpiecznego protokołu do chmury Azure, gdzie zapisane są w formie plików. Kontener, w którym przeprowadzana jest analiza, tworzony jest w obrębie tej samej chmury, następnie pliki z wynikami analizy, przy użyciu bezpiecznego protokołu, trafiają na maszynę lokalną. Tak jak pisałem wcześniej, kontener zostaje zamknięty, a wszystkie dane usunięte. Na całej ścieżce dane są zabezpieczane na kilka sposobów, a to, czy do przeprowadzenia analizy zostanie wykorzystana chmura czy zasoby lokalne, w mojej opinii bardziej wynika z polityki bezpieczeństwa organizacji, ponieważ poziom bezpieczeństwa jest porównywalny.

Ufff, to jeszcze nie wszystko, czego dowiedziałem się od Karoliny i Wiktora, wiedzy jest jeszcze na kilka artykułów. Myślę, że na ten jeden raz wystarczy, mam nadzieję, że to, co napisałem z perspektywy laika przybliży trochę, jak istotna jest wiedza oraz odpowiednie narzędzia. Jeszcze raz zapraszam do pozostałych artykułów blogowych oraz strony Smart RDM.

Wywiad przeprowadził: Jakub Ładyński