วันอังคารที่ 24 มกราคม พ.ศ. 2555

มาทำความรู้จักกับ Dynamic Memory กับ RemoteFX

มาทำความรู้จักกับ Dynamic Memory กับ RemoteFX

บทความนี้เป็นเรื่องราวเกี่ยวกับฟีเจอร์ใหม่ ๆ ที่มาพร้อมกับ Windows Server 2008 R2 Service Pack 1 ครับ โดยฟีเจอร์ที่ผมจะนำเสนอให้กับท่านผู้อ่านได้ทราบกันนั้น ต้องบอกว่าเป็นฟีเจอร์ที่น่าสนใจมากครับโดยเฉพาะท่านผู้อ่านที่กำลังใช้งาน Hyper-V อยู่ เพราะฟีเจอร์ที่ผมได้นำมาเสนอในบทความนี้จะใช้และทำงานร่วมกับ Hyper-V ครับ และที่ผ่านมาผมได้มีโอกาสได้ทำการติดตั้งและใช้งานให้กับลูกค้าไปพอสมควรครับ และได้มีโอกาสบรรยายถึงฟีเจอร์เหล่านี้ให้กับลูกศิษย์ของผมไปเช่นกัน  และเพื่อไม่ให้เป็นการเสียเวลาเรามาเริ่มกันที่ฟีเจอร์แรกเลยครับ

Dynamic Memory
สำหรับฟีเจอร์นี้ต้องบอกว่าเป็นฟีเจอร์ที่เข้ามาเพิ่มขีดความสามารถของการทำงานใน Windows Server 2008 R2    Hyper-V  ให้มีความยืดหยุ่นและเพิ่มประสิทธิภาพในการทำงานมากขึ้นครับ  และจากการที่ผมได้พบปะพูดคุยกับลูกค้าที่ใช้งาน Hyper-V แล้วต่างก็บอกว่าตรงกันว่าอยากให้เพิ่มฟีเจอร์ดังกล่าวเข้าไปใน Hyper-V เสียที  และมาถึงตอนนี้ต้องบอกว่าฝันเป็นจริงแล้วครับสำหรับเรื่องของการจัดการ Memory หรือ Ram ใน Hyper-V ที่มีความยืดหยุ่นมากขึ้นกว่าเดิม  สำหรับท่านที่ใช้งานหรือจัดการ Hyper-V อยู่แล้วจะทราบว่า เมื่อเราทำการสร้าง Virtual Machine หรือผมขอเรียกสั้น ๆ ว่า VM นะครับ เราจะต้องทำการกำหนดค่าหลายๆ อย่างครับ  แต่โดยหลัก ๆ ก็จะเป็นการกำหนด Processor, Network และ Memory ให้กับ VM ตัวนั้น ๆ   ดังรูป
และโดยเฉพาะ Memory ที่เราได้กำหนดให้กับ VM นั้นจะเป็นการกำหนดแบบตายตัวหรือที่เราเรียกว่า Static ครับ  ดังรูป
เมื่อเราทำการเปิด VM ตัวนั้นขึ้นมาใช้งาน Hyper-V ก็จะทำการจอง Memory ให้กับ VM ตัวดังกล่าวตามที่กำหนดเอาไว้ เช่น ถ้าผมกำหนดให้ VM ตัวนั้นมี Memory เท่ากับ 1 GB   Windows Server 2008 หรือ 2008 R2  จะทำการจอง Memory ตามนั้นให้กับ VM ของเราครับ  และจะไม่มีการเปลี่ยนแปลงจนกว่าเราจะทำการปิด VM   และในกรณีที่เราจะทำการปรับเปลี่ยน Memory ใน VM เราสามารถทำได้ครับ  แต่จะต้องทำการปิด VM ตัวนั้นเสียก่อนแล้วจึงค่อยทำการปรับเปลี่ยน Memory ให้กับ VM ตัวนั้น ๆ ตามความต้องการ   ในการทำงานจริงนั้นการที่กำหนด Memory ในรูปแบบที่เป็น Static อาจจะไม่ค่อยมีความยืดหยุ่นมากเท่าที่ควร เนี่องด้วยสาเหตุข้างต้น  แต่ในความเป็นจริงแล้ว Memory ที่เราได้กำหนดให้กับแต่ละ Virtual Machine ไปนั้น ส่วนใหญ่จะใช้ไม่ค่อยได้ใช้ทั้งหมดครับ  จึงทำให้การใช้งาน Memory ใน Hyper-V ไม่ค่อยคุ้มค่ามากซะเท่าไรนัก    และด้วยเหตุผลข้างต้นจึงทำให้เป็นที่มาของฟีเจอร์ที่ชื่อว่า Dynamic Memory ครับ  โดยทาง Microsoft ได้ให้มาใน Windows Server 2008 R2 Service Pack 1 ครับ  โดย  Dynamic Memory จะทำให้เราสามารถใช้งาน Memory ได้อย่างมีประสิทธิภาพมากขึ้น โดยการที่ Hyper-V จะจัดการ Memory ราวกับเป็นแชร์รีสอรท์ที่สามารถจะถูกจัดสรรให้กับ Virtual Machines ต่างๆ  ได้โดยอัติโนมัติ ตามความต้องการของ Virtual Machines ในแต่ละเวลา  ซึ่งจากเดิมที่เราทำการกำหนด Memory เป็นแบบตายตัวหรือ Static  ณ ตอนนี้ด้วยความสามารถของ Dynamic Memory เราสามารถกำหนดเป็นช่วงของปริมาณ Memory ที่จะให้กับ Virtual Machines ได้  ดังนั้นการที่เราจะใช้งาน Dynamic Memory ได้นั้นมีสิ่งที่เราจะต้องเตรียมพร้อมเพื่อให้รองรับกับฟีเจอร์ดังกล่าว คือ เราจะต้องทำการติดตั้ง Windows Server 2008 R2 Service Pack 1 บนเครื่องที่รัน Hyper-V จะต้องเป็น
- Windows Server 2008 R2 ที่มี Hyper-V Server Role ติดตั้งอยู่
- Microsoft Hyper-V Server 2008 R2
สำหรับเครื่องที่เป็น Virtual Machine หรือ Guest Machine ที่สามารถใช้หรือทำงานร่วมกับ Dynamic Memory มีดังต่อไปนี้
- Windows Server 2008 R2 Standard Edition SP1
- Windows Server 2008 R2 Enterprise Edition SP1
- Windows Server 2008 R2 Datacenter Edition SP1
- Windows Server 2008 R2 Web Edition SP1
- Windows Server 2008 Standard Edition SP2
- Windows Server 2008 Enterprise Edition SP2
- Windows Server 2008 Datacenter Edition SP2
- Windows Server 2008 Web Edition SP2
- Windows Server 2003 R2 Standard Edition SP2 or Higher
- Window Server 2003 R2 Enterprise Edition SP2 or Higher
- Windows Server 2003 R2 Datacenter Edition SP2 or Higher
- Windows Server 2003 R2 Web Edition SP2 or Higher
- Windows Server 2003 R2 Standard Edition SP2 or Higher
- Windows Server 2003 R2 Enterprise Edition SP2 or Higher
- Windows Server 2003 Datacenter Edition SP2 or Higher
- Windows Server 2003 Web Edition SP2 or Higher
หมายเหตุ  Dynamic Memory สามารถทำงานได้กับ x86 และ x64 ของ Windows Server 2003, Windows Server 2003 R2 และ Windows Server 2008
 และสำหรับ Windows Client Operating Systems   ทั้ง x86 และ x64 ที่สนับสนุนการทำงานของ Dynamic Memory มีดังต่อไปนี้
