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


26.10.2020

Nowa wersja nVision

Można już pobierać nową wersję nVision
26.10.2020

Monitorowanie infrastruktury

Vertiv Environet Alert
23.10.2020

Telefonia w chmurze

NFON Cloudya
23.10.2020

Nowości w EDR

Bitdefender GravityZone
23.10.2020

Wykrywanie anomalii

Flowmon ADS11
23.10.2020

Mobilny monitor

AOC 16T2
22.10.2020

HP Pavilion

HP zaprezentowało nowe laptopy z linii Pavilion.
22.10.2020

Inteligentny monitoring

WD Purple SC QD101
22.10.2020

Przełącznik 2,5GbE

QNAP QSW-1105-5T

Kontenery w środowisku Windows Server

Data publikacji: 20-04-2018 Autor: Michał Gajda

Kontenery pozwalają na zwiększenie elastyczności pracy z aplikacjami. Umożliwiają nie tylko łatwiejsze i szybsze wdrażanie poszczególnych rozwiązań, ale także łatwiejsze przenoszenie aplikacji pomiędzy poszczególnymi maszynami w ramach infrastruktury IT.

W poprzednim artykule przedstawiliśmy sposób izolowania procesów aplikacji w systemach Windows Server za pomocą kontenerów. Przedstawione tam zagadnienia pozwoliły na poznanie podstawowych zasad pracy z kontenerami i wstępne wdrożenie omawianej technologii. Teraz opiszemy bardziej zaawansowane funkcje, takie jak zarządzanie przydziałem odpowiednich zasobów dla poszczególnych kontenerów. Omówimy też różnice pomiędzy trybem pracy Windows Server Container a Hyper-V Container oraz mechanizmy pozwalające na migrowanie kontenerów pomiędzy poszczególnymi maszynami.

> ZARZĄDZANIE ZASOBAMI KONTENERÓW

Jak już wiemy, każdy z kontenerów posiada swoje własne odizolowane środowisko. Jednak często będziemy potrzebowali wyjść poza nie, tak by na przykład skorzystać z zasobów dostępnych poza kontenerem. Najprostszym przykładem może być potrzeba składowania danych w zasobach dyskowych udostępnionych na maszynie hosta. Aby mieć taką możliwość, wystarczy, że podczas tworzenia kontenera zmapujemy przy użyciu opcji -v lokalny zasób maszyny hosta. Na przykład:

docker run -it -v C:\Container:C:\ContainerData microsoft/nanoserver powershell

Dla wspomnianego parametru –v podajemy najpierw ścieżkę dostępu do lokalnego zasobu, a następnie po znaku dwukropka ścieżkę, która ma być zmapowana dla danego kontenera. Taka sytuacja została zobrazowana na rys. 1.

Inną metodą współdzielenia zasobów dyskowych pomiędzy kontenerami jest wykorzystanie dedykowanych woluminów tworzonych w ramach Dockera. Można z nich skorzystać w zbliżony sposób jak w poprzednim przypadku, jednak zamiast ścieżki do lokalnego zasobu wskazujemy nazwę woluminu. Na przykład utwórzmy dwa nowe kontenery z mapowaniem do tego samego woluminu, ale celowo pod różnymi ścieżkami, by podkreślić, iż są to dwa osobne kontenery:

docker run -it -v Volume:C:\ContainerData1 microsoft/nanoserver powershell

docker run -it -v Volume:C:\ContainerData2 microsoft/nanoserver powershell

W przypadku gdy w ramach jednego z nich zapiszemy jakieś dane, będą one dostępne również w ramach drugiego kontenera. Tego typu sytuacja została przedstawiona na rys. 2.

Wykaz utworzonych woluminów Dockera możemy podejrzeć komendą volume ls. Za pomocą komendy volume inspect ze wskazaniem nazwy woluminu możemy wyświetlić szczegółowe informacje dotyczące danego elementu. Możemy zaobserwować, że woluminy są tak naprawdę punktami montowania do zasobów gromadzonych w folderze C:\ProgramData\docker na maszynie hosta.

 

Oprócz samych zasobów dyskowych możliwe jest również zarządzanie wykorzystywaną pamięcią czy zużyciem procesora przez sam kontener. Aby skorzystać z tych możliwości, musimy użyć dodatkowych opcji komendy run. Będą to opcje z grup --memory oraz --cpu, dla których wprowadzamy odpowiednie wartości. Na przykład:

docker run -it --memory 1g --cpu-percent 50 microsoft/nanoserver powershell

Wykaz poszczególnych parametrów uzyskamy, używając opcji pomocy --help komendy run.

Innym przydatnym elementem związanym z zasobami kontenerów jest sieć. Domyślnie w ramach Dockera dostępna jest jedna wirtualna sieć o nazwie nat. Jak łatwo się domyślić, sieć ta bazuje na mechanizmie translacji adresów do wirtualnej podsieci, na przykład 172.31.96.0/20. Pozwala on na swobodny dostęp z kontenera do sieci, jak i w drugą stronę, co w większości przypadków może wystarczyć.

Jednak czasem może okazać się konieczne zapewnienie innej adresacji kontenerów, dlatego klient Docker pozwala na tworzenie dodatkowych wirtualnych sieci. Na przykład przydatnym rozwiązaniem może okazać się sieć pracująca w trybie transparentnym. Dzięki wykorzystaniu takiej sieci każdy z kontenerów będzie mógł mieć przypisany adres IP pochodzący z naszej lokalnej sieci, na przykład za pośrednictwem lokalnego serwera DHCP.

[...]

 

Autor pracuje jako architekt rozwiązań IT, zajmuje się implementowaniem nowych technologii w infrastrukturze serwerowej. Posiada tytuł MVP Cloud and Datacenter Management. Jest twórcą webcastów i artykułów publikowanych w czasopismach i serwisach internetowych.

Artykuł pochodzi z miesięcznika: IT Professional

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"