บีบ Windows Server ลงบน VPS ที่ใช้พลังงานต่ำโดยใช้ Windows Server Core

บีบ Windows Server ลงบน VPS ที่ใช้พลังงานต่ำโดยใช้ Windows Server Core
เนื่องจากความตะกละของระบบ Windows สภาพแวดล้อม VPS จึงถูกครอบงำโดยการกระจาย Linux แบบน้ำหนักเบา: Mint, Colibri OS, Debian หรือ Ubuntu ซึ่งปราศจากสภาพแวดล้อมเดสก์ท็อปจำนวนมากซึ่งไม่จำเป็นสำหรับวัตถุประสงค์ของเรา อย่างที่พวกเขาพูดกัน คอนโซลเท่านั้น ฮาร์ดคอร์เท่านั้น! และในความเป็นจริงนี่ไม่ใช่การพูดเกินจริงเลย: Debian ตัวเดียวกันเริ่มต้นที่หน่วยความจำ 256 MB และหนึ่งคอร์ที่มีนาฬิกา 1 Ghz นั่นคือบน "ตอไม้" เกือบทั้งหมด เพื่อการทำงานที่สะดวกสบายคุณจะต้องมีอย่างน้อย 512 MB และโปรเซสเซอร์ที่เร็วกว่าเล็กน้อย แต่ถ้าเราบอกคุณว่าคุณสามารถทำสิ่งเดียวกันนี้บน VPS ที่ใช้ Windows ล่ะ? ทำไมคุณไม่จำเป็นต้องเปิดตัว Windows Server ขนาดใหญ่ ซึ่งต้องใช้ RAM ขนาด 1,4-XNUMX เฮกตาร์ และคอร์อย่างน้อย XNUMX-XNUMX คอร์ที่โอเวอร์คล็อกที่ XNUMX GHz เพียงใช้ Windows Server Core - กำจัด GUI และบริการบางอย่าง เราจะพูดถึงวิธีการทำเช่นนี้ในบทความ

Windows Server Core นี้เป็นใคร?

ไม่มีข้อมูลที่ชัดเจนเกี่ยวกับสิ่งที่ Windows (เซิร์ฟเวอร์) Core มีอยู่บนเว็บไซต์อย่างเป็นทางการของ Mikes หรือค่อนข้างจะสับสนไปหมดจนคุณจะไม่เข้าใจในทันที แต่การกล่าวถึงครั้งแรกนั้นย้อนกลับไปในยุคของ Windows Server 2008 โดยพื้นฐานแล้ว Windows Core เป็นเซิร์ฟเวอร์เคอร์เนลของ Windows ที่ใช้งานได้ (ทันใดนั้น!) "บางลง" ด้วยขนาดของ GUI ของตัวเองและบริการด้านข้างประมาณครึ่งหนึ่ง

คุณสมบัติหลักของ Windows Core คือฮาร์ดแวร์ที่ไม่ต้องการมากและการควบคุมคอนโซลเต็มรูปแบบผ่าน PowerShell

หากคุณไปที่เว็บไซต์ Microsoft และตรวจสอบข้อกำหนดทางเทคนิคในการเริ่ม Windows Server 2016/2019 คุณจะต้องมี RAM อย่างน้อย 2 กิ๊กและอย่างน้อยหนึ่งคอร์ที่มีความเร็วสัญญาณนาฬิกา 1,4 GHz แต่เราทุกคนเข้าใจว่าด้วยการกำหนดค่าดังกล่าว เราทำได้เพียงคาดหวังให้ระบบเริ่มทำงาน แต่ไม่ใช่การทำงานที่สะดวกสบายของระบบปฏิบัติการของเราอย่างแน่นอน ด้วยเหตุนี้ Windows Server จึงมักได้รับการจัดสรรหน่วยความจำเพิ่มขึ้นและอย่างน้อย 2 คอร์/4 เธรดจากโปรเซสเซอร์ หากพวกเขาไม่ได้จัดเตรียมเครื่องทางกายภาพราคาแพงให้กับ Xeon บางเครื่อง แทนที่จะเป็นเครื่องเสมือนราคาถูก

