„Windows Server“ suspaudimas prie mažos galios VPS naudojant „Windows Server Core“.

„Windows Server“ suspaudimas prie mažos galios VPS naudojant „Windows Server Core“.
Dėl „Windows“ sistemų perpildymo VPS aplinkoje dominuoja lengvi „Linux“ paskirstymai: „Mint“, „Colibri OS“, „Debian“ ar „Ubuntu“, neturintys sunkios, mūsų tikslams nereikalingos darbalaukio aplinkos. Kaip sakoma, tik konsolė, tik hardcore! Ir iš tikrųjų tai nėra perdėta: tas pats „Debian“ paleidžiamas nuo 256 MB atminties ir vieno branduolio, kurio laikrodžio ciklas yra 1 Ghz, tai yra, beveik bet kuriame „kelme“. Patogiam darbui prireiks bent 512 MB ir kiek greitesnio procesoriaus. O kas, jei pasakytume, kad maždaug tą patį galite padaryti VPS, kuriame veikia „Windows“? Kodėl jums nereikia išleisti sunkaus „Windows Server“, kuriam reikia trijų ar keturių hektarų RAM ir bent poros branduolių, veikiančių 1,4 GHz dažniu? Tiesiog naudokite „Windows Server Core“ – atsikratykite GUI ir kai kurių paslaugų. Apie tai, kaip tai padaryti, kalbėsime straipsnyje.

Kas yra šis „Windows Server Core“?

Net oficialioje Mikeso svetainėje nėra aiškios informacijos apie tai, kas yra Windows (serverio) Core, tiksliau, ten viskas taip painu, kad iš karto nesuprasi, bet pirmieji paminėjimai siekia Windows Server 2008 erą. Iš esmės „Windows Core“ yra veikiantis „Windows“ branduolio serveris (staiga!), „plonesnis“ savo GUI dydžiu ir maždaug puse šalutinių paslaugų.

Pagrindinė „Windows Core“ savybė yra nereikli aparatinė įranga ir visas konsolės valdymas naudojant „PowerShell“.

Jei apsilankysite „Microsoft“ svetainėje ir patikrinsite techninius reikalavimus, tada norint paleisti „Windows Server 2016/2019“, jums reikės bent 2 GB RAM ir bent vieno branduolio, kurio takto dažnis yra 1,4 GHz. Bet visi suprantame, kad su tokia konfigūracija galime tikėtis tik sistemos paleidimo, bet tikrai ne patogaus mūsų OS veikimo. Būtent dėl ​​šios priežasties Windows Server dažniausiai yra skiriama daugiau atminties ir bent 2 branduoliai/4 gijos iš procesoriaus, jei neteikia jam brangios fizinės mašinos kokiame nors Xeone, o ne pigioje virtualioje mašinoje.

Tuo pačiu metu serverio sistemos branduoliui reikia tik 512 MB atminties, o tuos procesoriaus išteklius, kuriuos sunaudojo GUI tiesiog nupiešti ekrane ir palaikyti daugybę paslaugų, galima panaudoti kam nors naudingesniam.

Štai „Windows Core“ paslaugų, palaikomų iš karto, ir viso „Windows Server“ iš oficialios „Microsoft“ svetainės palyginimas:

taikymas
serverio branduolys
serveris sudarbalaukio patirtis

Komandinė eilutė
prieinamas
prieinamas

„Windows PowerShell“ / „Microsoft .NET“.
prieinamas
prieinamas

Perfmon.exe
nėra
prieinamas

Windbg (GUI)
remia
prieinamas

Resmon.exe
nėra
prieinamas

Regedit
prieinamas
prieinamas

Fsutil.exe
prieinamas
prieinamas

Disksnapshot.exe
nėra
prieinamas

Diskpart.exe
prieinamas
prieinamas

Diskmgmt. msc
nėra
prieinamas

devmgmt.msc
nėra
prieinamas

Server Manager "
nėra
prieinamas

mmc.exe
nėra
prieinamas

Eventvwr
nėra
prieinamas

Wevtutil (įvykių užklausos)
prieinamas
prieinamas

Services.msc
nėra
prieinamas

valdymo pultas
nėra
prieinamas

„Windows“ naujinimas (GUI)
nėra
prieinamas

"Windows Explorer"
nėra
prieinamas

užduočių
nėra
prieinamas

Užduočių juostos pranešimai
nėra
prieinamas

Užduočių gr
prieinamas
prieinamas

Internet Explorer arba Edge
nėra
prieinamas

