Zaradi požrešnosti Windows sistemov v okolju VPS prevladujejo lahki Linux distribuciji: Mint, Colibri OS, Debian ali Ubuntu, ki so brez nepotrebnega, v okviru naših nalog, težkega namiznega okolja. Kot pravijo, samo konzola, samo hardcore! In v resnici to sploh ni pretiravanje: Debian se zažene na 256 MB pomnilnika in eni jedri z taktom 1 GHz, torej skoraj na vsakem „stolpu“. Za udobno delo boste potrebovali od 512 MB in procesor malce bolj odziven. Ampak kaj, če vam povemo, da točno to lahko storite tudi na VPS s sistemom Windows? Da ni treba nalagati težkega Windows Serverja, ki zahteva od tri do štiri gigabajte operativne pomnilnika in vsaj dve jedri s taktom 1,4 GHz? Preprosto uporabite Windows Server Core — znebite se GUI in dela storitev. O tem, kako to narediti, bomo spregovorili v članku.
Kdo je ta vaš Windows Server Core?
Jasnih informacij o tem, kaj je Windows (server) Core, ni niti na uradni spletni strani Microsofta, natančneje, tam je vse tako zmedeno, da ne moreš takoj razumeti, toda prva omemba sega še v obdobje Windows Server 2008. V bistvu je Windows Core funkcionalno jedro Windows Serverja (presenetljivo!), „shujšano“ za velikost lastnega GUI in približno polovico stranskih storitev.
Glavna prednost Windows Core je nezahtevnost po strojni opremi in popolno upravljanje preko PowerShella.
Če se obrnete na spletno stran Microsoft in preverite tehnične zahteve, boste za zagon Windows Server 2016/2019 potrebovali od 2 GB operativne pomnilnika in najmanj eno jedro s taktom 1,4 GHz. Vsi razumemo, da lahko na takšni konfiguraciji pričakujemo le zagon sistema, a zagotovo ne udobnega delovanja našega operativnega sistema. Prav zaradi tega običajno dodelimo več pomnilnika in najmanj 2 jedra/4 niti procesorja Windows Serverju, če ne zagotavljamo drage fizične naprave na kakšnem Xeonu, namesto poceni virtualke.
Ob tem samo jedro strežnikovega sistema zahteva le 512 MB pomnilnika, tisti procesorski viri, ki so jih požrli GUI samo za to, da se prikažejo na zaslonu in podpirajo svoje številne storitve, jih lahko namenimo za kaj bolj koristnega.
Tukaj je primerjava podprtih storitev Windows Core in polnega Windows Serverja z uradne spletne strani Microsoft:
application
server core
server withdesktop experience
Command prompt
available
available
Windows PowerShell/ Microsoft .NET
available
available
Perfmon.exe
ni na voljo
available
Windbg (GUI)
podprto
available
Resmon.exe
ni na voljo
available
Regedit
available
available
Fsutil.exe
available
available
Disksnapshot.exe
ni na voljo
available
Diskpart.exe
available
available
Diskmgmt.msc
ni na voljo
available
Devmgmt.msc
ni na voljo
available
Upravitelj strežnikov
ni na voljo
available
Mmc.exe
ni na voljo
available
Eventvwr
ni na voljo
available
Wevtutil (poizvedbe o dogodkih)
available
available
Services.msc
ni na voljo
available
Nadzorna plošča
ni na voljo
available
Posodobitev sistema Windows (GUI)
ni na voljo
available
Raziskovalec Windows
ni na voljo
available
Taskbar
ni na voljo
available
Obvestila v opravilni vrstici
ni na voljo
available
Taskmgr
available
available
Internet Explorer ali Edge
ni na voljo
available
Vgrajen sistem pomoči
ni na voljo
available
Sloj Windows 10
ni na voljo
available
Windows Media Player
ni na voljo
available
PowerShell
available
available
PowerShell ISE
ni na voljo
available
PowerShell IME
available
available
Mstsc.exe
ni na voljo
available
Storitve oddaljenega namizja
available
available
Upravitelj Hyper-V
ni na voljo
available
Kot je razvidno, je iz Windows Core izrezan resnično velik del. Pod rez so šle storitve in procesi, povezani z GUI sistema, pa tudi vsak 'odpadek', ki zagotovo ne bo potreben na naši konzolni virtualki, na primer Windows Media Player.
Skoraj kot Linux, a ni
Windows Server Core se zelo rad primerja z Linux distribucijami, vendar to v resnici ni povsem pravilno. Da, ti sistemi so si podobni z vidika zmanjšane porabe virov zaradi opustitve GUI in mnogih dodatnih storitev, vendar gre še vedno za Windows s stališča uporabe in nekaterih pristopov k gradnji, ne pa za unix sistem.
Najlažji primer — z ročno gradnjo jedra Linux in poznejšo namestitvijo paketov in storitev, celo najlažji Linux distribucijski lahko spremenite v nekaj težkega in podobnega švicarskemu nožu (tu bi se lahko pošalili o Pythonu in vstavili sliko iz serije 'If Programming Languages Were Weapons', a ne bomo). V Windows Core je takšna svoboda veliko manj, saj se, končno, ukvarjamo s produktom Microsofta.
Windows Server Core se dobavlja kot že pripravljena gradnja, ki jo lahko ocenite po zgornji tabeli. Če potrebujete kaj iz seznama nepodprtih, boste morali prek konzole dodati manjkajoče elemente. Vendar pa ne pozabite na funkcijo Feature on Demand in možnost prenosa komponent v obliki CAB datotek, ki jih je mogoče nato dodati v gradnjo pred namestitvijo. Ta scenarij pa ne deluje, če ste med delom ugotovili, da vam manjka katera od izrezanih storitev.
Toda tisto, kar izstopa Core različico v primerjavi s polno različico — je možnost posodabljanja sistema in dodajanja storitev brez ustavitve delovanja. Windows Core podpira 'vročo' namestitev paketov, brez ponovnega zagona. Kot rezultat, na podlagi praktičnih opazovanj: stroj, ki ga upravlja Windows Core, je treba ponovno zagnati približno 6-krat manj pogosto kot stroj z Windows Server, torej enkrat na pol leta, ne pa enkrat na mesec.
Bonus za administratore je to što ako se sistem koristi onako kako je zamišljeno - preko konzole, bez RDP-a - i ne pretvara se u drugi Windows Server, postaje vrlo siguran u poređenju sa punom verzijom. Naime, većina ranjivosti Windows Servera se odnosi na RDP i radnje korisnika koji preko tog RDP-a radi ono što ne bi trebao. To je otprilike kao u priči o Henriju Fordu i njegovom stavu prema boji automobila: "Any customer can have a car painted any color that he wants so long as it is black'. Tako i sa sistemom: korisnik može na bilo koji način komunicirati sa sistemom, važno je samo da to čini preko konzolo.
Instalacija i upravljanje Windows Server 2019 Core
Prethodno smo spomenuli da je Windows Core zapravo Windows Server bez GUI okruženja. To znači da možete iskoristiti gotovo svaku verziju Windows Servera kao core verziju, odnosno odustati od GUI-a. Za proizvode iz porodice Windows Server 2019 dostupne su 3 od 4 server builda: core režim je dostupan za Windows Server 2019 Standard Edition, Windows Server 2019 Datacenter i Hyper-V Server 2019, dok iz ovog spiska ispada samo Windows Server 2019 Essentials.
Pri tome, instalacioni paket Windows Server Core ne treba posebno tražiti. U standardnom instalatoru od Microsoft-a, core verzija se nudi gotovo po defaultu, dok verziju sa GUI-em treba odabrati ručno:

