Skip to main content

Avatar photo

Co to jest Software-Defined Storage (SDS)?

mar 04th, 2025 | 8 min read

Rozwiązania Software-Defined Storage (Block), czyli SDS, oddzielają warstwę oprogramowania pamięci masowej od bazowego sprzętu. Umożliwia to scentralizowane zarządzanie i automatyzację zasobów pamięci masowej poprzez warstwę abstrakcji oprogramowania oraz pozwala na wydajne i uproszczone wdrożenia pamięci blokowej, plikowej i obiektowej.

W przeciwieństwie do tradycyjnych rozwiązań pamięci masowej, które zazwyczaj opierają się na dedykowanym sprzęcie, Software-Defined Storage wykorzystuje standardowy sprzęt oraz technologie wirtualizacji. Software-Defined Storage umożliwia firmom wdrażanie, zarządzanie i skalowanie zasobów pamięci masowej z większą elastycznością i efektywnością kosztową. Simplyblock jest doskonałym przykładem SDS, zapewniającym niezrównaną elastyczność wdrożeń przy zachowaniu niezawodności tradycyjnych systemów SAN.

Jak działa Software-Defined Storage

Software-Defined Storage to przede wszystkim oprogramowanie, które oddziela sprzęt od zarządzania danymi i widocznej pamięci masowej. Umożliwia to wysoki stopień elastyczności w doborze sprzętu pamięci masowej oraz pozwala na stworzenie rozwiązania idealnie dopasowanego do wymagań dotyczących wydajności, pojemności i skalowalności.

Software-Defined Storage ma wiele aspektów. Czasami jest dostarczane jako pełny system operacyjny (często oparty na Linuxie lub FreeBSD) albo jako warstwa oprogramowania instalowana na powszechnie stosowanym systemie operacyjnym (najczęściej Linux). W obu przypadkach fizyczny sprzęt jest zarządzany przez system operacyjny ogólnego przeznaczenia, natomiast zarządzanie pamięcią masową odbywa się poprzez oprogramowanie.

Aby uruchomić Software-Defined Storage, należy wybrać odpowiedni sprzęt lub platformę wirtualizacyjną. W zależności od rozwiązania SDS można wykorzystać wirtualne hosty chmurowe (np. AWS Amazon EC2, Google Compute Engine VMs lub podobne), lokalne maszyny wirtualne, takie jak VMware VMs, lub fizyczne, dedykowane serwery pamięci masowej. W każdym przypadku warstwa „fizyczna” zapewnia rzeczywistą pojemność pamięci masowej.

Czym nie jest Software-Defined Storage…

Chociaż Software-Defined Storage jest często używane jako synonim wirtualizacji pamięci masowej, nie jest to do końca prawda. Wirtualizacja pamięci masowej odnosi się do możliwości łączenia i grupowania wielu lokalnych lub zdalnych urządzeń pamięci masowej w jeden duży zasób. Z tego powodu wiele rozwiązań SDS jest również w pewnym stopniu rozwiązaniami do wirtualizacji pamięci masowej, co prowadzi do zamieszania w użyciu tych terminów. Jednak możliwe jest zbudowanie rozwiązania SDS bez opcji grupowania pamięci masowej.

Software-Defined Storage nie jest również rozwiązaniem typu SaaS (Software as a Service) ani IaaS (Infrastructure as a Service). Chociaż może być oferowane jako platforma hostowana i zarządzana, częściej tak nie jest i jest obsługiwane bezpośrednio przez klienta. Wynika to z wielu czynników, takich jak kwestie prywatności danych, wymagania regulacyjne oraz specyficzne potrzeby konfiguracyjne.

Na koniec warto podkreślić, że Software-Defined Storage nie musi być rozwiązaniem typu NAS (Network Attached Storage) ani SAN (Storage Area Network). Ponieważ SDS nie musi być zbudowane z klastra węzłów pamięci masowej ani nawet zestawu dysków, nie ma wymogu grupowania ich w jedną przestrzeń pamięci. Ponadto rozwiązanie SDS nie musi być koniecznie połączone z maszyną hosta za pomocą sieciowego interfejsu komunikacyjnego. Mimo to, chociaż SAN i NAS nie są nieodzownymi elementami SDS, podobnie jak wirtualizacja pamięci masowej, często stanowią część rozwiązania SDS, zapewniając szerszy zakres zastosowań i większą elastyczność.

Przed i po: Software-Defined Storage vs tradycyjna pamięć masowa

Tradycyjne infrastruktury pamięci masowej dla przedsiębiorstw często opierają się na dedykowanym sprzęcie, co prowadzi do gromadzenia różnych systemów pamięci masowej na przestrzeni lat. Systemy te często nie są ze sobą kompatybilne, co utrudnia ich skalowanie lub migrację między różnymi rozwiązaniami. W rezultacie infrastruktura często pozostaje w niezmienionej formie, podczas gdy nowe maszyny lub kolejne generacje sprzętu są wdrażane do nowych zastosowań.

Tradycyjna infrastruktura pamięci masowej z oddzielnymi rozwiązaniami pamięciowymi.

To prowadzi do nierównomiernego wykorzystania dostępnych zasobów pamięci masowej. Podczas gdy niektóre systemy osiągają swoje limity pojemności, inne pozostają niewykorzystane z dużą ilością wolnej przestrzeni. Migracja między dostawcami lub generacjami sprzętu jest często skomplikowana.

Z drugiej strony, dzięki rozwiązaniom Software-Defined Storage mamy znacznie większą elastyczność w zakresie konfiguracji. Większość rozwiązań SDS oferuje wirtualizację pamięci masowej (jak wspomniano wcześniej), co umożliwia grupowanie dostępnych zasobów pamięci i przydzielanie ich poszczególnym przypadkom użycia.