ในเวลาเดียวกัน แกนหลักของระบบเซิร์ฟเวอร์นั้นต้องการหน่วยความจำเพียง 512 MB และทรัพยากรตัวประมวลผลที่ GUI ใช้เพียงเพื่อนำมาแสดงบนหน้าจอและให้บริการต่างๆ มากมายทำงานต่อไป ก็สามารถใช้เพื่อสิ่งที่มีประโยชน์มากกว่าได้

นี่คือการเปรียบเทียบบริการ Windows Core ที่ได้รับการสนับสนุนทันทีและ Windows Server เต็มรูปแบบจากเว็บไซต์ Microsoft อย่างเป็นทางการ:

ใบสมัคร
คอร์เซิร์ฟเวอร์
เซิร์ฟเวอร์กับประสบการณ์เดสก์ท็อป

พร้อมรับคำสั่ง
ใช้ได้
ใช้ได้

Windows PowerShell/ไมโครซอฟต์ .NET
ใช้ได้
ใช้ได้

Perfmon.exe
ไม่สามารถใช้ได้
ใช้ได้

วินด์บีจี (GUI)
ได้รับการสนับสนุน
ใช้ได้

Resmon.exe
ไม่สามารถใช้ได้
ใช้ได้

regedit
ใช้ได้
ใช้ได้

Fsutil.exe
ใช้ได้
ใช้ได้

Disksnapshot.exe
ไม่สามารถใช้ได้
ใช้ได้

Diskpart.exe
ใช้ได้
ใช้ได้

diskmgmt.msc
ไม่สามารถใช้ได้
ใช้ได้

devmgmt.msc
ไม่สามารถใช้ได้
ใช้ได้

จัดการเซิร์ฟเวอร์
ไม่สามารถใช้ได้
ใช้ได้

mmc.exe
ไม่สามารถใช้ได้
ใช้ได้

เหตุการณ์vwr
ไม่สามารถใช้ได้
ใช้ได้

Wevtutil (แบบสอบถามเหตุการณ์)
ใช้ได้
ใช้ได้

services.msc
ไม่สามารถใช้ได้
ใช้ได้

แผงควบคุม
ไม่สามารถใช้ได้
ใช้ได้

วินโดวส์อัพเดต (GUI)
ไม่สามารถใช้ได้
ใช้ได้

windows Explorer
ไม่สามารถใช้ได้
ใช้ได้

ทาสก์บาร์
ไม่สามารถใช้ได้
ใช้ได้

การแจ้งเตือนแถบงาน
ไม่สามารถใช้ได้
ใช้ได้

taskmgr
ใช้ได้
ใช้ได้

Internet Explorer หรือ Edge
ไม่สามารถใช้ได้
ใช้ได้

ระบบช่วยเหลือในตัว
ไม่สามารถใช้ได้
ใช้ได้

เชลล์ Windows 10
ไม่สามารถใช้ได้
ใช้ได้

ของ Windows Media Player
ไม่สามารถใช้ได้
ใช้ได้

PowerShell
ใช้ได้
ใช้ได้

พาวเวอร์เชลล์ ISE
ไม่สามารถใช้ได้
ใช้ได้

IME ของ PowerShell
ใช้ได้
ใช้ได้

Mstsc.exe
ไม่สามารถใช้ได้
ใช้ได้

Remote Desktop บริการ
ใช้ได้
ใช้ได้

ผู้จัดการ Hyper-V
ไม่สามารถใช้ได้
ใช้ได้

อย่างที่คุณเห็น Windows Core ถูกตัดออกไปมากมาย บริการและกระบวนการที่เกี่ยวข้องกับ GUI ของระบบตลอดจน "ขยะ" ใด ๆ ที่ไม่จำเป็นอย่างแน่นอนบนเครื่องเสมือนคอนโซลของเราเช่น Windows Media Player ตกอยู่ภายใต้มีด

เกือบจะเหมือนกับ Linux แต่ไม่ใช่

ฉันต้องการเปรียบเทียบ Windows Server Core กับ Linux จริงๆ แต่อันที่จริงนี่ไม่ถูกต้องทั้งหมด ใช่ ระบบเหล่านี้คล้ายกันในแง่ของการใช้ทรัพยากรที่ลดลงเนื่องจากการละทิ้ง GUI และบริการด้านข้างมากมาย แต่ในแง่ของการทำงานและวิธีการประกอบบางอย่าง นี่ยังคงเป็น Windows ไม่ใช่ระบบ Unix

