virtualization/microsoft

[Microsoft] RDS/VDI User Profile Disk가 마운트되지 않음

yueisu 2014. 5. 27. 07:47

MS RDS/VDI의 유저 프로화일 관리방법은 3가지입니다.

 1. 로컬 프로화일

 2. 로밍 프로화일

 3. 유저 프로화일 디스크(UPD)


1.의 경우는, 유저를 특정 가상데스크톱에 할당하는 개인용 가상데스크톱 컬렉션에서 이용을 합니다.

이른바 링크드 클론 방식인 풀 가상데스크톱 컬렉션의 경우는2나 3을 이용하죠. 특히 3의 경우는 Windows Server 2012부터 새롭게 추가된 기능으로 유저 프로화일을 별도의 vhdx 화일에 보존, 유저가 가상데스크톱에 로그온시 RD 가상화 호스트에서 UPD를 해당 가상데스크톱에 마운트하여 이용을 하게됩니다.


유저가 로그온, 로그오프시 데이터가 저장되는 로밍 프로화일과는 달리, 일단 마운트되어지면 리얼타임으로 데이터로의 쓰기, 변경 등이 가능하며 네트워크의 부하도 분산이 가능하죠. 아울러 vhdx 화일이기 때문에 백업도 간단하며, vhdx 화일 자체를 익스플로러에 마운트하여 화일단위에 접근이 가능하기에 Microsoft사에서는 UPD의 이용을 추천하고 있죠.


이렇게만 보면 유저 프로화일 관리가 아주 편합니다만... 실제로 운용을 하면 생각지도 못한 트러블이 발생할 수 있습니다. 


무슨 트러블인가하면, 유저가 로그온시 이 UPD이 정상적으로 마운트되지않는 트러블입니다. 정상적으로 마운트가 되지않으면, 유저는 temporary 프로화일로 로그온을 하게됩니다. 유저로부터 저장한 데이터가 없어졌다는 등 문의가 빗발치게 되죠... 흐흐


자아, 왜 UPD가 언마운트되지않느냐... 원인은 몇 가지 있습니다.

우선, 이슈일 경우가 있습니다. KB2795531에서도 공개된 것처럼 Windows Server 2012의 RD 가상화 호스트와 Windows 8의 가상데스크톱 환경에서 정상적으로 로그오프 처리가 되지않기 때문에 발생할 수 있습니다. 이 경우는 공개된 핫픽스를 적용함으로써 개선될 수 있습니다.


다른 이유는 유저가 가상데스크톱을 정지(shutdown) 했을 경우 발생할 수 있습니다. 풀 가상데스크톱 컬렉션은 가상데스크톱에 특정 유저를 할당하지 않습니다. 때문에 유저의 종료옵션은 [절단]과 [로그오프]밖에 없죠. 보통은 말입니다. 하지만 유저가 [Windows Security]를 선택할 경우는 [정지]를 실행할 수 있습니다.


UPD는 유저가 로그오프 처리가 완료된 후에 언마운트 처리가 실행됩니다. 하지만 [정지]처리 역시 로그오프 처리 후 실행됩니다. 때문에 언마운트 처리가 완료되기 전에 [정지]처리가 먼저 끝나면, 언마운트 처리가 미완료 상태로 가상데스크톱이 정지, 유저는 정상적으로 로그오프를 했음에도 불구하고 자신의 UPD가 "이용중"인 상태가 되는거죠. 

Microsoft사는 풀 가상데스크톱 컬렉션의 경우, 가상데스크톱의 정지는 관리자가 관리툴을 통해 실행하도록 권장하고 있습니다.


세번째 이유는 다른 프로세스가 UPD를 이용중이기 때문에 RD 가상화 호스트측에서 UPD를 마운트할 수 없는 경우입니다. 이 경우는 어떤 프로세스가 UPD를 이용중인가 분석을 할 수 밖에 없습니다. 이 경우가 문제인건 다른 프로세스가 이용중이어서 유저가 로그오프후 UPD가 언마운트되지않았는지, 마운트를 시도할 경우 다른 프로세스가 이용중이어서 실패를 했는지 모르기 때문입니다. 전자의 경우라면 UPD가 마운트된 상태의 가상데스크톱의 이벤트로그(Applicaiton)에 ID 1530이 기록되므로 어느정도 파악이 가능합니다만, 후자의 경우는 결국 Microsoft의 서포트에 문의할 수 밖에 없습니다. 


안타깝게도 발생하는 원인의 대부분은 세번째의 후자일 경우입니다. 때문에 UPD의 도입이 불안할 경우는 로밍 프로화일의 이용을 추천합니다.