Maystyle :
Admin : New post
Guestbook
Local
media
Catergories
Recent Articles
Recent Comments
Recent Trackbacks
Calendar
Tag
Archive
Link
Search
 
해당되는 게시물 8건
  Windows Server 2012 R2 기반의 VDI 구축시에는 꼭 확인하세요. 
작성일시 : 2014.02.27 21:53 | 분류 : Windows Server/Virtualization

꼭 활성화 해 사용해야 하는 설정 몇 가지

0. 사용하는 RDP 버전에 맞는 RDP Client 모듈을 이용합니다.

1. 먼저 아래의 두 개 정책은 모두 사용하도록 해주세요.

Computer Configuration -> Administrative Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Session Host –> Connections
clip_image002

clip_image002[5]

clip_image002[7]

2. 다음 정책은 TEST 진행 후 결과에 따라 설정해 주세요.

Computer Configuration > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Remote Session Environment > Configure compression for RemoteFX data

clip_image001

3. RDGW에서 UDP 3391이 오픈되어 있는지 꼭 확인 하세요.

clip_image002[9]

4. Windows 7 VM으로 구현 하는 경우 아래 정책 활성화는 필수 입니다.

Computer Configuration\Administrative Templates\Windows Components\Remote Desktop Services\Remote Desktop Session Host\Remote Session Environment\Enable Remote Desktop Protocol 8.0 또는 8.1

5. 필요에 따라 Windows 7 기반의 VDI의 경우에는 암호화 수준을 조정 할 필요가 있습니다.
아래의 정책을 활성화 하고 암호화 수준을 Low 즉 낮음으로 변경 합니다.
image

주의 : 이 경우 Client에서 보내는 모든 신호는 암호화가 되지만 서버의 경우에는 암호화 하지 않습니다.
다만 아시는 바와 같이 서버에서 보내는 트래픽은 RDP 자체가 압축되어 전송 되기 때문에 패킷을 직접 보더라도 쉽게 내용을 확인하기가 어렵습니다.

6. CRL 체크 Timeout을 1초로 줄입니다.
(절대 권고는 아닙니다.)
(해당 설정은 VM이 아닌 접속하는 Device 레벨에서 진행 하게 됩니다.)

중요 : RDS 인프라가 인터넷이 막혀 있는 경우 RDS 인프라에 해당하는 GW, CB등에도 동일 설정을 해주셔야 합니다.

CRL Check는 인증서 사용할 때 필수 입니다.
하지만 고객에 따라서 때로는 CRL을 확인 할 수 있는 방법을 URL, LDAP, 또는 파일 쉐어로 오픈을 하셔야하는데, 여희치 않는 경우가 있습니다.

이때에는 15초라는 Default Timeout 기간 동일 해당 위치에 대한 접근을 시도하게 되고 이는 초기 접속에 대한 성능 이슈를 야기 합니다. 그렇기 때문에 때대로 이 Timeout 시간을 1초로 조정해 줄 필요가 있습니다.

image

image

또한 필요에 따라 “HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\SystemCertificates\AuthRoot DisableRootAutoUpdate” 의 값을 1 즉 Disable 해야 해 줄 필요가 있는데 이 경우는 VDI에 접속하는 머신이 인터넷이 않될 경우 생각해 보실 수 있습니다.

Name   Password   Home   Secret   Submit
  VMQ와 TCP Chimney Offload 
작성일시 : 2012.01.27 12:45 | 분류 : Windows Server/Virtualization

Hyper-v 의 Network 호환성 기능의 지원 여부에 대해서 정리해야 할 필요가 있을꺼 같아서 조금 언급해 봅니다.

Version : Hyper-v 2008 R2

1. TCP Chimney Offload 와 VMQ : 지원 가능합니다. 다만 VMQ 활성화가 먼저 진행 된 이후 TCP Chimney Offload가 활성화 되어야 합니다.
2. RSS와 VMQ : 지원 하지 않습니다.
Name   Password   Home   Secret   Submit
  TLB에 대한 후속 이야기 
작성일시 : 2011.09.08 18:10 | 분류 : Windows Server/Virtualization

이전에 이야기했던 TLB Flushing으로 인한 성능 저하 문제에 대해 확인해봤는데, 아래와 같습니다.
이전 글 http://maystyle.tistory.com/556

처음에는 TLB가 무조건 Flushing이 되서 성능 이슈가 생겼다는거죠.
그러다 보니 이에 대한 고려가 필요하게 된거구요.

clip_image001

그래서 VPID 값을 주고 해당 VPID가 Active 라면 녀석의 TLB는 Flushing 하지 않도록 고쳤다는 것입니다.
결론은 Active 상태의 VPID 값이 사용중인 TLB는 Flusing 시키지 않는 다는 거죠

clip_image002

