KONTEJNERI NA WINDOWS PLATFORMI

Velike kompanije prate evolutivne tokove u IT industriji, u kojoj su danas ključni pojmovi kontinuiran razvoj, integracija i isporuka softvera. Microsoft je tako udružio snage sa kompanijom Docker…

 

Docker je praktično postao sinonim za kontejnere u IT svetu, a „bum“ koji je ova tehnologija doživela privukao je pažnju više IT giganata. Među njima bio je i Microsoft, koji je u oktobru 2014. objavio partnerstvo sa kompanijom Docker Inc. Sa tehničkom pretpremijerom Windows servera verzije 2016, ovaj koncept, već uveliko poznat u Linux svetu, usvaja i Microsoft.

Portabilnost, konzistentnost, skalabilnost, fleksibilnost prema platformama – to su samo neki od brojnih razloga zbog kojih aplikacije zasnovane na tehnologiji kontejnera dobijaju na popularnosti. Linux kontejneri nude virtuelizovanu sredinu na nivou operativnog sistema, omogućavajući izvršavanje procesa sa zasebnim mrežnim i memorijskim resursima uz korišćenje zajedničkog kernela operativnog sistema. U deljenom operativnom sistemu resursi su mnogo efikasnije iskorišćeni u poređenju sa tradicionalnom virtuelizacijom, jer moguće je izostaviti suvišne komponente koje virtuelne mašine nose sa sobom.

Windows podrška za Docker

Ekosistem za Docker alate unutar Windows‑a ne predstavlja novost. Od Boot2Docker alata, Kitematic‑a i Docker Client‑a za Windows, do DockerToolbox‑a, koji je sadržao objedinjene fukcionalnosti svojih prethodnika – na manje ili više komplikovan način, rad sa Docker‑om bio je omogućen. Pokretanje kontejnera na Windows mašini do sada je značilo pokretanje Linux ili UNIX virtuelnih mašina pod Windows hipervizorom. Međutim, sa Windows serverom 2016 podrška za Docker integrisana je u kernel operativnog sistema, eliminišući potrebu za dodatnim virtuelizacionim slojem.

Docker engine je open source platforma koja pruža mogućnost pakovanja, razmene i pokretanja kontejnera, koji se distribuiraju pomoću Docker slika. Distribucija je moguća preko uobičajenih načina prenosa podataka ili publikacijom na centralni registar po izboru, Docker repozitorijum. Nalik Github‑u, repozitorijum može biti javni ili privatni, u zavisnosti od potreba korisnika; na njemu se mogu publikovati i sa njega preuzimati Docker slike. Ovo nam omogućavaju pull i push komande, koje su od tehničke revizije 5 podržane i za Windows verziju Docker‑a. Na javnom Windows repozitorijumu već se nalazi veliki broj slika, koje korisnici komandom pull mogu „povući“ i pokrenuti, čime je omogućen potpuni doživljaj ove tehnologije. Na primer, u vreme pisanja ovog teksta, Microsoft Operation and Management Suite sliku „povuklo je“ više od 10 miliona korisnika.

Hyper‑V kontejneri

Situacija postaje nešto komplikovanija ako u kontejner želimo da spakujemo npr. aplikaciju za Windows server 2008 R2 ili neku drugu ediciju Windows servera 2016, recimo Windows server 2016 with Desktop Experience. Tada na scenu stupaju Hyper‑V kontejneri, koji predstavljaju alternativu klasičnim kontejnerima, takođe dostupnim sa ovom verzijom Windows servera. Hyper‑V kontejneri su umnogome slični standardnim virtuelnim mašinama – imaju svoj kernel i zasebne memorijske resurse, a mogu se izvršavati uporedo sa klasičnim Windows kontejnerima, na istom kontejner‑hostu. Oba tipa kontejnera pokreću se i kontrolišu na isti način – pomoću docker run komande.

Hyper‑V kontejneri daju odgovor na još jedno važno pitanje – pitanje sigurnosti. Pošto se kontejneri izvršavaju na zajedničkom kernelu, u slučaju da jedan od kontejnera koji se izvršavaju na istom kontejner‑hostu postane kompromitovan, i drugi kontejneri na istom hostu podložni su bezbednosnom riziku. Uz podršku za klasične i Hyper‑V kontejnere korisnicima je ostavljena mogućnost izbora, u zavisnosti od toga da li je za njih akcenat na sigurnosti ili na efikasnosti.

