Strona korzysta z plików cookies w celu realizacji usług i zgodnie z Polityką Plików Cookies.



26.08.2021

Firma Fortinet rozszerzyła...

Firma Fortinet rozszerzyła ofertę o usługę FortiTrust, która dołączyła do innych usług...
26.08.2021

Aplikacje biznesowe

Ready_™ AppStore
26.08.2021

Automatyzacja chmur...

Integracja z Red Hat Ansible
26.08.2021

Backup kodu źródłowego

GitProtect.io dostępny na Github
26.08.2021

Wsparcie pracy hybrydowej

Zdalny SD WAN
26.08.2021

Nowy monitor Philips 498P9Z

Nowy monitor Philips 498P9Z to model wyposażony w 49-calowy, zakrzywiony panel VA o...
26.08.2021

Wytrzymały punkt dostępowy

D-Link DIS-2650AP
26.08.2021

Ekonomiczne dyski

SSD bez DRAM
26.08.2021

Petabajty pojemności

Serwery QNAP

Konteneryzacja i wirtualizacja w biznesie

Data publikacji: 04-02-2021 Autor: Marcin Bieńkowski

Chmura, wirtualizacja, a ostatnio także konteneryzacja – te pojęcia już od dawna towarzyszą rozwojowi systemów IT wykorzystywanych w biznesie. Niestety nie zawsze osoby decyzyjne, które nie pracują bezpośrednio nad wdrożeniami tego typu rozwiązań, są w stanie określić korzyści i ryzyko kryjące się za konkretnymi technologiami.

 

Można odnieść wrażenie, że na temat chmury napisano już wszystko. Znacznie mniej publikacji można jednak znaleźć na temat konteneryzacji i wirtualizacji w kontekście zastosowań biznesowych. Skupmy się więc na tym zagadnieniu i przyjrzyjmy się bliżej najczęściej wykorzystywanym obecnie wdrożeniom aplikacji biznesowych w środowisku infrastruktury serwerowej firmy.


Pierwszym przychodzącym na myśl typem wdrożenia jest instalacja i uruchamianie wszystkich aplikacji bezpośrednio na fizycznym komputerze lub serwerze obsługiwanym przez tradycyjny system operacyjny. Jeśli chodzi o serwery, to tego typu rozwiązań dziś nikt już raczej nie stosuje, jednak wciąż jest to często spotykany model instalacji oprogramowania na stacjach roboczych – zarówno desktopach, jak i laptopach.
Mimo że instalacja oprogramowania na systemie operacyjnym działającym na pojedynczym, fizycznym serwerze jest bardzo wygodna i łatwa w zarządzaniu, to z punktu widzenia dzisiejszych systemów IT ma szereg istotnych wad. Najważniejsze to brak możliwości wykorzystania wszystkich możliwości i mocy obliczeniowej serwera, na którym uruchamiane są aplikacje, oraz – co jest znacznie bardziej istotne z punktu widzenia bezpieczeństwa biznesowego – brak możliwości separowania zasobów dla poszczególnych aplikacji. Może to skutkować wystąpieniem sytuacji, w której jedna z aplikacji ma dostęp do krytycznych danych drugiego programu. Może się to przekładać na problemy z alokacją zasobów i konfliktami pomiędzy poszczególnymi aplikacjami uniemożliwiającymi sprawne działanie systemu IT jako całości.


Gdy najbardziej zasobożerne programy zużyją niemal całe dostępne zasoby sprzętowe, to spowolnione zostaną pozostałe uruchomione na serwerze aplikacje. Oczywiście można tego typu wymagające programy uruchamiać w izolacji, na wydzielonym w tym celu serwerze. To niestety wiąże się z problemami niewykorzystanej mocy obliczeniowej w serwerowni, a co za tym idzie – z większymi kosztami zakupu i utrzymania infrastruktury.


> OPTYMALNE WYKORZYSTANIE WSZYSTKICH ZASOBÓW


