ค้นหาเว็บไซต์

จะสร้าง RAM Disk บน Windows Server ได้อย่างไร?


ดิสก์ RAM คือดิสก์เสมือนที่สร้างขึ้นในพื้นที่ว่างของหน่วยความจำ (RAM) ที่ OS มองว่าเป็นดิสก์จริงแยกต่างหาก เนื่องจากดิสก์ RAM ถูกจัดเก็บไว้ใน RAM ที่รวดเร็ว การดำเนินการอ่าน/เขียนทั้งหมดบนดิสก์นี้จึงดำเนินการเกือบจะทันที แม้จะเร็วกว่าเมื่อใช้ SSD (ความเร็วในการถ่ายโอนข้อมูลของ SSD ที่มีประสิทธิภาพมากที่สุดคือประมาณ 560 MB/วินาที ในขณะที่ หน่วยความจำ DDR4 - 12,000-25,000 MB/s.)

ขอแนะนำให้ใช้ดิสก์ RAM ในระบบที่มีหน่วยความจำว่างมากเกินไป คุณสามารถใช้ดิสก์ RAM เพื่อวางแคชหรือไฟล์ชั่วคราวของแอพ/ระบบ ฐานข้อมูล SQL ชั่วคราว ดังนั้นคุณจึงสามารถเพิ่มประสิทธิภาพแอปพลิเคชันและฐานข้อมูลได้อย่างมาก

ในระบบปฏิบัติการ Windows ไม่มีเครื่องมือแบบบูรณาการในการสร้างดิสก์ RAM ดังนั้นคุณต้องใช้ซอฟต์แวร์ของบุคคลที่สามในการดำเนินการ (AMD RAMDisk, ImDisk, PassMark OSFMount, StarWind RAM Disk เป็นต้น)

อย่างไรก็ตาม คุณสามารถสร้างดิสก์ RAM ใน Windows Server โดยไม่ต้องใช้แอปของบริษัทอื่น ในการดำเนินการนี้ คุณสามารถใช้ไดรเวอร์ iSCSI

ขั้นแรก ติดตั้งคอมโพเนนต์ iSCSI Target Server (เป็นส่วนหนึ่งของบทบาท File and Storage Services)

หากคุณเปิดใช้งาน Windows Firewall คุณต้องอนุญาตการรับส่งข้อมูลบริการ iSCSI

หากต้องการอนุญาตให้รับส่งข้อมูลไปยังอินเทอร์เฟซย้อนกลับสำหรับ iSCSI ให้เปลี่ยนค่าของพารามิเตอร์ DWORD AllowLoopBack เป็น 1 ใน HKLM\Software\Microsoft\iSCSI Target > คีย์รีจิสทรี คุณสามารถเปลี่ยนพารามิเตอร์รีจิสทรีจาก PowerShell โดยใช้คำสั่งเดียว:

Set-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\iSCSI Target' -Name AllowLoopBack -Value 1

ตอนนี้เปิดคอนโซล PowerShell และสร้างดิสก์ RAM เสมือน 5 GB โดยใช้คำสั่งนี้:

New-IscsiVirtualDisk -Path "ramdisk:testRAM.vhdx" -Size 5GB

ตอนนี้คุณต้องสร้างเป้าหมาย iSCSI ที่ชี้ไปยังที่อยู่ IP ของเซิร์ฟเวอร์ของคุณ (ไม่ใช่ localhost!):

New-IscsiServerTarget -TargetName targetRAMDisk -InitiatorIds @("IPAddress:10.1.1.200")

เชื่อมต่อดิสก์ RAM กับเป้าหมาย iSCSI ที่สร้างขึ้น:

Add-IscsiVirtualDiskTargetMapping -TargetName targetRAMDisk -DevicePath "ramdisk:testRAM.vhdx"

รันคอนโซลการจัดการ iSCSI Initiator ผ่าน Server Manager

ระบุที่อยู่ IP ของเซิร์ฟเวอร์ของคุณในแท็บ เป้าหมาย แล้วคลิก เชื่อมต่อด่วน เพื่อเพิ่มเป้าหมาย iSCSI ของคุณ

คุณสามารถเชื่อมต่อ iSCSI Target ด้วยคำสั่ง:

Get-IscsiTarget | Connect-IscsiTarget

เปิดคอนโซลการจัดการดิสก์และตรวจสอบให้แน่ใจว่ามีดิสก์ใหม่ 5 GB ปรากฏขึ้นที่นั่น นี่คือดิสก์ RAM ที่เราสร้างขึ้น เริ่มต้นดิสก์ สร้างพาร์ติชัน และฟอร์แมต กำหนดอักษรดิสก์ให้กับมัน

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

Get-Disk | Where partitionstyle -eq 'raw' | Initialize-Disk -PartitionStyle MBR -PassThru | New-Partition -AssignDriveLetter -UseMaximumSize | Format-Volume -FileSystem NTFS -NewFileSystemLabel "disk2" -Confirm:$false

ตอนนี้คุณสามารถย้ายไฟล์แอพไปยังดิสก์ RAM และกำหนดค่าซอฟต์แวร์ของคุณใหม่เพื่อใช้งานได้

หลังจากรีบูตเซิร์ฟเวอร์ ดิสก์ RAM จะถูกลบออกพร้อมกับเนื้อหาทั้งหมด และคุณจะต้องสร้างใหม่อีกครั้ง

โปรแกรมของบริษัทอื่นบางโปรแกรมที่สร้างดิสก์ RAM อนุญาตให้บันทึกข้อมูลดิสก์ RAM เป็นไฟล์ในฮาร์ดไดรฟ์ของคุณ เมื่อระบบรีสตาร์ท ข้อมูลจะถูกแยกและย้ายไปยังดิสก์ RAM

หากต้องการถอดดิสก์ RAM ออก ให้ใช้คำสั่งต่อไปนี้:

Remove-IscsiVirtualDiskTargetMapping -TargetName targetRAMDisk -DevicePath "ramdisk:testRAM.vhdx"
Remove-IscsiServerTarget -TargetName targetRAMDisk
Remove-IscsiVirtualDisk -Path "ramdisk:testRAM.vhdx"

บทความที่เกี่ยวข้อง