ตัวอย่างที่ง่ายที่สุดคือด้วยการสร้างเคอร์เนล Linux ด้วยตนเองแล้วติดตั้งแพ็คเกจและบริการ แม้แต่การกระจาย Linux ที่มีน้ำหนักเบาก็สามารถกลายเป็นสิ่งที่หนักมือและคล้ายกับมีดของ Swiss Army (ที่นี่ฉันอยากจะพูดตลกเกี่ยวกับหีบเพลงเกี่ยวกับ Python จริงๆ และแทรกรูปภาพจากซีรีส์ “ถ้าภาษาการเขียนโปรแกรมเป็นอาวุธ” แต่เราจะไม่ทำ) ใน Windows Core มีอิสระน้อยกว่ามาก เพราะเราจัดการกับผลิตภัณฑ์ของ Microsoft

Windows Server Core มาในรูปแบบสำเร็จรูป การกำหนดค่าเริ่มต้นซึ่งสามารถประมาณได้จากตารางด้านบน หากคุณต้องการบางอย่างจากรายการที่ไม่รองรับ คุณจะต้องเพิ่มองค์ประกอบที่ขาดหายไปทางออนไลน์ผ่านคอนโซล จริงอยู่ คุณไม่ควรลืมเกี่ยวกับฟีเจอร์ออนดีมานด์และความสามารถในการดาวน์โหลดส่วนประกอบเป็นไฟล์ CAB ซึ่งสามารถเพิ่มลงในแอสเซมบลีก่อนการติดตั้ง แต่สคริปต์นี้จะใช้งานไม่ได้หากคุณค้นพบแล้วในระหว่างกระบวนการว่าคุณขาดบริการที่ถูกตัดออกไป

แต่สิ่งที่ทำให้เวอร์ชัน Core แตกต่างจากเวอร์ชันเต็มคือความสามารถในการอัปเดตระบบและเพิ่มบริการโดยไม่ต้องหยุดทำงาน Windows Core รองรับแพ็คเกจการรีดร้อนโดยไม่ต้องรีบูต จากผลจากการสังเกตในทางปฏิบัติ: เครื่องที่ใช้ Windows Core จำเป็นต้องรีบูตน้อยกว่าเครื่องที่ใช้ Windows Server ถึง 6 เท่า กล่าวคือ ทุกๆ หกเดือน ไม่ใช่เดือนละครั้ง

โบนัสที่น่าพอใจสำหรับผู้ดูแลระบบคือหากระบบถูกใช้ตามที่ตั้งใจไว้ - ผ่านคอนโซลโดยไม่มี RDP - และไม่ได้เปลี่ยนเป็น Windows Server ตัวที่สอง ระบบจะมีความปลอดภัยอย่างมากเมื่อเทียบกับเวอร์ชันเต็ม ท้ายที่สุดแล้ว ช่องโหว่ Windows Server ส่วนใหญ่เกิดจาก RDP และการกระทำของผู้ใช้ที่ทำสิ่งที่ไม่ควรทำผ่าน RDP นี้ มันเหมือนกับเรื่องราวของ Henry Ford และทัศนคติของเขาที่มีต่อสีรถ: “ลูกค้าคนใดก็ตามสามารถให้รถทำสีอะไรก็ได้ที่เขาต้องการตราบใดที่มันเป็น สีดำ" เหมือนกับระบบคือผู้ใช้สามารถสื่อสารกับระบบได้ทุกทางสิ่งสำคัญคือเขาทำผ่าน ปลอบใจ.

ติดตั้งและจัดการ Windows Server 2019 Core

เราได้กล่าวไว้ก่อนหน้านี้ว่า Windows Core นั้นเป็น Windows Server โดยไม่มี wrapper GUI นั่นคือคุณสามารถใช้ Windows Server เกือบทุกเวอร์ชันเป็นเวอร์ชันหลักได้นั่นคือละทิ้ง GUI สำหรับผลิตภัณฑ์ในตระกูล Windows Server 2019 นี่คือ 3 ใน 4 รุ่นของเซิร์ฟเวอร์: โหมดหลักพร้อมใช้งานสำหรับ Windows Server 2019 Standard Edition, Windows Server 2019 Datacenter และ Hyper-V Server 2019 กล่าวคือ ไม่รวมเฉพาะ Windows Server 2019 Essentials เท่านั้น จากรายการนี้