Opcija za upravljanje sistemom, zapravo, ima više od jednog pomenutog PowerShell-a, koji je ponuđen od strane proizvođača kao podrazumevano. Upravljač rudnim mašinama na Windows Server Core može se koristiti najmanje na pet različitih načina:
- Remote PowerShell;
- Remote Server Administration Tools (RSAT);
- Windows Admin Center;
- Sconfig;
- Server Manager.
Najveće zanimanje izazivaju prva tri alata: standardni PowerShell, RSAT i Windows Admin Center. Međutim, važno je razumeti da dobijanjem prednosti jednog od alata, dobijamo i njegove nametnute ograničenja.
Nećemo detaljno razlažiti mogućnosti konzole, PowerShell je PowerShell, sa svojim očiglednim plusovima i minusima. Međutim, sa RSAT i WAC je sve malo složenije.
WAC daje dostop do tako pomembnih sistemskih elementov, kot so urejanje registra ter upravljanje z diski in napravami. RSAT v prvem primeru deluje samo v načinu ogleda in ne omogoča nobenih sprememb, medtem ko za upravljanje z diski in fizičnimi napravami potrebno orodje Remote Server Administration Tools potrebuje GUI, kar ni naš primer. Na splošno RSAT ne more delovati z datotekami in s tem, posodabljanjem, namestitvijo/odstranjevanjem programov v registru.
▍Upravljanje sistema
WAC
RSAT
Upravljanje komponent
Da
Da
Urejevalnik registra
Da
Ne
Upravljanje omrežja
Da
Da
Pregled dogodkov
Da
Da
Skupne mape
Da
Da
Upravljanje z diski
Da
Samo za strežnike z GUI
Načrtovalnik opravil
Da
Da
Upravljanje naprav
Da
Samo za strežnike z GUI
Upravljanje datotek
Da
Ne
Upravljanje uporabnikov
Da
Da
Upravljanje skupin
Da
Da
Upravljanje certifikatov
Da
Da
Posodobitve
Da
Ne
Odstranjevanje programov
Da
Ne
Sistemski monitor
Da
Da
Po drugi strani pa nam RSAT daje popoln nadzor nad vlogami na napravi, medtem ko Windows Admin Center v tem pogledu ne more ponuditi prav nič. Tukaj je primerjava zmožnosti RSAT in WAC v tem vidiku, za boljšo predstavo:
▍Upravljanje vlog
WAC
RSAT
Advanced Thread Protection
PREDPREGLED
Ne
Windows Defender
PREDPREGLED
Da
Kontejnerji
PREDPREGLED
Da
AD Administrative Center
PREDPREGLED
Da
AD Domain and Trusts
Ne
Da
AD site in storitve
Ne
Da
DHCP
PREDPREGLED
Da
DNS
PREDPREGLED
Da
DFS Manager
Ne
Da
GPO Manager
Ne
Da
IIS Manager
Ne
Da
To pomeni, da je že očitno, da se pri odpovedi GUI in PowerShellu v prid drugim nadzornim elementom ne moremo zanašati le na en instrument: za popolno upravljanje na vseh področjih potrebujemo vsaj kombinacijo RSAT in WAC.
Pri tem je treba upoštevati, da bo uporaba WAC terjala 150-180 megabajtov pomnilnika. Windows Admin Center ob povezavi ustvari 3-4 seje na strani strežnika, ki jih ni mogoče ustaviti niti ob prekinitvi orodja iz virtualne naprave. Poleg tega WAC ne deluje s starejšimi različicami PowerShella, zato boste potrebovali vsaj PowerShell 5.0. Vse to nasprotuje naši paradigmi stroge varčnosti virov, vendar je za udobje treba plačati. V našem primeru – z operativnim pomnilnikom.
Še ena možnost upravljanja Server Core je namestitev GUI z zunanjimi orodji, da se izognemo prenašanju ton smeti, ki prihajajo v polni različici skupaj z vmesnikom.
V tem primeru imamo dve možnosti: namestitev originalnega Explorer ali uporaba Explorer++. Kot alternativa slednjemu je primeren vsak upravljalnik datotek: Total Commander, FAR Manager, Double Commander in tako naprej. Zadnji je boljša izbira, če vam je kritična varčevanje z operativno pomnilnikom. Dodate lahko Explorer++ ali kateri koli drug upravljalnik datotek tako, da ustvarite omrežno mapo in zaženete prek konzole ali načrtovalnika.
Namestitev polnega Explorerja nam bo dala več možnosti при delu с программным обеспечением, оснащенным UI. Для этого нам na Server Core App Compatibility Feature on Demand (FOD), ki bo v sistem vrnil MMC, Eventvwr, PerfMon, Resmon, Explorer.exe in celo Powershell ISE. Vendar pa bo to stalo, kot v primeru WAC: nepopravljivo bomo izgubili približno 150-200 megabajtov operativne pomnilnika, ki jih bo brez milosti požrl explorer.exe in druge storitve. Tudi če na napravi ni aktivnega uporabnika.