그리고 ?? 이녀석과 SLAT와 같이 봐야하냐면 SLAT와 같이 활성화 되면 더욱 성능에 도움이 되기 때문 입니다.

clip_image003

Name   Password   Home   Secret   Submit

기존의 TLB Flushing과 성능에 대한 이슈는 알려진것과 같습니다.
“High performance graphic driver 를 이용하는 경우 성능이슈가 발생 할 수 있다” http://support.microsoft.com/kb/961661

참고) TLB는 CPU에서 빠른 메모리 접근을 하기 위하여 사용하는 Virtual Address와 Physical Address를 mapping한 Table 입니다.

하지만 Nehalem CPU의 경우 VPID(Virtual Processor ID) 를 통해 TLB Cache에 대한 Overhead를 꽤 줄인것 같습니다. (내용은 아래와 같음)
Remote FX와 TLB 성능에 대하여 아래와 같이 추론해 봅니다.

아래 내용이 정확한지는 무책임하게도 저도 모릅니다.

기존에는 “Hyper-v 를 이용하는 경우 context switching 이 발생하면 TLB 역시 Flushing 되며 이를 사용하는 경우 성능이슈가 나타난다.” 였습니다.
하지만 Nehalem 이후의 CPU의 경우 이러한 TLB에 Virtual Processor 에 대한 ID를 달수 있고, 이를 통해 Merom 대비 약 40%의 성능 향상이 있었다. 그리고 이를 사용하기 위해서는 SLAT 기능은 Enable 해야 한다???

SLAP는 GVM > GPA > SPA 로의 변환을 Hyper-V 가 담당 했었는데, 이걸 그냥 새로운 CPU에서 Cover 하고 있는 기능입니다.

Back Data
출처 : 어코딩투 재프~ (울회사 가상화팀)
For virtualizing desktops using RemoteFX, SLAT hardware is REQUIRED. The use of SLAT capable hardware offers significant performance improvements across the board and is especially important when using RemoteFX. These technologies are an extension to the traditional TLB that allow Hyper-V to use the hardware to handle multiple TLBs – one for each virtual machine. This is fundamental requirement for RemoteFX.
- Intel refers to this a Extended Page Tables (EPT).
- AMD refers to this as Nested Page Tables (NPT) or Rapid Virtualization Indexing (RVI).
If there are BIOS option to enable these features (they’re usually on by default), these options should be enabled.

출처 : http://www.realworldtech.com/page.cfm?ArticleID=RWT040208182719&p=8
Nehalem’s TLB entries have also changed subtly by introducing a “Virtual Processor ID” or VPID. Every TLB entry caches a virtual to physical address translation for a page in memory, and that translation is specific to a given process and virtual machine. Intel’s older CPUs would flush the TLBs whenever the processor switched between the virtualized guest and the host instance, to ensure that processes only accessed memory they were allowed to touch. The VPID tracks which VM a given translation entry in the TLB is associated with, so that when a VM exit and re-entry occurs, the TLBs do not have to be flushed for safety. Instead if a process tries to access a translation that it is not associated with, it will simply miss in the TLB, rather than making an illegal access to the page tables. The VPID is helpful for virtualization performance by lowering the overhead of VM transitions; Intel estimates that the latency of a round trip VM transition in Nehalem is 40% compared to Merom (i.e. the 65nm Core 2) and about a third lower than the 45nm Penryn.

Name   Password   Home   Secret   Submit

제가 꽤 오랜 기간 (약 6개월 이상)을 고생했던 사항이 있습니다.
제 노트북은 레노버 T400 이고 그래픽 카드는 NDIVIA와 인텔 2개를 사용하고 있습니다.

문제는 CPU의 가상화 기능을 키고 Hyper-v 서비스를 시작하게 되면 성능 문제가 극심하게 발생한다는 점입니다.
예를 들어 스타크래프트2를 거의 하기 힘든 상황이 온다거나 단일 Display 상태에서 모니터를 연결하면 잠시 컴퓨터가 행이 걸린듯한 모습이 된다거나 하는 점들이죠.

확인결과 이미 알려진 이슈였습니다.

[현상]
Windows 2008 이상의 Hyper-V 및 Accelerated display adapter가 설치된 머신의 그래픽 성능이 저하될 수 있다.
예) 성능 저하의 예
1. CTRL+ALT+DELETE 를 통한 화면 전환 시
2. 듀얼 모니터 연결 시
3. 3D 게임 실행시

[원인]
고성능 그래픽 카드는 고성능의 기능을 사용하기 위해 TLB를 이용하게 되는데, Hyper-V를 이용 하게 될 경우 TLB가 Hyper-V 상에서 가상화 되게 되어 해당 기능을 빈번하게 이용하는 디바이스 드라이버에서 성능 이슈가 발생하게 됩니다.