Jednym z pierwszych pomysłów dotyczących rozwiązania problemu z alokacją zasobów było wprowadzenie do systemu operacyjnego mechanizmów symulacji i emulacji środowiska uruchomieniowego. Sprowadza się to do symulowania działania urządzenia lub oprogramowania na poziomie systemu operacyjnego hosta (serwera), którego architektura zgodna jest z symulowanym środowiskiem.
Innymi słowy, symulacja ma ściśle przydzielone zasoby, dzięki czemu zasobożerne programy nie wpływają na prace pozostałych aplikacji w takim stopniu, jakby to miało miejsce w tym samym środowisku uruchomieniowym. Warto przy tym zaznaczyć, że termin „emulacja” – w przeciwieństwie do wirtualizacji – odnosi się do symulowania działania oprogramowania lub urządzenia, które nie są zgodne z architekturą hosta.


Dość szybko stało się jasne, że takie możliwości nie są wystarczające. Kolejnym krokiem w wykorzystaniu całych dostępnych zasobów, przy jednoczesnym ograniczeniu problemów z alokacją zasobów, jest wirtualizacja. W uproszczeniu wirtualizacja polega na symulowaniu obecności wirtualnych zasobów sprzętowych i przydzieleniu poszczególnym procesom logicznym, a więc programom czy systemom operacyjnym, rzeczywistych zasobów, którymi fizycznie dysponuje serwer. Istotne jest tu to, że wirtualizacja pozwala na uruchamianie na jednym serwerze wielu wirtualnych maszyn, z których każda dysponuje swoim własnym systemem operacyjnym działającym na emulowanych zasobach. Uruchomiony w takim wirtualnym systemie program „nie wie” o tym, że działa w obrębie wirtualnego środowiska.
Jak widać, wirtualizacja pozwala w naturalny sposób izolować aplikacje i procesy pomiędzy wirtualnymi maszynami. W ten sposób uzyskuje się też podwyższenie poziomu bezpieczeństwa systemu. Warto podkreślić, że dane związane z jedną wirtualną maszyną nie są w prosty sposób dostępne dla pozostałych wirtualnych komputerów, a tym bardziej dla działających na nich programach.


Zaletą wirtualizacji jest też lepsze wykorzystanie fizycznych zasobów serwera, zatem nasz cel – redukcja kosztów TCO (Total Cost of Ownership) utrzymania infrastruktury IT w firmie. Warto też podkreślić, że wirtualne maszyny dają się łatwo i w dynamiczny sposób skalować, gdyż w każdej chwili można dodawać i odejmować zasoby w zależności od bieżącego obciążenia danej aplikacji zadaniami. W ten sposób można w racjonalny sposób zwiększyć wykorzystanie możliwości sprzętowych serwera, a także ograniczyć koszty związane z utrzymaniem, gdyż przy wirtualizacji jeden serwer może zastąpić nawet kilka czy kilkanaście maszyn fizycznych.


Z zewnątrz każda wirtualna maszyna jest widziana jak pojedynczy, fizyczny komputer, który ma do dyspozycji własną pamięć, procesor, zasoby dyskowe, a także własny system plików wraz z aplikacjami, bibliotekami. Dysponuje też własnym systemem operacyjnym pracującym na wirtualnej warstwie sprzętowej. Wśród najważniejszych zalet wirtualizacji należy wymienić pełną symulację fizycznej warstwy sprzętowej, niezależność od systemu operacyjnego hosta (na każdej wirtualnej maszynie może pracować inny system operacyjny), pełną izolację od systemu operacyjnego hosta oraz przenośność pomiędzy środowiskami. Wśród wad wymienia się trudną do zrealizowania wymianę danych pomiędzy maszynami wirtualnymi, choć w wielu wypadkach może się to okazać zaletą.

 

[...]

 

Autor jest niezależnym dziennikarzem zajmującym się propagowaniem nauki i techniki.

Pełna treść artykułu jest dostępna w papierowym wydaniu pisma.

.

Transmisje online zapewnia: StreamOnline

All rights reserved © 2019 Presscom / Miesięcznik "IT Professional"