Rozwiązanie Software-Defined Storage z wirtualizacją pamięci i połączoną wydajnością oraz pojemnością.

Te segmenty (np. logiczna pamięć blokowa lub inny wzorzec typu pamięci masowej) mogą różnić się pod względem pojemności, charakterystyki wydajności, a nawet rodzaju pamięci masowej. W zależności od używanego oprogramowania definiującego pamięć masową, jeden lub więcej typowych typów pamięci masowej (pamięć plikowa, pamięć blokowa i pamięć blob/obiektowa) może być dostępnych dla obciążeń roboczych.

Ze względu na charakter puli pamięci masowej migracje między podstawowym, abstrakcyjnym sprzętem są łatwe i zazwyczaj (automatycznie) obsługiwane przez SDS. To samo dotyczy skalowalności. Jeśli dostępna przestrzeń pamięci masowej staje się ograniczona, można dodać dodatkowy sprzęt pamięci masowej. W zależności od zastosowanego rozwiązania może to być płynna operacja online lub wymagać przestoju.

Korzyści z Software-Defined Storage

Biorąc to wszystko pod uwagę, Software-Defined Storage ma wyraźne zalety w porównaniu z tradycyjnymi, opartymi na sprzęcie opcjami przechowywania danych.

  1. Ujednolicona warstwa pamięci masowej zapewnia elastyczność i łatwą migrację. Z perspektywy użytkownika urządzenia logiczne wyglądają tak samo, niezależnie od tego, gdzie i jak są przechowywane na abstrakcyjnym sprzęcie.
  2. Typowo zintegrowane grupowanie pamięci masowej umożliwia wysoki poziom skalowalności. Rozpoczęcie od małej skali i dodanie dodatkowego sprzętu do puli pamięci masowej w późniejszym czasie pozwala na efektywne kosztowo wykorzystanie pamięci bez marnowania niewykorzystanej pojemności.
  3. Wybór własnego sprzętu umożliwia budowę systemów pamięci masowej, które spełniają wymagania pod względem wydajności, niezawodności i pojemności. Brak uzależnienia od jednego dostawcy oraz brak konieczności korzystania z zastrzeżonego sprzętu.
  4. Ogólnie rzecz biorąc, typowe rozwiązanie software-defined storage umożliwia najbardziej opłacalny sposób przechowywania danych dzięki optymalnym konfiguracjom sprzętowym, grupowaniu pamięci masowej (wirtualizacji pamięci masowej), funkcjom takim jak thin provisioning i innym.

Hiperkonwergentna pamięć masowa

Hiperkonwergentna pamięć masowa to wzorzec wdrożeniowy, w którym rozwiązanie pamięci masowej jest instalowane w tym samym klastrze co aplikacja. Konsoliduje to zasoby pamięci masowej, obliczeniowe i sieciowe w jeden zintegrowany system.

Ta architektura współlokalizuje pamięć masową z obliczeniami w ramach jednego środowiska klastra (najczęściej Kubernetes). Upraszcza to zarządzanie, ale często ogranicza skalowalność i wydajność ze względu na współdzielenie zasobów z innymi przypadkami użycia.

Rozwiązania hiperkonwergentnej pamięci masowej zazwyczaj wykorzystują architektury rozproszone oraz lokalną pamięć flash instancji, aby zapewnić wysoką przepustowość i niskie opóźnienia.

Zdeagregowana pamięć masowa

Zdeagregowana pamięć masowa to architektura, w której zasoby pamięci masowej są oddzielone od zasobów obliczeniowych, co pozwala na ich niezależne zarządzanie i skalowanie.

W przeciwieństwie do tradycyjnych systemów pamięci masowej, w których pamięć jest ściśle zintegrowana z obliczeniami w poszczególnych serwerach lub węzłach, zdeagregowana pamięć masowa grupuje zasoby pamięci masowej oddzielnie od zasobów obliczeniowych w całej sieci.

Zdeagregowana pamięć masowa umożliwia łatwiejszą skalowalność, ponieważ zasoby pamięci masowej i zasoby obliczeniowe są odrębnymi elementami i klastrami. Oznacza to, że klaster pamięci masowej można rozbudować, nawet jeśli nie są wymagane dodatkowe zasoby obliczeniowe. Wiele baz danych rośnie z czasem, zwiększając zapotrzebowanie na pamięć masową bez konieczności dodawania mocy obliczeniowej.

Wykorzystaj w pełni swoją pamięć masową dzięki Simplyblock

Simplyblock to nowa generacja programowo definiowanej pamięci blokowej, spełniająca wymagania najbardziej wymagających obciążeń roboczych. Grupowanie pamięci masowej oraz nasz rozproszony algorytm rozmieszczania danych umożliwiają wysoką gęstość IOPS na Gigabajt, niskie i przewidywalne opóźnienia oraz wysoką przepustowość. Zastosowanie erasure coding (lepszego niż RAID) zamiast replik pozwala zminimalizować narzut pamięci masowej bez poświęcania bezpieczeństwa danych i odporności na awarie.

Dodatkowe funkcje obejmują natychmiastowe migawki (pełne i przyrostowe), klony copy-on-write, thin provisioning, kompresję, szyfrowanie i wiele więcej. Programowo definiowana pamięć blokowa Simplyblock spełnia Twoje wymagania, zanim je określisz. Rozpocznij korzystanie z Simplyblock już teraz lub dowiedz się więcej o naszych funkcjach.

Topics

Share blog post