- Windows 7 Enterprise Edition
- Windows 7 Ultimate Edition
- Windows Vista Enterprise Edition SP2
- Windows Vista Ultimate Edition SP2
จากนั้นในส่วนต่อมาจะเป็นการเตรียมพร้อมการใช้งานและรวมถึงการกำหนดค่าต่างๆ สำหรับ Dynamic Memory โดยมีขั้นตอนคร่าว ๆ ดังต่อไปนี้
1. การอัพเกรท Integration Components  ก่อนที่เราจะใช้งาน Dynamic Memory ใน Virtual Machine ได้, สิ่งแรกที่เราจะต้องทำคือ การอัพเกรท Integration Components ที่ติดตั้งใน Guest Operating System (OS ที่ได้ติดตั้งใน Virtual Machine)   ถ้า Guest Operating System เป็น Windows 7 หรือ Windows Server 2008 R2 ที่สนับสนุนการทำงานกับ Dynamic Memory มี 2 วิธีให้เลือกครับ คือ
 - ทำการติดตั้ง Service Pack 1 สำหรับ Windows 7 หรือ Windows Server 2008 R2 ลงไปใน Guest Operating  System
- ทำการเลือก Action เมนูใน Virtual Machine Connection tool จากนั้นเลือก Insert Integration Services Setup Disk  จาก Virtual Machine ที่ต้องการ ดังรูป
2. การเอ็นเอเบิ้ล Dynamic Memory สำหรับ Virtual Machines   สำหรับการเอ็นเอเบิ้ล Dynamic Memory ใน Virtual Machine, เริ่มแรกเราจะต้องทำการปิด หรือ Shut Down ตัว Virtual Machines เสียก่อนครับ จากนั้นไปที่ Settings ของ Virtual Machine ตัวที่ได้ทำการ Shut Down ไปแล้วก่อนหน้านี้ครับ จากนั้นให้ไปที่ Memory ท่านผู้อ่านจะเห็นหน้าตาของค่า Settings ในส่วนของ Virtual Machine ดังรูปด้านล่าง ซึ่งถ้าท่านผู้อ่านสังเกตจะมีความแตกต่างไปจากเดิมครับ
จากรูปด้านบนท่านผู้อ่านจะเห็นว่าในการกำหนดค่า Memory ให้กับ Virtual Machine เราสามารถเลือกได้ครับว่าจะกำหนดเป็นแบบคงที่ไปเลยซึ่งก็คือ Static หรือจะเป็นกำหนดแบบ Dynamic ก็สามารถทำได้ครับ  สิ่งที่ผมอยากจะอธิบายเพิ่มเติมสำหรับการกำหนด Memory เป็นแบบ Dynamic คือ การกำหนดค่าในส่วนของ Startup RAM และ Maximum RAM ครับ   สำหรับค่าที่เรากำหนดลงไปใน Startup RAM จะเป็นค่าเริ่มของ Memory ที่จะให้กับ Virtual Machine ตัวนั้นๆ ครับ และ Memory ที่ถูกจัดสรรให้ไปจะต้องเป็นค่านี้ไม่สามารถต่ำกว่านี้ได้ครับ  ค่าดีฟลอต์สำหรับ Startup RAM คือ 512 MB ครับ  ตารางด้านล่างจะเป็นค่าของ Startup RAM ที่ทางไมโครซอฟท์ แนะนำครับ
สำหรับ Maximum RAM คือ ค่าของ Memory ที่ถูกจัดสรรหรือกำหนดให้กับ Virtual Machine ว่ามากที่สุดคือเท่าไร และไม่มีทางที่จะสูงเกินกว่านี้ครับ ค่าดีฟลอต์คือ 65,536 MB หรือ 64 GB ครับ   เพราฉะนั้นการกำหนดค่าของ Startup และ Maximum RAM ขึ้นอยู่กับความต้องการของแต่ละองค์กรครับ 
3. การกำหนดค่าของ Memory Buffer  คือค่าที่กำหนด (เป็นเปอร์เซนต์) ของ Memory ซึ่งค่านี้จะเป็นเท่าไรจะขึ้นอยู่กับ Workload ของแต่ละ Virtual Machine   โดย Memory Buffer คือ Memory  พิเศษที่ถูกเพิ่มเติมเข้าไปเพื่อให้การทำงานของ Virtual Machine ให้มีทำงานได้อย่างมีประสิทธิภาพ หรือเรียกว่า File System Cache  โดยสามารถกำหนดเปอร์เซนต์ของ Memory Buffer ได้ตั้งแต่ 5%-95% ครับ  สำหรับค่าดีฟอลต์คือ 20%   ตัวอย่าง เช่น ถ้าเรามีการกำหนด Memory ให้กับ Virtual Machine เป็น 1200 MB และกำหนดค่าของ Memory Buffer เป็น 20%  ตัวของ Hyper-V จะทำการคำนวณและพยายามจะจัดสรร Memory ให้เพิ่มเติม โดยมีวิธีการดังนี้  20% / (100%-20%) x 1200 MB = 300 MB  เพราะฉะนั้น Hyper-V จะพยายามทำการจัดสรร  Memory พิเศษให้อีก 300 MB และรวมทั้งหมดเป็น 1500 MB เป็นต้น ดังรูป

