Windows sistemlerinin oburluğu nedeniyle, VPS ortamı hafif Linux dağıtımlarının hakimiyetindedir: Mint, Colibri OS, Debian veya Ubuntu, amaçlarımız açısından gereksiz olan ağır bir masaüstü ortamından yoksundur. Dedikleri gibi, yalnızca konsol, yalnızca hardcore! Ve aslında bu hiç de abartı değil: Aynı Debian 256 MB bellekle ve 1 Ghz saat hızına sahip bir çekirdekle, yani hemen hemen her "güdükte" başlar. Rahat çalışma için en az 512 MB'a ve biraz daha hızlı bir işlemciye ihtiyacınız olacak. Peki ya size hemen hemen aynı şeyi Windows çalıştıran bir VPS'de de yapabileceğinizi söylesek? Neden üç ila dört hektarlık RAM ve en az birkaç 1,4 GHz saat hızına sahip çekirdek gerektiren ağır bir Windows Server'ı piyasaya sürmeniz gerekmiyor? Sadece Windows Server Core'u kullanın; GUI'den ve bazı hizmetlerden kurtulun. Makalede bunun nasıl yapılacağı hakkında konuşacağız.
Bu Windows Sunucu Çekirdeği kimdir?
Mikes'in resmi web sitesinde bile Windows (sunucu) Çekirdeğinin ne olduğuna dair net bir bilgi yok veya daha doğrusu, orada her şey o kadar kafa karıştırıcı ki hemen anlayamazsınız, ancak ilk sözler Windows Server 2008 dönemine kadar uzanıyor Temel olarak, Windows Core çalışan bir Windows çekirdek sunucusudur (birdenbire!), kendi GUI'sinin boyutuna ve yan hizmetlerin yaklaşık yarısına göre "daha ince".
Windows Core'un ana özelliği, iddiasız donanımı ve PowerShell aracılığıyla tam konsol kontrolüdür.
Microsoft web sitesine gidip teknik gereksinimleri kontrol ederseniz, Windows Server 2016/2019'u başlatmak için en az 2 gig RAM'e ve 1,4 GHz saat hızına sahip en az bir çekirdeğe ihtiyacınız olacaktır. Ancak hepimiz böyle bir konfigürasyonla yalnızca sistemin başlamasını bekleyebileceğimizi, ancak kesinlikle işletim sistemimizin rahat çalışmasını bekleyemeyeceğimizi anlıyoruz. Bu nedenle, Windows Server'a, ucuz bir sanal makine yerine bazı Xeon'larda pahalı bir fiziksel makine sağlamazlarsa, genellikle daha fazla bellek ve işlemciden en az 2 çekirdek/4 iş parçacığı ayrılır.
Aynı zamanda, sunucu sisteminin çekirdeği yalnızca 512 MB bellek gerektirir ve GUI tarafından yalnızca ekrana çizilmek ve sayısız hizmetin çalışır durumda kalmasını sağlamak için tüketilen işlemci kaynakları daha kullanışlı bir şey için kullanılabilir.
Kutudan çıktığı haliyle desteklenen Windows Core hizmetleri ile resmi Microsoft web sitesindeki tam Windows Server'ın karşılaştırmasını burada bulabilirsiniz:
uygulama
sunucu çekirdeği
sunucu ilemasaüstü tecrübesi
Komut istemi
mevcut
mevcut
Windows PowerShell/Microsoft .NET
mevcut
mevcut
Perfmon.exe
kullanılamaz
mevcut
Windbg (GUI)
destekli
mevcut
Resmon.exe
kullanılamaz
mevcut
Regedit
mevcut
mevcut
Fsutil.exe
mevcut
mevcut
Disksnapshot.exe
kullanılamaz
mevcut
diskpart.exe
mevcut
mevcut
diskmgmt.msc
kullanılamaz
mevcut
devmgmt.msc
kullanılamaz
mevcut
Sunucu Yöneticisi
kullanılamaz
mevcut
mmc.exe
kullanılamaz
mevcut
eventvwr
kullanılamaz
mevcut
Wevtutil (Olay sorguları)
mevcut
mevcut
services.msc
kullanılamaz
mevcut
Kumanda panosu
kullanılamaz
mevcut
Windows Güncelleme (GUI)
kullanılamaz
mevcut
Windows Gezgini
kullanılamaz
mevcut
görev çubuğu
kullanılamaz
mevcut
Görev çubuğu bildirimleri
kullanılamaz
mevcut
Vazife
mevcut
mevcut
Internet Explorer veya Edge
kullanılamaz
mevcut
Dahili yardım sistemi
kullanılamaz
mevcut
Windows 10 Kabuğu
kullanılamaz
mevcut
Windows Media Player
kullanılamaz
mevcut
PowerShell
mevcut
mevcut
PowerShell İMKB
kullanılamaz
mevcut
PowerShell IME'si
mevcut
mevcut
Mstsc.exe
kullanılamaz
mevcut
Uzak Masaüstü Hizmetleri
mevcut
mevcut
Hyper-V Yöneticisi
kullanılamaz
mevcut
Gördüğünüz gibi Windows Core'dan çok şey kesildi. Sistemin GUI'siyle ilişkili hizmetler ve süreçlerin yanı sıra, Windows Media Player gibi konsol sanal makinemizde kesinlikle ihtiyaç duyulmayan herhangi bir "çöp" bıçağın altına girdi.
Neredeyse Linux'a benziyor ama öyle değil
Gerçekten Windows Server Core'u Linux dağıtımlarıyla karşılaştırmak istiyorum ama aslında bu tamamen doğru değil. Evet, bu sistemler GUI'nin ve birçok yan hizmetin terk edilmesi nedeniyle kaynak tüketiminin azalması açısından birbirine benzer, ancak operasyon ve bazı montaj yaklaşımları açısından bu hala Windows'tur ve bir Unix sistemi değildir.
En basit örnek, Linux çekirdeğini manuel olarak oluşturarak ve ardından paketleri ve hizmetleri yükleyerek, hafif bir Linux dağıtımının bile ağır ve İsviçre Çakısı'na benzer bir şeye dönüştürülebilmesidir (burada Python hakkında gerçekten bir akordeon şakası yapmak istiyorum) ve “Programlama Dilleri Silah Olsaydı” serisinden bir resim ekleyeceğiz, ancak yapmayacağız). Windows Core'da bu tür bir özgürlük çok daha az çünkü sonuçta bir Microsoft ürünüyle karşı karşıyayız.
Windows Server Core hazır olarak gelir ve varsayılan yapılandırması yukarıdaki tablodan tahmin edilebilir. Desteklenmeyen listeden bir şeye ihtiyacınız varsa, eksik öğeleri konsol aracılığıyla çevrimiçi olarak eklemeniz gerekecektir. Doğru, isteğe bağlı özelliği ve bileşenleri CAB dosyaları olarak indirme yeteneğini unutmamalısınız; bunlar daha sonra kurulumdan önce montaja eklenebilir. Ancak işlem sırasında kesme hizmetlerinden herhangi birinin eksik olduğunu fark ederseniz bu komut dosyası çalışmaz.
Ancak Core sürümünü tam sürümden ayıran şey, çalışmayı durdurmadan sistemi güncelleme ve hizmet ekleme yeteneğidir. Windows Core, yeniden başlatmaya gerek kalmadan paketlerin sıcak haddelenmesini destekler. Sonuç olarak, pratik gözlemlere dayanarak: Windows Core çalıştıran bir makinenin, Windows Server çalıştıran bir makineden yaklaşık 6 kat daha az yeniden başlatılması gerekir; yani ayda bir değil, altı ayda bir.
Yöneticiler için hoş bir bonus, eğer sistem amaçlandığı gibi - konsol aracılığıyla, RDP olmadan - kullanılırsa ve ikinci bir Windows Sunucusuna dönüştürülmezse, tam sürüme kıyasla son derece güvenli hale gelmesidir. Sonuçta, Windows Server'daki güvenlik açıklarının çoğunluğu RDP'den ve aynı RDP aracılığıyla yapılmaması gereken bir şeyi yapan kullanıcının eylemlerinden kaynaklanmaktadır. Bu, Henry Ford'un ve onun arabanın rengine karşı tutumunun hikayesine benziyor: "Her müşteri, istediği renkte bir arabaya sahip olabilir, yeter ki o da olsun." siyah" Sistem için de durum aynı: Kullanıcı sistemle herhangi bir şekilde iletişim kurabilir, asıl önemli olan bunu aracılığıyla yapmasıdır. konsol.
Windows Server 2019 Core'u yükleme ve yönetme
Daha önce Windows Core'un aslında GUI sarmalayıcısı olmayan Windows Server olduğundan bahsetmiştik. Yani, Windows Server'ın hemen hemen her sürümünü çekirdek sürüm olarak kullanabilirsiniz, yani GUI'den vazgeçebilirsiniz. Windows Server 2019 ailesindeki ürünler için bu, 3 sunucu yapısından 4'üdür: çekirdek modu Windows Server 2019 Standard Edition, Windows Server 2019 Datacenter ve Hyper-V Server 2019 için mevcuttur, yani yalnızca Windows Server 2019 Essentials hariçtir bu listeden.
Bu durumda aslında Windows Server Core kurulum paketini aramanıza gerek yok. Standart Microsoft yükleyicisinde, çekirdek sürüm tam anlamıyla varsayılan olarak sunulurken, GUI sürümünün manuel olarak seçilmesi gerekir:
Aslında, sistemi yönetmek için üretici tarafından varsayılan olarak sunulan PowerShell'den daha fazla seçenek vardır. Windows Server Core'daki bir sanal makineyi en az beş farklı şekilde yönetebilirsiniz:
- Uzak PowerShell;
- Uzak Sunucu Yönetim Araçları (RSAT);
- Windows Yönetim Merkezi;
- yapılandırma;
- Sunucu Yöneticisi.
İlk üç pozisyon en çok ilgi çekicidir: standart PowerShell, RSAT ve Windows Admin Center. Ancak, araçlardan birinin faydalarını alırken aynı zamanda onun getirdiği kısıtlamalara da maruz kaldığımızı anlamak önemlidir.
Konsolun yeteneklerini açıklamayacağız; PowerShell, bariz artıları ve eksileri ile PowerShell'dir. RSAT ve WAC ile her şey biraz daha karmaşıktır.
WAC, kayıt defterini düzenlemek ve diskleri ve aygıtları yönetmek gibi önemli sistem kontrollerine erişmenizi sağlar. İlk durumda RSAT yalnızca görüntüleme modunda çalışır ve herhangi bir değişiklik yapmanıza izin vermez ve diskleri ve fiziksel aygıtları yönetmek için Uzak Sunucu Yönetim Araçları bir GUI gerektirir, bu bizim durumumuzda geçerli değildir. Genel olarak RSAT, kayıt defterini düzenlerken dosyalar ve buna bağlı olarak güncellemeler, programların kurulumu/kaldırılmasıyla çalışamaz.
▍Sistem yönetimi
WAC
RSAT
Bileşen Yönetimi
Evet
Evet
Kayıt Defteri Düzenleyicisi
Evet
Hayır
Ağ yönetimi
Evet
Evet
Olay görüntüleyicisi
Evet
Evet
Paylaşılan klasörler
Evet
Evet
Disk Yönetimi
Evet
Yalnızca GUI'li sunucular için
Görev Zamanlayıcısı
Evet
Evet
Cihaz yönetimi
Evet
Yalnızca GUI'li sunucular için
Dosya yönetimi
Evet
Hayır
Kullanıcı yönetimi
Evet
Evet
Grup yönetimi
Evet
Evet
Sertifika Yönetimi
Evet
Evet
Güncellemeler
Evet
Hayır
Programları kaldırma
Evet
Hayır
Sistem Monitörü
Evet
Evet
Öte yandan, RSAT bize makinedeki roller üzerinde tam kontrol sağlarken Windows Admin Center bu konuda tam anlamıyla hiçbir şey yapamaz. Netlik sağlamak amacıyla RSAT ve WAC'ın bu açıdan yeteneklerinin bir karşılaştırması aşağıda verilmiştir:
▍Rol yönetimi
WAC
RSAT
Gelişmiş Konu Koruması
ÖN İZLEME
Hayır
Windows Defender
ÖN İZLEME
Evet
Konteynerler
ÖN İZLEME
Evet
AD Yönetim Merkezi
ÖN İZLEME
Evet
AD Etki Alanı ve Güvenler
Hayır
Evet
Reklam siteleri ve hizmetleri
Hayır
Evet
DHCP
ÖN İZLEME
Evet
DNS
ÖN İZLEME
Evet
DFS Yöneticisi
Hayır
Evet
GPO Yöneticisi
Hayır
Evet
IIS Yöneticisi
Hayır
Evet
Yani, GUI ve PowerShell'i diğer kontroller lehine terk edersek, bir tür tek araç kullanmaktan kurtulamayacağımız zaten açık: tüm cephelerde tam yönetim için en azından ihtiyacımız olacak RSAT ve WAC'ın bir kombinasyonu.
Ancak WAC'ı kullanmak için 150-180 megabayt RAM ödemeniz gerekeceğini unutmamanız gerekiyor. Bağlandığında, Windows Admin Center sunucu tarafında 3-4 oturum oluşturur ve bu oturumlar, aracın sanal makineyle bağlantısı kesildiğinde bile sonlandırılmaz. WAC ayrıca PowerShell'in eski sürümleriyle de çalışmaz, bu nedenle en az PowerShell 5.0'a ihtiyacınız olacaktır. Bütün bunlar bizim kemer sıkma paradigmamıza aykırıdır, ancak rahatlık için para ödemeniz gerekir. Bizim durumumuzda - RAM.
Sunucu Çekirdeğini yönetmek için başka bir seçenek de, tam teşekküllü bir montajda arayüzle birlikte gelen tonlarca çöpün ortalıkta sürüklenmemesi için GUI'yi üçüncü taraf araçları kullanarak yüklemektir.
Bu durumda iki seçeneğimiz var: orijinal Explorer'ı sisteme yaymak veya Explorer++ kullanmak. İkincisine alternatif olarak herhangi bir dosya yöneticisi uygundur: Total Commander, FAR Manager, Double Commander vb. RAM tasarrufu sizin için kritikse ikincisi tercih edilir. Bir ağ klasörü oluşturup bunu konsol veya zamanlayıcı aracılığıyla başlatarak Explorer++ veya başka bir dosya yöneticisini ekleyebilirsiniz.
Tam teşekküllü bir Explorer yüklemek, kullanıcı arayüzü ile donatılmış yazılımlarla çalışma açısından bize daha fazla fırsat verecektir. Bunun için biz
Yerel Explorer paketi olan ve olmayan makinelerde sistemin bellek tüketimi bu şekilde görünür.
Burada mantıklı bir soru ortaya çıkıyor: sola veya sağa herhangi bir adım RAM tüketiminde artışa yol açıyorsa neden PowerShell, FOD, dosya yöneticileriyle tüm bu danslar yapılıyor? Windows Server 2016/2019'u indirip beyaz bir adam gibi yaşayabilmek varken neden Windows Server Core üzerinde rahat çalışmayı sağlamak için bir dizi araçla kendinizi bulaştırıp bir yandan diğer yana karıştırasınız ki?
Sunucu Çekirdeği kullanmanın birkaç nedeni vardır. Birincisi: mevcut bellek tüketimi bunun neredeyse yarısı kadar. Hatırlarsanız başlangıçta yazımızın temelini bu durum oluşturuyordu. Karşılaştırma için Windows Server 2019'un bellek tüketimini burada bulabilirsiniz; hemen yukarıdaki ekran görüntüleri ile karşılaştırın:
Ve böylece Core'da 1146 MB yerine 655 MB bellek tüketimi.
WAC'a ihtiyacınız olmadığını ve orijinal Explorer yerine Explorer++ kullanacağınızı varsayarsak, o zaman yine de neredeyse yarım hektar kazanacaksınız Windows Server çalıştıran her sanal makinede. Yalnızca bir sanal makine varsa, artış önemsizdir, ancak beş tane varsa? GUI'ye sahip olmanın önemli olduğu nokta burasıdır, özellikle de ihtiyacınız yoksa.
İkincisi, Windows Server Çekirdeği etrafındaki herhangi bir dans, Windows Server - RDP'yi çalıştırmanın ana sorunuyla ve onun güvenliğiyle (daha doğrusu, tamamen yokluğuyla) savaşmanıza yol açmayacak. Windows Core, FOD, RSAT ve WAC ile kaplanmış olsa bile hala RDP'siz bir sunucudur, yani mevcut saldırıların %95'ine karşı savunmasızdır.
Geriye kalan
Genel olarak Windows Core, herhangi bir standart Linux dağıtımından yalnızca biraz daha kalındır ancak çok daha işlevseldir. Kaynakları boşaltmanız gerekiyorsa ve konsol, WAC ve RSAT ile çalışmaya ve tam teşekküllü bir GUI yerine dosya yöneticilerini kullanmaya hazırsanız, Core'a dikkat etmeye değer. Dahası, tam donanımlı bir Windows için fazladan ödeme yapmaktan kaçınabilecek ve tasarruf ettiğiniz parayı Windows'unuzu yükseltmek için harcayabileceksiniz.
Kaynak: habr.com