ในกรณีนี้ คุณไม่จำเป็นต้องค้นหาแพ็คเกจการติดตั้ง Windows Server Core จริงๆ ในโปรแกรมติดตั้ง Microsoft มาตรฐาน เวอร์ชันหลักจะถูกนำเสนอตามค่าเริ่มต้น ในขณะที่เวอร์ชัน GUI ต้องเลือกด้วยตนเอง:

บีบ Windows Server ลงบน VPS ที่ใช้พลังงานต่ำโดยใช้ Windows Server Core
ในความเป็นจริง มีตัวเลือกในการจัดการระบบมากกว่า PowerShell ที่กล่าวถึงซึ่งผู้ผลิตเสนอเป็นค่าเริ่มต้น คุณสามารถจัดการเครื่องเสมือนบน Windows Server Core ได้อย่างน้อยห้าวิธี:

  • PowerShell ระยะไกล;
  • เครื่องมือการดูแลเซิร์ฟเวอร์ระยะไกล (RSAT);
  • ศูนย์การจัดการ Windows;
  • สคอนฟิก;
  • ตัวจัดการเซิร์ฟเวอร์

สามตำแหน่งแรกเป็นที่สนใจมากที่สุด: PowerShell มาตรฐาน, RSAT และ Windows Admin Center อย่างไรก็ตาม สิ่งสำคัญคือต้องเข้าใจว่าแม้ว่าเราจะได้รับประโยชน์จากเครื่องมืออย่างใดอย่างหนึ่ง แต่เราก็ได้รับข้อจำกัดที่กำหนดด้วย

เราจะไม่อธิบายความสามารถของคอนโซล PowerShell คือ PowerShell ซึ่งมีข้อดีและข้อเสียที่ชัดเจน ด้วย RSAT และ WAC ทุกอย่างจะซับซ้อนขึ้นเล็กน้อย 

WAC ช่วยให้คุณเข้าถึงการควบคุมระบบที่สำคัญ เช่น การแก้ไขรีจิสทรี และการจัดการดิสก์และอุปกรณ์ RSAT ในกรณีแรกใช้งานได้เฉพาะในโหมดดูและจะไม่อนุญาตให้คุณทำการเปลี่ยนแปลงใด ๆ และในการจัดการดิสก์และอุปกรณ์ทางกายภาพ เครื่องมือการดูแลเซิร์ฟเวอร์ระยะไกลต้องใช้ GUI ซึ่งไม่ใช่กรณีของเรา โดยทั่วไป RSAT ไม่สามารถทำงานกับไฟล์ได้ และตามด้วยการอัปเดต การติดตั้ง/การลบโปรแกรมในการแก้ไขรีจิสทรี

▍การจัดการระบบ

 

วก
สสท

การจัดการส่วนประกอบ
มี
มี

ตัวแก้ไขรีจิสทรี
มี
ไม่

การจัดการเครือข่าย
มี
มี

ผู้ชมเหตุการณ์
มี
มี

โฟลเดอร์ที่ใช้ร่วมกัน
มี
มี

การจัดการดิสก์
มี
สำหรับเซิร์ฟเวอร์ที่มี GUI เท่านั้น

ตัวกำหนดเวลางาน
มี
มี

การจัดการอุปกรณ์
มี
สำหรับเซิร์ฟเวอร์ที่มี GUI เท่านั้น

การจัดการไฟล์
มี
ไม่

การจัดการผู้ใช้
มี
มี

การจัดการกลุ่ม
มี
มี

การจัดการใบรับรอง
มี
มี

การปรับปรุง
มี
ไม่

ถอนการติดตั้งโปรแกรม
มี
ไม่

การตรวจสอบระบบ
มี
มี

ในทางกลับกัน RSAT ให้เราควบคุมบทบาทบนเครื่องได้อย่างสมบูรณ์ ในขณะที่ Windows Admin Center ไม่สามารถทำอะไรได้เลยในเรื่องนี้ นี่คือการเปรียบเทียบความสามารถของ RSAT และ WAC ในด้านนี้เพื่อความชัดเจน:

▍การจัดการบทบาท

 

วก
สสท