Integruota pagalbos sistema
nėra
prieinamas

„Windows 10“ apvalkalas
nėra
prieinamas

Windows Media Player "
nėra
prieinamas

PowerShell "
prieinamas
prieinamas

„PowerShell ISE“
nėra
prieinamas

PowerShell IME
prieinamas
prieinamas

Mstsc.exe
nėra
prieinamas

Nuotolinio darbalaukio paslaugos
prieinamas
prieinamas

„Hyper-V“ vadovas
nėra
prieinamas

Kaip matote, iš „Windows Core“ buvo iškirpta daug. Su sistemos GUI susijusios paslaugos ir procesai, taip pat bet kokios „šiukšlės“, kurių tikrai nereikia mūsų konsolės virtualioje mašinoje, pavyzdžiui, „Windows Media Player“, pateko po peiliu.

Beveik kaip Linux, bet ne

Labai noriu palyginti „Windows Server Core“ su „Linux“ paskirstymais, bet iš tikrųjų tai nėra visiškai teisinga. Taip, šios sistemos yra panašios viena į kitą pagal sumažintą išteklių suvartojimą dėl GUI ir daugelio šalutinių paslaugų atsisakymo, tačiau veikimo ir kai kurių surinkimo metodų požiūriu tai vis tiek yra „Windows“, o ne „Unix“ sistema.

Paprasčiausias pavyzdys yra tas, kad rankiniu būdu sukūrus Linux branduolį ir po to įdiegus paketus bei paslaugas, net ir lengvas Linux platinimas gali būti paverstas kažkuo sunkiu ir panašiu į Šveicarijos armijos peilį (čia labai noriu pajuokauti akordeonu apie Python ir įterpkite paveikslėlį iš serijos „Jei programavimo kalbos būtų ginklai“, bet mes to nedarysime). „Windows Core“ tokios laisvės yra daug mažiau, nes mes juk susiduriame su „Microsoft“ produktu.

„Windows Server Core“ yra paruoštas, kurio numatytąją konfigūraciją galima apskaičiuoti pagal aukščiau pateiktą lentelę. Jei jums reikia kažko iš nepalaikomo sąrašo, trūkstamus elementus turėsite pridėti internete per konsolę. Tiesa, neturėtumėte pamiršti apie funkciją pagal pareikalavimą ir galimybę atsisiųsti komponentus kaip CAB failus, kuriuos vėliau galima pridėti prie agregato prieš diegiant. Tačiau šis scenarijus neveikia, jei proceso metu jau pastebėjote, kad trūksta kokių nors iškirptų paslaugų.

Tačiau Core versija skiriasi nuo pilnos versijos yra galimybė atnaujinti sistemą ir pridėti paslaugų nestabdant darbo. „Windows Core“ palaiko karštąjį paketų sukūrimą be perkrovimo. Dėl to, remiantis praktiniais pastebėjimais: kompiuterį, kuriame veikia Windows Core, reikia perkrauti ~6 kartus rečiau nei su Windows Server, tai yra kartą per pusmetį, o ne kartą per mėnesį.

Maloni premija administratoriams yra ta, kad jei sistema naudojama pagal paskirtį – per konsolę, be KPP – ir nepaverčiama antruoju Windows Server, tai ji tampa itin saugi lyginant su pilna versija. Galų gale, dauguma „Windows Server“ pažeidžiamumų atsiranda dėl KPP ir vartotojo veiksmų, kurie per šį KPP daro tai, ko nereikėtų daryti. Tai kažkas panašaus į istoriją su Henry Fordu ir jo požiūriu į automobilio spalvą: „Kiekvienas klientas gali nudažyti automobilį bet kokia spalva, jei tik jis yra Juodas“ Tas pats yra su sistema: vartotojas gali bendrauti su sistema bet kokiu būdu, svarbiausia, kad jis tai daro per konsolė.

Įdiekite ir valdykite „Windows Server 2019 Core“.

Anksčiau minėjome, kad „Windows Core“ iš esmės yra „Windows Server“ be GUI paketo. Tai yra, galite naudoti beveik bet kurią „Windows Server“ versiją kaip pagrindinę versiją, tai yra, atsisakyti GUI. „Windows Server 2019“ šeimos produktams tai yra 3 iš 4 serverių versijų: pagrindinis režimas galimas „Windows Server 2019 Standard Edition“, „Windows Server 2019 Datacenter“ ir „Hyper-V Server 2019“, ty neįtraukiamas tik „Windows Server 2019 Essentials“. iš šio sąrašo.

