Due to the resource-heavy nature of Windows systems, lightweight Linux distributions such as Mint, Colibri OS, Debian, or Ubuntu dominate the VPS environment, lacking unnecessary heavy desktop environments for our needs. As they say, only console, only hardcore! And in reality, this is no exaggeration: Debian can start on 256 MB of memory and a single core at 1 GHz, meaning it can run on almost any 'stump'. For comfortable operation, you'll need at least 512 MB and a slightly faster processor. But what if we told you that you can achieve something similar on a Windows VPS? That you don't need to install a hefty Windows Server that requires three to four gigabytes of RAM and at least a couple of cores clocked at 1.4 GHz? Just use Windows Server Core â get rid of the GUI and some services. We'll discuss how to do this in the article.
Who is this Windows Server Core?
There is no clear information on what Windows (server) Core is, even on Microsoft's official website; in fact, it's so convoluted that you can't figure it out right away, but the first mentions date back to the era of Windows Server 2008. Essentially, Windows Core is a functioning core of Windows Server (surprisingly!), 'slimmed down' by the size of its own GUI and roughly half of the auxiliary services.
The main feature of Windows Core is its low hardware demands and entirely console-based management via PowerShell.
If you visit the Microsoft website and check the technical requirements, you'll find that to start Windows Server 2016/2019, you need at least 2 GB of RAM and a minimum of one core clocked at 1.4 GHz. But we all understand that with such a configuration, we can only expect the system to start, but certainly not for comfortable operation of our OS. For this reason, Windows Server typically requires more memory and at least 2 cores/4 threads from the processor, if it isn't allocated a pricey physical machine on some Xeon instead of a cheap virtual machine.
At the same time, the core of the server system requires only 512 MB of memory, and those CPU resources that were consumed by the GUI just to render on the screen and maintain its numerous services can be allocated to something more useful.
Here is a comparison of the out-of-the-box supported services of Windows Core and a full Windows Server from Microsoft's official site:
rakenduse klassid ja ressursid
server core
server withlauaarvaar
KĂ€ivitusakna
saadaval
saadaval
Windows PowerShell / Microsoft .NET
saadaval
saadaval
Perfmon.exe
ei ole saadaval
saadaval
Windbg (GUI)
toetatakse
saadaval
Resmon.exe
ei ole saadaval
saadaval
Regedit
saadaval
saadaval
Fsutil.exe
saadaval
saadaval
Disksnapshot.exe
ei ole saadaval
saadaval
Diskpart.exe
saadaval
saadaval
Diskmgmt.msc
ei ole saadaval
saadaval
Devmgmt.msc
ei ole saadaval
saadaval
Serveri haldur
ei ole saadaval
saadaval
Mmc.exe
ei ole saadaval
saadaval
Eventvwr
ei ole saadaval
saadaval
Wevtutil (SĂŒndmuste pĂ€ringud)
saadaval
saadaval
Teenused.msc
ei ole saadaval
saadaval
Juhtpaneel
ei ole saadaval
saadaval
Windows Update (GUI)
ei ole saadaval
saadaval
Windowsi Eksploraator
ei ole saadaval
saadaval
Ălesannete riba
ei ole saadaval
saadaval
Ălesannete riba teated
ei ole saadaval
saadaval
Taskmgr
saadaval
saadaval
Internet Explorer vÔi Edge
ei ole saadaval
saadaval
Sisemine abisĂŒsteem
ei ole saadaval
saadaval
Windows 10 Shell
ei ole saadaval
saadaval
Windows Media Player
ei ole saadaval
saadaval
PowerShell
saadaval
saadaval
PowerShell ISE
ei ole saadaval
saadaval
PowerShell IME
saadaval
saadaval
Mstsc.exe
ei ole saadaval
saadaval
Remote Desktop Services
saadaval
saadaval
Hyper-V Manager
ei ole saadaval
saadaval
Nagu nĂ€ha, on Windows Core'ist vĂ€lja lĂ”igatud palju. Alati lĂ”ikas alla teenused ja protsessid, mis on seotud sĂŒsteemi GUI-ga, samuti igasugune âprĂŒgiâ, mida tĂ”enĂ€oliselt meie konsoolil pĂ”hinev virtuaalmasin ei vaja, nĂ€iteks Windows Media Player.
Peaaegu nagu Linux, kuid siiski mitte
Windows Server Core'i sooviks vĂ”rrelda Linuxi jaotustega, kuid tegelikult ei ole see tĂ€iesti Ă”ige. Jah, need sĂŒsteemid on sarnaselt madala ressursikasutusega tĂ€nu GUI ja paljude kĂ”rvalteenuste puudumisele, kuid kasutamise ja koostamistehnika osas on see ikkagi Windows, mitte unix-sĂŒsteem.
Lihtsaim nĂ€ide â kĂ€sitsi Linuxi tuumade koostamise ja seejĂ€rel pakettide ja teenuste installimise kaudu vĂ”ib isegi kĂ”ige kergem Linuxi jaotus muutuda millegiks raskeks ja sarnaneda Ć veitsi armeenuga (siin tahaksime naljatada Python'i ĂŒle ja lisada pildi sarjast âKui programmeerimiskeeled oleks relvadâ, aga me ei tee seda). Windows Core'is on selliseid vabadusi palju vĂ€hem, kuna me tegeleme ikkagi Microsofti tootega.
Windows Server Core tarnitakse juba valmis kogumina, mille vaikimisi konfigureerimist vÔib hinnata eespool toodud tabeli alusel. Kui teil on vaja midagi loetletud toetamatute elementide seast, peate lisama puuduvad osad otse Linuxi konsoolist. Oluline on aga meeles pidada, et Feature on demand ja vÔimalus laadida komponente CAB-failide kujul, mille saab siis installimise eel lisada kogumisse. Kuid see stsenaarium ei toimi, kui leiate, et te ei saa mÔnda lÔigatud teenust.
Ent mis eristab Core-versiooni tĂ€isversioonist â see on sĂŒsteemi uuendamise ja teenuste lisamise vĂ”imalus ilma töö katkestamata. Windows Core toetab pakettide 'kuumakatte' jagamist, ilma et oleks vaja taastada. Tulemuseks on, et praktikas tuleb Windows Core'i haldava masina taaskĂ€ivitamist teha umbes 6 korda harvemini kui Windows Server'i haldamisel, st kord kuue kuu jooksul, mitte kord kuus.
Administratoritele on meeldiv boonus, et kui sĂŒsteemi kasutada nii, nagu see oli ette nĂ€htud - lĂ€bi konsoli, ilma RDP-ta - ja mitte muuta seda teiseks Windows Serveriks, siis see muutub vĂ”rreldes tĂ€ieliku versiooniga ÀÀrmiselt turvaliseks. LĂ”ppude lĂ”puks esinevad enamik Windows Serveri haavatavusi just RDP-s ja kasutaja tegevustes, kes RDP kaudu teeb seda, mida ei tohi. See on umbes nagu Henry Fordi lugu tema suhtumisest auto vĂ€rvi: "Igal kliendil on Ă”igus valida auto vĂ€rv, mida ta soovib, kuni see on must". Nii on ka sĂŒsteemiga: kasutaja saab sĂŒsteemiga suhelda iga soovitud viisi kaudu, peamine on, et ta teeb seda lĂ€bi konsoli.
Windows Server 2019 Core'i installimine ja haldamine
Oleme varem maininud, et Windows Core on tegelikult Windows Server ilma GUI kattekihtita. See tĂ€hendab, et saate kasutada peaaegu igat Windows Serveri versiooni core-variantina, see tĂ€hendab, et loobute GUI-st. Windows Server 2019 tooteperes on 3 4-st serveriversioonist: core-reĆŸiim on saadaval Windows Server 2019 Standard Editionis, Windows Server 2019 Datacenteris ja Hyper-V Server 2019-s, seega jÀÀb sellest loendist vĂ€lja ainult Windows Server 2019 Essentials.
Samas ei pea Windows Server Core'i installimispaketti eraldi otsima. Microsofti tavalises installijates pakutakse core-versiooni sisuliselt vaikimisi, samas kui GUI versioon tuleb valida kÀsitsi:

SĂŒsteemi haldamise vĂ”imalusi on tegelikult rohkem kui ĂŒks mainitud PowerShell, mida tootja vaikimisi pakub. Windows Server Core'i virtuaalmasina haldamiseks on minimaalset viis erinevat viisi:
- Kaug-PowerShell;
- Kaugserveri haldamise tööriistad (RSAT);
- Windows Admin Center;
- Sconfig;
- Serveri haldur.
Eriti huvitavad on esimesed kolm punkti: tavaline PowerShell, RSAT ja Windows Admin Center. Kuid on oluline mĂ”ista, et ĂŒhe tööriista eeliste saamisel kaasnevad ka selle seadistatud piirangud.
Me ei kavatse konsoli vĂ”imalusi eraldi lahti kirjutada, PowerShell on PowerShell, oma ilmselgete plusside ja miinustega. RSAT ja WAC puhul on kĂ”ik pisut keerulisem.Â
WAC annab juurdepÀÀsu olulistele sĂŒsteemihalduse elementidele, nagu registriredigeerimine ja ketaste ning seadmete haldamine. RSAT töötab esimeses juhul ainult vaatereĆŸiimis ja ei luba mingeid muudatusi, samuti on Remote Server Administration Tools ketaste ja fĂŒĂŒsiliste seadmete haldamiseks vajalik GUI, mis meie puhul ei kehti. Ăldiselt ei saa RSAT kasutada faile ja seega ka uuendusi, programmide installimist/eemaldamist registriredigeerimise jaoks.
âSĂŒsteemi haldamine
Â
WAC
RSAT
Komponentide haldamine
Jah
Jah
Registriredigeerija
Jah
Ei
VÔrgu haldamine
Jah
Jah
SĂŒndmuste vaatamine
Jah
Jah
Ăhised kaustad
Jah
Jah
Ketaste haldamine
Jah
Ainult GUI-ga serverite jaoks
Ălesannete ajastaja
Jah
Jah
Seadmete haldamine
Jah
Ainult GUI-ga serverite jaoks
Failide haldamine
Jah
Ei
Kasutajate haldamine
Jah
Jah
RĂŒhmade haldamine
Jah
Jah
Sertifikaatide haldamine
Jah
Jah
Uuendused
Jah
Ei
Programmide eemaldamine
Jah
Ei
SĂŒsteemi monitor
Jah
Jah
Teiselt poolt annab RSAT meile tĂ€ieliku kontrolli masinas olevate rollide ĂŒle, samas kui Windows Admin Center ei saa selles osas peaaegu midagi teha. Siin on RSAT ja WAC vĂ”imekuse vĂ”rdlus, et visuaalselt selgem oleks:
âRollide haldamine
Â
WAC
RSAT
Advanced Thread Protection
EELVAADE
Ei
Windows Defender
EELVAADE
Jah
Konteinerid
EELVAADE
Jah
AD haldus keskus
EELVAADE
Jah
AD domeenid ja usaldus
Ei
Jah
AD saidid ja teenused
Ei
Jah
DHCP
EELVAADE
Jah
DNS
EELVAADE
Jah
DFS haldur
Ei
Jah
GPO haldur
Ei
Jah
IIS haldur
Ei
Jah
Seega on juba selge, et GUI ja PowerShelli loobudes ei piisa ainult mÔnest monoinstrumendist: tÀielikuks haldamiseks igas suunas on meil vaja vÀhemalt RSAT ja WAC komplekti.
Samas tuleb meeles pidada, et WAC kasutamise eest tuleb maksta 150â180 megabaiti RAM-i. Windows Admin Center ĂŒhendamisel loob 3â4 sessiooni serveripool, mis ei kao isegi siis, kui tööriist eemaldatakse virtuaalmasinast. Veelgi enam, WAC ei tööta vanade PowerShelli versioonidega, seega on minimaalne nĂ”ue PowerShell 5.0. KĂ”ik see on vastuolus meie ressursitootlikkuse rangema paradigmaga, kuid mugavuse eest tuleb maksta. Meie puhul â RAM-iga.
Veel ĂŒks vĂ”imalus Server Core'i haldamiseks on GUI installimine kolmandate osapoolte vahenditega, et mitte tuua kaasa neid tohutuid prĂŒgi, mis tĂ€ieliku kogumiga koos liidesega tuleb.
Selles olukorras on meil kaks varianti: installida originaalne Explorer vÔi kasutada Explorer++. Alternatiivina sobib viimane puhul iga failihaldur: Total Commander, FAR Manager, Double Commander jne. Viimane valik on eelistatavam, kui mÀlu kokkuhoid on teie jaoks kriitilise tÀhtsusega. Explorer++ vÔi mÔne teise failihalduri lisamiseks saab luua vÔrgu kausta ja kÀivitada selle kaudu konsoolis vÔi ajakava abil.
TĂ€ieliku Exploreri paigaldamine annab meile rohkem vĂ”imalusi tarkvaraga töötamiseks, millel on kasutajaliides. Selleks peame Server Core'i rakenduste ĂŒhilduvuse funktsiooniga nĂ”udmisel (FOD), mis naaseb sĂŒsteemi MMC, Eventvwr, PerfMon, Resmon, Explorer.exe ja isegi Powershell ISE. Kuid selle eest tuleb maksta; nagu WAC-i puhul: me kaotame pöördumatult umbes 150-200 megabaiti RAM-i, mille sööb Ă€ra explorer.exe ja muud teenused. Isegi kui masinal pole aktiivset kasutajat.


Siin on nĂ€ha, kuidas sĂŒsteem tarbib mĂ€lu masinates, kus on esmane Explorer ja kus seda ei ole.
Tekib loomulik kĂŒsimus: miks kĂ”ik need keerutused PowerShellis, FOD-is ja failihaldurites, kui iga liigutus paremale-vasakule suurendab mĂ€lu tarbimist? Miks end koormata hulga tööriistadega ja ringi joosta, et tagada endale mugav töö Windows Server Core'is, kui vĂ”iks lihtsalt installida Windows Server 2016/2019 ja elada nagu inimene?
Server Core'i kasutamiseks on mitu pÔhjust. Esiteks: seal on peaaegu poole vÀhem mÀlu tarbimist. Kui te mÀletate, oli see tingimus meie artikli aluseks alguses. Siin on nÀiteks Windows Server 2019 mÀlu tarbimine, vÔrrelge eelpool olevate ekraanipiltidega:

Ja nii, 1146 MB mĂ€lu tarbimine vĂ”rreldes 655 MB Core'is.Â
Kui eeldada, et WAC-i pole vaja ja kasutate Explorer++ asemel originaalset Exploreri, siis kasutate endiselt peaaegu pool hektarit iga virtuaalmasina kohta, mis töötab Windows Serveris. Kui virtuaalmasinaid on ainult ĂŒks, siis on kasu vĂ€ike, aga kui neid on viis? Siis on GUI olemasolu juba oluline, eriti kui see pole vajalik.Â
Teine â igasugused ringtantsud Windows Server Core'i ĂŒmber ei lahenda peamist probleemi Windows Serveri kĂ€itamisel â RDP ja selle turvalisus (tĂ€psemalt öeldes, tĂ€ielik puudumine). Isegi FOD, RSAT ja WAC variandi puhul on Windows Core ikkagi server, mis ei toeta RDP-d, mis tĂ€hendab, et see ei ole 95% olemasolevatest rĂŒnnakutest vastuvĂ”tlik.
ĂlejÀÀnud
KokkuvĂ”ttes on Windows Core vaid veidi "rasvasem" kui ĂŒkski standardne Linuxi distributsioon, kuid see on oluliselt funktsionaalsem. Kui vajate ressursivabastust ja olete valmis töötama konsooli, WAC ja RSAT-iga, kasutama failihaldureid, mitte tĂ€isfunktsionaalset GUI-d â siis tasub Core'ile tĂ€helepanu pöörata. Eriti kuna selle abil saate maksta vĂ€hem tĂ€isversiooni Windowsi eest ja sÀÀstetud raha suunata enda , nĂ€iteks RAM-i lisamiseks. Mugavuse huvides oleme lisanud Windows Server Core'i oma .
Allikas: habr.com