การป้องกันเธรดขั้นสูง
ดูตัวอย่าง
ไม่

windows Defender
ดูตัวอย่าง
มี

ตู้คอนเทนเนอร์
ดูตัวอย่าง
มี

ศูนย์บริหารเอดี
ดูตัวอย่าง
มี

โดเมน AD และความน่าเชื่อถือ
ไม่
มี

ไซต์และบริการโฆษณา
ไม่
มี

DHCP
ดูตัวอย่าง
มี

DNS
ดูตัวอย่าง
มี

ผู้จัดการดีเอฟเอส
ไม่
มี

ผู้จัดการองค์การเภสัชภัณฑ์
ไม่
มี

ผู้จัดการไอไอเอส
ไม่
มี

นั่นคือเป็นที่ชัดเจนแล้วว่าหากเราละทิ้ง GUI และ PowerShell เพื่อสนับสนุนการควบคุมอื่น ๆ เราจะไม่สามารถหลีกเลี่ยงการใช้เครื่องมือโมโนบางชนิดได้: สำหรับการดูแลระบบเต็มรูปแบบในทุกด้านเราจะต้องมีอย่างน้อย การรวมกันของ RSAT และ WAC

อย่างไรก็ตาม คุณต้องจำไว้ว่าคุณจะต้องจ่าย RAM 150-180 เมกะไบต์เพื่อใช้ WAC เมื่อเชื่อมต่อแล้ว Windows Admin Center จะสร้างเซสชัน 3-4 เซสชันบนฝั่งเซิร์ฟเวอร์ ซึ่งจะไม่ถูกหยุดทำงานแม้ว่าเครื่องมือจะตัดการเชื่อมต่อจากเครื่องเสมือนก็ตาม WAC ยังใช้งานไม่ได้กับ PowerShell เวอร์ชันเก่า ดังนั้นคุณจะต้องมี PowerShell 5.0 เป็นอย่างน้อย ทั้งหมดนี้ขัดแย้งกับกระบวนทัศน์เรื่องความเข้มงวดของเรา แต่คุณต้องจ่ายเพื่อความสะดวกสบาย ในกรณีของเรา - RAM

อีกทางเลือกหนึ่งสำหรับการจัดการ Server Core คือการติดตั้ง GUI โดยใช้เครื่องมือของบุคคลที่สามเพื่อไม่ให้ลากขยะจำนวนมากที่มาพร้อมกับอินเทอร์เฟซในแอสเซมบลีเต็มรูปแบบ

ในกรณีนี้ เรามีสองตัวเลือก: เผยแพร่ Explorer ดั้งเดิมบนระบบ หรือใช้ Explorer++ อีกทางเลือกหนึ่งคือตัวจัดการไฟล์ใด ๆ ที่เหมาะสม: Total Commander, FAR Manager, Double Commander และอื่น ๆ อย่างหลังจะดีกว่าหากการบันทึก RAM เป็นสิ่งสำคัญสำหรับคุณ คุณสามารถเพิ่ม Explorer++ หรือตัวจัดการไฟล์อื่น ๆ ได้โดยการสร้างโฟลเดอร์เครือข่ายและเปิดใช้งานผ่านคอนโซลหรือตัวกำหนดเวลา

การติดตั้ง Explorer ที่มีคุณสมบัติครบถ้วนจะทำให้เรามีโอกาสมากขึ้นในการทำงานกับซอฟต์แวร์ที่ติดตั้ง UI สำหรับสิ่งนี้เรา จะต้องติดต่อ ไปยังคุณสมบัติความเข้ากันได้ของแอปเซิร์ฟเวอร์หลักตามความต้องการ (FOD) ซึ่งจะส่งคืน MMC, Eventvwr, PerfMon, Resmon, Explorer.exe และแม้แต่ Powershell ISE ให้กับระบบ อย่างไรก็ตาม เราจะต้องจ่ายเงินสำหรับสิ่งนี้ เช่นเดียวกับในกรณีของ WAC: เราจะสูญเสีย RAM ประมาณ 150-200 เมกะไบต์อย่างถาวร ซึ่งจะถูก explorer.exe และบริการอื่น ๆ กลืนกินอย่างไร้ความปราณี แม้ว่าจะไม่มีผู้ใช้งานอยู่ในเครื่องก็ตาม