Tokiu atveju jums tikrai nereikia ieškoti „Windows Server Core“ diegimo paketo. Standartinėje „Microsoft“ diegimo programoje pagrindinė versija pagal numatytuosius nustatymus siūloma pažodžiui, o GUI versija turi būti pasirinkta rankiniu būdu:

„Windows Server“ suspaudimas prie mažos galios VPS naudojant „Windows Server Core“.
Tiesą sakant, sistemos valdymo galimybių yra daugiau nei minėta PowerShell, kurią gamintojas siūlo pagal nutylėjimą. Virtualią mašiną „Windows Server Core“ galite valdyti mažiausiai penkiais skirtingais būdais:

  • Nuotolinis „PowerShell“;
  • Nuotolinio serverio administravimo įrankiai (RSAT);
  • „Windows“ administravimo centras;
  • Sconfig;
  • Serverio tvarkyklė.

Pirmosios trys pozicijos kelia didžiausią susidomėjimą: standartinis „PowerShell“, RSAT ir „Windows Admin Center“. Tačiau svarbu suprasti, kad nors ir gauname vienos iš priemonių privalumus, kartu gauname ir jos keliamus apribojimus.

Neapibūdinsime konsolės galimybių; „PowerShell“ yra „PowerShell“ su akivaizdžiais privalumais ir trūkumais. Su RSAT ir WAC viskas yra šiek tiek sudėtingiau. 

WAC suteikia prieigą prie svarbių sistemos valdiklių, tokių kaip registro redagavimas ir diskų bei įrenginių tvarkymas. RSAT pirmuoju atveju veikia tik peržiūros režimu ir neleis daryti jokių pakeitimų, o norint valdyti diskus ir fizinius įrenginius Remote Server Administration Tools reikalauja GUI, o mūsų atveju to nėra. Apskritai, RSAT negali dirbti su failais ir atitinkamai atnaujinimais, programų diegimu / pašalinimu redaguojant registrą.

▍Sistemos valdymas

 

WAC
RSAT

Komponentų valdymas
Taip
Taip

Registro redaktorius
Taip
Ne

Tinklo valdymas
Taip
Taip

Įvykių peržiūros priemonė
Taip
Taip

Bendrinami aplankai
Taip
Taip

Disko valdymas
Taip
Tik serveriams su GUI

Darbų planuotojas
Taip
Taip

Įrenginių valdymas
Taip
Tik serveriams su GUI

Failų valdymas
Taip
Ne

Vartotojo valdymas
Taip
Taip

Grupės valdymas
Taip
Taip

Sertifikatų valdymas
Taip
Taip

Atnaujinimai
Taip
Ne

Programų pašalinimas
Taip
Ne

Sistemos monitorius
Taip
Taip

Kita vertus, RSAT suteikia mums visišką įrenginio vaidmenų kontrolę, o „Windows“ administravimo centras šiuo atžvilgiu nieko negali padaryti. Aiškumo dėlei pateikiame RSAT ir WAC galimybių palyginimą šiuo aspektu:

▍Vaidmenų valdymas

 

WAC
RSAT

Išplėstinė gijų apsauga
PERŽIŪRA
Ne

"Windows Defender"
PERŽIŪRA
Taip

Konteineriai
PERŽIŪRA
Taip

AD administracinis centras
PERŽIŪRA
Taip

AD domenas ir patikos fondai
Ne
Taip

AD svetainės ir paslaugos
Ne
Taip

DHCP
PERŽIŪRA
Taip

DNS
PERŽIŪRA
Taip

DFS tvarkyklė
Ne
Taip

GPO vadovas
Ne
Taip

IIS valdytojas
Ne
Taip

Tai reiškia, kad jau dabar aišku, kad jei atsisakysime GUI ir PowerShell ir pakeisime kitus valdiklius, negalėsime išsisukti naudodami kažkokį monoįrankį: visiškam administravimui visuose frontuose mums reikės bent jau. RSAT ir WAC derinys.

Tačiau reikia atsiminti, kad norint naudotis WAC teks sumokėti 150-180 megabaitų RAM. Prisijungęs „Windows Admin Center“ sukuria 3–4 seansus serverio pusėje, kurios neužmušamos net atjungus įrankį nuo virtualios mašinos. WAC taip pat neveikia su senesnėmis PowerShell versijomis, todėl jums reikės bent jau PowerShell 5.0. Visa tai prieštarauja mūsų taupymo paradigmai, bet jūs turite mokėti už komfortą. Mūsų atveju – RAM.