4. การกำหนดค่า Memory Weight  คือ การกำหนดความสำคัญของ Virtual Machine ในการจัดสรร Memory หรือ RAM   ดังนั้นถ้า Virtual Machine ตัวใดที่มีการกำหนดค่าของ Memory Weight ไว้สูง จะเป็นการแสดงว่า Virtual Machine ตัวดังกล่าวมีความเป็นไปได้ที่ต้องการ Memory ในการทำงานจริงหรือสูงกว่า Virtual Machine ตัวอื่นๆ ที่อยู่ใน Hyper-V Host ตัวเดียวกัน ดังรูป

และทั้งหมดนี้คือเรื่องราวของ Dynamic Memory ซึ่งเป็นฟีเจอร์ใหม่ที่มาพร้อมกับ Windows Server 2008 R2 Service Pack 1  ผมอยากให้ท่านผู้อ่านลองไปทำการดาวน์โหลดมาใช้งานกันดูครับ  โอเคครับสำหรับฟีเจอร์ต่อไปที่ผมจะหยิบเอามานำเสนอให้กับท่านผู้อ่านทุกท่านคือ RemoteFX ครับ 

RemoteFX
เป็นฟีเจอร์ที่ทำให้เราสามารถใช้งานยูสเซอร์อินเตอร์เฟสและกราฟฟิคได้อย่างมีประสิทธิภาพในมากขึ้นกว่าเดิมในกรณีที่เราติดต่อผ่านทาง Remote Desktop Service (RDS) และเกิดเป็น Session ของการรีโมทเข้าไปเพื่อทำงานต่างๆ ครับ แต่สิ่งที่ขาดหายไปคือพวกยูสเซอร์อินเตอร์เฟสที่เป็นกราฟฟิคและฟีเจอร์ต่างๆ กราฟฟิคพีเจอร์ต่าง ๆ ไม่ว่าจะเป็น Windows Aero, High-Synchronized Audio, Animation ประเภท Silverlight และกราฟฟิคแอพพิเคชั่นแบบสามมิติ  จะไม่สามารถใช้ได้ครับ  แต่ด้วยความสามารถของ RemoteFX ทำให้ผู้ใช้งานสามารถมียูสเซอร์อินเตอร์เฟสแบบเดียวกันที่งานปรกติ และยังสามารถใช้ฟีเจอร์ต่างๆ ข้างต้นได้ แม้ว่าเราจะใช้งานผ่านทาง RDS ครับ  และจะมีประโยชน์มากสำหรับองค์กรที่กำลังวางแผนใช้งาน VDI ครับ  ดังนั้นมาดูกันต่อครับว่าเราจะต้องเตรียมอะไรกันบ้างสำหรับการใช้งาน RemoteFX
เตรียมพร้อมและความต้องการของ RemoteFX
- ทำการติดตั้ง Windows Server 2008 R2 Service Pack 1 ที่ Hyper-V
- ทำการเปิดใช้งาน SLAT ที่ CPU (Intel EPT หรือ AMD RVI)
- Graphic Processing Unit (GPU) ต้องสนับสนุนการทำงานกับ DirectX  9c หรือ 10
- RDP 7.1
สำหรับเรื่องของการติดตั้ง RemoteFX ก็ไม่ยุ่งยากอะไรมากมายครับ  สามารถทำได้โดยการติดตั้ง Roles เข้าไปใน Windows Server 2008 R2 ซึ่งจะเหมือนกับการเพิ่ม Roles อื่นๆ ครับ  ดังรูป