บีบ Windows Server ลงบน VPS ที่ใช้พลังงานต่ำโดยใช้ Windows Server Core
บีบ Windows Server ลงบน VPS ที่ใช้พลังงานต่ำโดยใช้ Windows Server Core
นี่คือลักษณะการใช้หน่วยความจำของระบบบนเครื่องที่มีและไม่มีแพ็คเกจ Explorer ดั้งเดิม

คำถามเชิงตรรกะเกิดขึ้นที่นี่: เหตุใดการเต้นรำด้วย PowerShell, FOD, ตัวจัดการไฟล์หากขั้นตอนใดทางซ้ายหรือขวาทำให้การใช้ RAM เพิ่มขึ้น เหตุใดจึงต้องละเลงตัวเองด้วยเครื่องมือมากมายและสับเปลี่ยนจากด้านหนึ่งไปอีกด้านเพื่อให้แน่ใจว่าทำงานได้อย่างสะดวกสบายบน Windows Server Core ในเมื่อคุณสามารถดาวน์โหลด Windows Server 2016/2019 และใช้ชีวิตเหมือนคนผิวขาวได้

มีเหตุผลหลายประการในการใช้ Server Core ประการแรก: การใช้หน่วยความจำปัจจุบันเกือบครึ่งหนึ่งของนั้น หากคุณจำได้ว่าเงื่อนไขนี้เป็นพื้นฐานของบทความของเราตั้งแต่เริ่มต้น สำหรับการเปรียบเทียบ นี่คือปริมาณการใช้หน่วยความจำของ Windows Server 2019 เปรียบเทียบกับภาพหน้าจอด้านบน:

บีบ Windows Server ลงบน VPS ที่ใช้พลังงานต่ำโดยใช้ Windows Server Core
ดังนั้นการใช้หน่วยความจำ 1146 MB แทนที่จะเป็น 655 MB บน Core 

สมมติว่าคุณไม่ต้องการ WAC และจะใช้ Explorer++ แทน Explorer ดั้งเดิม แสดงว่าคุณ คุณจะยังคงชนะเกือบครึ่งเฮกตาร์ บนเครื่องเสมือนแต่ละเครื่องที่ใช้ Windows Server หากมีเครื่องเสมือนเพียงเครื่องเดียวการเพิ่มขึ้นก็ไม่มีนัยสำคัญ แต่ถ้ามีห้าเครื่องล่ะ? นี่คือจุดที่การมี GUI มีความสำคัญ โดยเฉพาะอย่างยิ่งหากคุณไม่ต้องการมัน 

ประการที่สอง การเต้นรำรอบ ๆ Windows Server Core จะไม่ทำให้คุณต่อสู้กับปัญหาหลักของการใช้งาน Windows Server - RDP และความปลอดภัย (แม่นยำยิ่งขึ้นคือไม่มีเลย) Windows Core แม้จะเคลือบด้วย FOD, RSAT และ WAC ยังคงเป็นเซิร์ฟเวอร์ที่ไม่มี RDP นั่นคือไม่ไวต่อการโจมตี 95% ที่มีอยู่

ที่เหลืออยู่

โดยทั่วไป Windows Core จะอ้วนกว่าการกระจาย Linux เล็กน้อยเพียงเล็กน้อยเท่านั้น แต่ใช้งานได้ดีกว่ามาก หากคุณต้องการเพิ่มทรัพยากรและพร้อมที่จะทำงานกับคอนโซล WAC และ RSAT และใช้ตัวจัดการไฟล์แทน GUI ที่มีคุณสมบัติครบถ้วน Core ก็คุ้มค่าที่จะให้ความสนใจ ยิ่งไปกว่านั้น คุณจะสามารถหลีกเลี่ยงการจ่ายเงินเพิ่มสำหรับ Windows ที่มีคุณสมบัติครบถ้วน และใช้เงินที่ประหยัดไปกับการอัพเกรดของคุณ VPSเพิ่มที่นั่นเช่น RAM เพื่อความสะดวก เราได้เพิ่ม Windows Server Core ให้กับเรา ตลาด.

บีบ Windows Server ลงบน VPS ที่ใช้พลังงานต่ำโดยใช้ Windows Server Core

ที่มา: will.com

เพิ่มความคิดเห็น