- 부연 설명 : 일반적으로 가상메모리에서 실제메모리를 찾아가기 위해서는 Paging 기법을 이용하지만 고 성능이 필요한 일부의 경우 TLB 즉 가상메모리를 실제메모리로 맵핑 시킨 블럭을 이용하는 경우도 있습니다.

[해결방안]
앞으로 개인용 Desktop 즉 그래픽 작업에 대한 부하가 큰 컴퓨터에는 꼭 Windows 7 을 이용하도록 합시다.
이는 Hyper-V의 기본 기능이기 때문에 해당 그래픽 디바이스를 제거하는 것 외에는 방법이 없습니다.

[출처]
http://support.microsoft.com/kb/961661/en-us

Name   Password   Home   Secret   Submit
  Best Practices Analyzer for HYPER-V 
작성일시 : 2010.11.11 13:52 | 분류 : Windows Server/Virtualization

Name   Password   Home   Secret   Submit

I always recommend that the DBMS allocates on the physical server.
So database consollication would be a better choice.

Main role of virtualization is splitting the performance of CPU and Memory.
You must have deep consideration before you move your server on the virtualization.
Especially your server requred high performace of disk and network.

CPU : lose the performance about 20%

Disk Performance : lose the performance about 25%

Network : I didn’t find the known performace issue, but I have had a experience about that. I moved high network performance required server from physical to virutal. At the first it goes well but after 1 week, it does work for any network workload, only the way to wake up my server is reboot.
Although it can be happened on the physical server, but on the physical server it occured per 1~3 month.

Name   Password   Home   Secret   Submit
  Hyper - V 아키텍처 
작성일시 : 2010.04.23 10:21 | 분류 : Windows Server/Virtualization

출처 : Windows Internals 5th Edition

Root Partition

VM Service
- MMC를 통한 Child Patition 관리를 위한 WMI 인터페이스 제공
- Root Partition의 어플리케이션과 Hyper –v 및 Child Patition 과의 통신을 책임 짐
- Device Visible 여부 및 CPU Memory 할당

VM Work Porcess
- 스냅 샷이나 상태 전환, Hypervisor에서 전달하는 여러가지 알림 (디바이스의 노출과 같이 VM Service의 설정과 함께 움직이는 일들)과 같은 전형적인 모놀릭 Hypervisor에서 수행 했던 일들을 수행
- vmwp.exe 로 표현되며, 가상화 스택상에서 터미널 서버의 RDP와 비슷한 역활(View, 인터페이스)을 수행

Virtualization Service Providers
- Child Patition에 노출된 장치들의 고속 에뮬레이션을 담당 (VM 서비스와는 역활이 다름)

VM Infrastructure Driver
- Hyper – v 와 유저 모드 어플리케이션인 VM Service 간의 직접 통신이 불가능 하기 때문에 사용하는 커널 모드 디바이스 드라이버 (VID)
- MIMIO 및 ROM 과 같은 Lowmemory 장치 서비스 제공

Hypervisor API Library
- Hypervisor 와 Child Partition 간의 인터페이스 역확 (Hyper call)
- winhv.sys 디바이스 드라이버로 구현 되어 있음

Hyper – V
- 부팅 시 hvboot.sys 로딩 후 AMD의 경우 Hvax64.exe 인텔인 경우 Hvix64 로딩 (가상화 구현 방식이 약간 다르기 때문)

Child Partition

Hypervisor에 의해 관리되는 자신의 Guest Virtual Address Space (GVA)로 제약 됨

Virtualization Service Clients (VSCs)
- Child Partition에 디바이스의 에뮬레이션을 담당 (실제 디바이스는 에뮬레이션 디바이스와 Synthetic 디바이스로 나눠지며, 후자가 성능이 우수함)

Enligthements
- 윈도우 가상화 성능 향상의 키라고 할 수 있는 것으로 윈도의 커널 코드를 가상화에 맞게 변경한 것
- 일반적인 윈도 커널과는 다른 방식으로 동작하며 하드 웨어에 종속적이며, 결과적으로는 Hypercall 로 가공됨을 의미 (예 : Hypervisor는 오랫동안 지속되는 루프가 실행 될 때, 해당 루프를 모두 추적하는 것이 아니라 변경되는 사항만을 확인 더욱 구체적으로 이야기 하자면 Child Partition에서 APIC 가 실행 중일 때 H/W 적인 인터럽트가 발생 하면 당연히 해당 인터럽트가 처리되는게 정상이나 해당 Child Partition에 이런 인터럽트가 해당 되지 않으면 차단하는 역활도 하며, 메모리 관리의 경우 TLB를 Flushing 하는 경우 CPU에서 이 명령 셋이 모든 Child Partition에 적용 되게 되는데 이를 방지하는 역활도 진행)

BlogIcon MayStyle (2010.04.27 18:08 신고) R | X
회사에서 세미나 했더니 모두 전멸~ ㅋ.ㅋv

Name   Password   Home   Secret   Submit