จากนั้นให้เลือกค่าต่างๆ  ดังรูปด้านล่างครับ

เมื่อเสร็จเรียบร้อยแล้ว  เราสามารถ Add  Hardware ที่เป็น Video Adapter ที่เป็น RemoteFX  3D Video Adapterให้กับ Virtual Machine ได้ ดังรูป
ผมมีวิดีโอที่อยู่ใน YouTube ซึ่งเป็นการแสดงถึงการทำงานของ RemoteFX  ตามลิ๊งค์ดังต่อไปนี้ครับ http://www.youtube.com/watch?v=H4LGv1lQOB8   และ  http://www.youtube.com/watch?v=46bi-j_KzCQ    และทั้งหมดนี้คือฟีเจอร์ใหม่ที่มาพร้อมกับ Windows Server 2008 R2 Service Pack 1 ครับ ผมเชื่อว่าฟีเจอร์เหล่านี้จะถูกใจท่านผู้อ่านหลายๆ ท่านครับ  และอยากให้ไปดาวน์โหลดมาติดตั้งและใช้งานกันดูครับ  เหมือนเช่นเคยครับหากท่านผู้อ่านท่านใดมีข้อสงสัยสามารถเมล์มาสอบ-ถามได้ครับ  แล้วพบกันใหม่ครับผม

1 ความคิดเห็น:

  1. ขออนุญาตฝากลิงค์นะคะ
    ขั้นตอนง่ายๆ กับการสมัครเล่นบาคาร่าออนไลน์
    เล่นคาสิโนบนมือถือ เล่นผ่าน App บน iPad iPhone และ มือถือ ระบบ Android ที่นี่เลยค่ะ
    https://www.111player.com

    ตอบลบ