Kitas „Server Core“ valdymo variantas yra įdiegti GUI naudojant trečiųjų šalių įrankius, kad nereikėtų vilkti daugybės šiukšlių, atsirandančių kartu su sąsaja.

Šiuo atveju turime dvi parinktis: įdiegti originalią naršyklę sistemoje arba naudoti Explorer++. Kaip alternatyva pastarajam tinka bet kuri failų tvarkyklė: Total Commander, FAR Manager, Double Commander ir pan. Pastarasis yra geresnis, jei jums labai svarbu taupyti RAM. Galite pridėti „Explorer++“ ar bet kurią kitą failų tvarkyklę, sukurdami tinklo aplanką ir paleisdami jį naudodami konsolę arba planuoklį.

Įdiegę visavertį „Explorer“ suteiksime daugiau galimybių dirbti su programine įranga su vartotojo sąsaja. Už tai mes teks susisiekti į Server Core App suderinamumo funkciją pagal poreikį (FOD), kuri grąžins į sistemą MMC, Eventvwr, PerfMon, Resmon, Explorer.exe ir net Powershell ISE. Tačiau už tai teks susimokėti, kaip ir su WAC: negrįžtamai prarasime apie 150-200 megabaitų RAM, kurią negailestingai rys explorer.exe ir kitos paslaugos. Net jei įrenginyje nėra aktyvaus vartotojo.

„Windows Server“ suspaudimas prie mažos galios VPS naudojant „Windows Server Core“.
„Windows Server“ suspaudimas prie mažos galios VPS naudojant „Windows Server Core“.
Taip atrodo sistemos atminties suvartojimas įrenginiuose su vietiniu Explorer paketu ir be jo.

Čia iškyla logiškas klausimas: kam tas šokis su PowerShell, FOD, failų tvarkyklėmis, jei bet koks žingsnis į kairę ar dešinę veda prie RAM suvartojimo padidėjimo? Kam teptis krūva įrankių ir maišyti iš vienos pusės į kitą, kad užtikrintumėte patogų darbą su Windows Server Core, kai galite tiesiog atsisiųsti Windows Server 2016/2019 ir gyventi kaip baltaodis?

Yra keletas priežasčių, kodėl verta naudoti „Server Core“. Pirma: dabartinis atminties suvartojimas yra beveik perpus mažesnis. Jei prisimenate, ši sąlyga buvo mūsų straipsnio pagrindas pačioje pradžioje. Palyginimui, čia yra „Windows Server 2019“ atminties suvartojimas, palyginkite su aukščiau pateiktomis ekrano kopijomis:

„Windows Server“ suspaudimas prie mažos galios VPS naudojant „Windows Server Core“.
Taigi, 1146 MB atminties, o ne 655 MB Core. 

Darant prielaidą, kad jums nereikia WAC ir naudosite „Explorer++“, o ne originalų „Explorer“, tada jūs vis tiek laimėsite beveik pusę hektaro kiekvienoje virtualioje mašinoje, kurioje veikia „Windows Server“. Jei yra tik viena virtuali mašina, tai padidėjimas yra nereikšmingas, bet jei jų yra penki? Čia svarbu turėti GUI, ypač jei jums jos nereikia. 

Antra, bet kokie šokiai aplink „Windows Server Core“ neprivers jūsų kovoti su pagrindine „Windows Server“ veikimo problema – KPP ir jo saugumu (tiksliau, visišku jo nebuvimu). „Windows Core“, net padengta FOD, RSAT ir WAC, vis dar yra serveris be RDP, tai yra, jis nėra jautrus 95% esamų atakų.

Likę

Apskritai, „Windows Core“ yra tik šiek tiek riebesnis už bet kurį „Linux“ platinimą, tačiau jis yra daug funkcionalesnis. Jei jums reikia atlaisvinti išteklius ir esate pasirengę dirbti su konsole, WAC ir RSAT bei naudoti failų tvarkykles, o ne visavertę GUI, verta atkreipti dėmesį į „Core“. Be to, su juo galėsite nemokėti papildomai už visavertį „Windows“, o sutaupytus pinigus išleisti naujindami VPS, pridedant ten, pavyzdžiui, RAM. Kad būtų patogiau, į savo sistemą įtraukėme „Windows Server Core“. turgavietėje.

„Windows Server“ suspaudimas prie mažos galios VPS naudojant „Windows Server Core“.

Šaltinis: www.habr.com

Добавить комментарий