Tako izgleda poraba pomnilnika v sistemu na napravah z izvorno različico Explorerja in brez nje.
Tukaj se postavlja razumljivo vprašanje: zakaj vse te akrobacije s PowerShellom, FOD, upravljalniki datotek, če vsak korak levo-desno povečuje porabo operativne pomnilnika? Zakaj se obmetavati z vsemi temi orodji in se metati na vse strani, da bi si zagotovili udobno delo na Windows Server Core, ko lahko preprosto namestite Windows Server 2016/2019 in živite, kot da ste normalni ljudje?
Razlogov za uporabo Server Core je več. Prvi: v njem je skoraj dvakrat manjša poraba pomnilnika. Če se spomnite, je to pogoj ležal v osnovi našega članka že na samem začetku. Tukaj za primerjavo, poraba pomnilnika Windows Server 2019, primerjajte s posnetki zaslona nekoliko zgoraj:

In tako, 1146 MB porabljene pomnilnika namesto 655 MB na Core.
Če predpostavimo, da WAC ne boste potrebovali in boste uporabljali Explorer++ namesto originalnega Explorerja, potem še vedno pridobite skoraj pol hektarja na vsakem virtualnem stroju pod upravljanjem Windows Server. Če je virtualka ena, je dobiček nepomemben, vendar če jih je pet? Tukaj pa že ima prisotnost GUI pomen, še posebej, če je ne potrebujete.
Drugič, kakršnikoli ples okoli Windows Server Core ne bo rešil glavne težave pri uporabi Windows Serverja – RDP in njegove varnosti (natančneje, popolne odsotnosti le-te). Windows Core, tudi v obliki FOD, RSAT in WAC, je še vedno strežnik brez RDP, kar pomeni, da ni izpostavljen 95% obstoječih napadov.
V ostanku
Na splošno je Windows Core le nekoliko 'debeljši' kot katerikoli standardni Linux distribucijski sistem, vendar je mnogo funkcionalnejši. Če potrebujete sprostitev virov in ste pripravljeni delati s konzolo, WAC in RSAT ter uporabljati upravljalnike datotek namesto polne GUI – je Core vredno pozornosti. Še bolj, ker lahko z njim prihranite pri popolnem sistemu Windows in prihranjeni denar porabite za nadgradnjo svojega , dodajanje na primer RAM-a. Za udobje smo Windows Server Core dodali v našo .
Izvor: habr.com