Da li podrška za Docker na Windows‑u znači da kontejnere koji su pravljeni za Linux OS možemo pomoću Docker platforme pokretati na Windows serveru, i obratno? Odgovor na ovo pitanje danas je negativan: pošto kontejneri dele kernel-host OS‑a, Linux aplikacije spakovane u kontejner i dalje zahtevaju Linux kernel, a Windows aplikacije Windows kernel na kontejner‑hostu.

Nano server

Kada je reč o efikasnom pokretanju aplikacija upakovanih u kontejner, Microsoft je ponudio rešenje u vidu novog, „sićušnog“ servera pod nazivom Nano. U naglom rastu popularnosti privatnog cloud‑a, ova kompanija je kao slabu tačku Windows servera prepoznala veličinu digitalnog otiska njegove virtuelne mašine. Tako verzija 2016 dobro poznatog Windows servera nudi mogućnost izbora između tri edicije: Windows server with Desktop Experience (standardna verzija sa grafičkim interfejsom), Server Core i Nano, koji predstavlja ogoljeno izdanje Windows servera, lišeno svih suvišnih komponenti i optimizovano za cloud infrastrukturu. Kao i Server Core, predstavljen još 2008, Nano ne poseduje grafički interfejs, ali ni bilo kakav lokalni interfejs za administraciju, već nudi jedino mogućnost udaljenog pristupa preko WMI ili Powershell‑a. Osim toga, Nano server nema 32‑bitsku podršku, što je rezultiralo uklanjanjem fajlova iz WOW64 direktorijuma.

Ova edicija Windows servera i dalje pruža potrebne funkcionalnosti, ali uz ekonomičnije korišćenje resursa, jer se instaliraju samo funkcije koje su potrebne za izvršavanje aplikacija. Na ovaj način umanjena je ranjivost na sigurnosne propuste i napade, a potreba za patch‑evima svodi se na minimum. Microsoft je procenio da će veličina VHD formata ovog operativnog sistema biti za 93% manja. Sa svojim minimalnim digitalnim otiskom, Nano postaje idealan kandidat za obavljanje Hyper‑V uloge, a cilj Microsoft‑a je da Nano postane platforma ne samo za infrastrukturu današnjice (kojom dominira virtuelizacija) već i za pokretanje aplikacija sledeće generacije.

Rušenje zida između Windows i Linux platformi

Nove filozofije u razvoju softvera u velikoj meri se preklapaju, a u poslednje vreme prilagođavaju se konceptu kontejnera, tako da i Microsoft sa poslednjim izdanjem Windows servera aktivno usmerava svoju pažnju ka aplikacijama „rođenim“ u cloud‑u. Docker run više nije komanda rezervisana samo za Linux okruženja, a Microsoft‑ovo skoro objavljivanje SQL servera i .NET platforme za Linux, kao i bash komandne linije pod Windows‑om, predstavljaju poteze koji su do samo pre par godina delovali nezamislivo. Ako posmatramo iz suprotnog ugla, Powershell, do sada Windows alat, od sada je open source i dostupan je na Linux distribucijama Ubuntu, RedHat i CentOS. Došlo je vreme za rušenje dugo podizanih zidova između Windows i Linux platformi i približavanje ova dva podeljena IT sveta.

Nevena Krunić

Snaga koju Windows server ima u enterprajz okruženju čini njegovo uključivanje u Docker projekat prekretnicom za čitavu Docker zajednicu… Kreiranje zajedničkog pristupa i korisničkog interfejsa za stvaranje kontejnera i distribuirane aplikacije biće katalizator novog talasa aplikacija, koji će tranSformisati način rada u svim organizacijama.

Solomon Hykes, Docker, osnivač i CTO

0 komentara

Najnoviji

Novi-NetApp-proizvodi

Novi NetApp proizvodi

Da li su vam već poznati novi NetApp sistemi C-serije, sa QLC Flash tipom...
Veštačka-inteligencija-u-našim-rukama

Veštačka inteligencija u

Broj oblasti u kojima se eksperimentiše sa različitim dostignućima veštačke...
Azure-Active-Directory--postaje-Entra-ID

Azure Active Directory

Azure Active Directory je sada Entra ID. I premda većina korisnika ovu promenu...
Transformacija-tehničkog-duga--pomoću-DevOps-tehnologija

Transformacija tehničkog duga

Najveću opasnost za organizacije ne predstavlja samo postojanje tehničkog duga...

Sveobuhvatna platforma za

U vreme kada su sajber pretnje sve složenije i opasnije, timovima koji brinu o...