Windows Azure VM Role 미리보기 #6

Cloud 2011. 5. 9. 02:13 Posted by 알 수 없는 사용자

VM Role 관리하기 - 차이점 보관 디스크 만들기

VM Role을 성공적으로 클라우드에 출판했지만 이제 마지막으로 걱정거리가 하나 남습니다. 새로운 기능을 추가할 때나 소프트웨어를 추가하는 일은 너무나 당연한 일입니다. 그런데 VM이 자동으로 증식할 때 마다 원격으로 들어가서 매번 새롭게 VM을 고쳐야 하는 것일까요? 아니면 매번 덩치 큰 이미지를 올리기 위해서 퇴근도 못하고 기다려야 하는 것일까요? 그렇지 않습니다.

차이점 보관 디스크라고 번역되었고, 영문 버전에서는 Differencing Disk로 불리는 기능을 사용하면 문제를 간단하게 해결하고 시간도 절약할 수 있습니다. 덤으로, 버전 관리의 혜택까지 얻을 수 있으므로 훨씬 실리적이지요. 차이점 보관 디스크를 부모 디스크로부터 만들고, CSUPLOAD 도구를 이용하여 차이점 보관 디스크 이미지 파일을 올릴 때 원격지에 게시된 부모 디스크 이름을 정확히 지정하여 관계를 설정하고, Visual Studio 없이 관리 콘솔 상에서 환경 설정 파일만 편집하면 쉽게 업데이트할 수 있습니다. 만약 여러 벌의 차이점 보관 디스크를 미리 올려 놓았다면 당연히 선택적으로 여러분이 원하는 상태의 이미지를 기준으로 상태를 전환할 수 있으므로 언제나 안정적인 시스템 상태를 유지할 수도 있습니다.

이제부터 작업 과정을 한 단계씩 살펴보기로 하겠습니다.

1. 시작 메뉴의 관리 도구 메뉴를 통하여 Hyper-V 관리자를 실행합니다.

2. 좌측의 서버 이름 트리 항목을 오른쪽 버튼으로 클릭하고, 새로 만들기 – 하드 디스크를 클릭하여 마법사를 시작합니다.

3. 새 가상 하드 디스크 마법사가 나타나면 다음 버튼을 클릭하여 소개 페이지를 넘깁니다.

4. 아래와 같이 화면이 나타나면 차이점 보관 디스크 항목을 클릭한 후 다음 버튼을 클릭합니다.

5. 차이점 보관 디스크를 저장할 디렉터리 경로와 파일 이름을 아래 화면과 같이 설정하고 다음 버튼을 클릭합니다. 나중에 CSUPLOAD 도구를 이용하여 파일을 올릴 것을 감안하여 찾아보기 쉬운 경로에 파일을 만들어 둡니다.

6. 디스크 설정 단계에서 부모 가상 하드 디스크를 선택합니다. Step 1에서 만들었던 가상 하드 디스크 파일의 경로를 확인하여 그 경로를 찾아보기 버튼을 클릭하여 지정합니다.

7. 설정한 내용이 정확히 지정되었는지 다시 확인한 후 마침 버튼을 클릭합니다.

8. 기존의 부모 하드 디스크와 연결된 가상 PC의 항목을 트리 뷰에서 선택합니다. 작업을 계속하기 위해서는 해당 가상 PC가 종료되어야 합니다. 실행 중인 경우 가상 PC 내의 운영 체제에서 시스템 종료 기능을 사용하여 안전하게 종료합니다. 종료한 후 가상 PC 속성을 엽니다.

9. 아래와 같이 IDE Controller 0 항목에 연결된 하드 디스크를 기존의 부모 디스크 대신 7단계에서 확정한 차이점 보관 디스크 파일의 경로를 대신 지정하고 확인 버튼을 클릭합니다. 차이점 보관 디스크 내의 설정에 따라 부모 디스크의 내용을 기반으로 나머지 모든 내용은 차이점 디스크에 기록됩니다.

10. 다시 가상 PC를 시작합니다. 해당 가상 PC 항목을 더블 클릭하여 제어 창을 열거나 트리 뷰에서 가상 PC 항목을 오른쪽 버튼으로 클릭하고 연결 버튼을 눌러서 창을 연 다음 도구 모음의 시작 버튼을 클릭합니다.

11. 아래와 같이 로그인 화면이 나타나면 관리자로 로그인합니다.

12. 지금부터는 실제로 밖에서 알아보기 쉬운 차이점을 만들기 위한 작업이므로 여러분의 취향대로 작업을 진행해도 무방합니다. 여기서는 IIS 웹 사이트 기본 페이지에 등장하는 이미지를 수정하여 원격에서 쉽게 업데이트 여부를 파악할 수 있도록 해볼 것입니다. 이를 위하여 가상 운영 체제 내에서 시작 – 모든 프로그램 – 보조프로그램의 그림판을 클릭합니다.

13. 그림판에서 파일 열기 기능을 이용하여 C:\INETPUB\WWWROOT\WELCOME.PNG 파일을 엽니다.

14. 그림판의 도구 리본 메뉴에서 텍스트 항목을 선택하고, 잘 보이는 곳에 텍스트를 새로 써넣습니다.

15. 제목 표시줄의 제일 좌측에 있는 디스켓 아이콘을 클릭하여 저장합니다.

16. 이제 차이점 보관 디스크를 출판하기 위해서 시스템을 다시 봉인해야 합니다. 시작 메뉴의 프로그램 및 파일 검색 입력란에서 아래의 명령어를 입력한 후 Enter 키를 누릅니다.

%WINDIR%\SYSTEM32\SYSPREP\SYSPREP.EXE

그리고 시스템 준비 도구 대화 상자에서 아래 그림처럼 설정합니다.

17. 시스템이 종료되면 이제 차이점 보관 디스크가 완성됩니다. 이제 이 파일을 CSUPLOAD 도구를 이용하여 올릴 차례입니다.

18. 시작 – 모든 프로그램 – Windows Azure SDK v1.3 – Windows Azure SDK Command Prompt를 선택하여 명령줄 창을 시작합니다.

19. 아래와 같이 명령어를 입력합니다.

csupload Add-VMImage -Connection "SubscriptionId=<YOUR-SUBSCRIPTION-ID>; CertificateThumbprint=<YOUR-CERTIFICATE-THUMBPRINT>; ServiceManagementEndpoint=https://management.core.windows.net/" -Description "<YOUR-VHD-DESCRIPTION>" -LiteralPath "<PATH-TO-VHD-FILE>" -Name <FILE-NAME-OF-VHD>

  • <YOUR-SUBSCRIPTION-ID>: 이전에 획득한 Subscription ID 값을 이곳에 붙여넣습니다.
  • <YOUR-CERTIFICATE-THUMBPRINT>: 이전에 획득한 손도장 값을 이곳에 붙여넣습니다. 단, 이 때 형식은 연속된 형태의 띄어쓰기없는 16진수 값이어야 합니다.
  • <YOUR-VHD-DESCRIPTION>: 업로드한 VHD 파일을 나중에 Portal Site에서 찾아볼 때 식별할 수 있는 설명 문자열을 이곳에 지정합니다.
  • <PATH-TO-VHD-FILE>: 업로드할 차이점 보관 디스크 파일의 경로를 지정합니다.
  • <FILE-NAME-OF-VHD>: 업로드하고 난 이후 Portal Site에서 사용할 VHD 파일의 이름을 지정합니다. 영어로 짧게 지정하는 것이 필요하고 확장자 VHD를 정확히 붙여주는 것이 필요합니다.

이렇게 완성된 명령어를 클립보드에 복사하여 명령 프롬프트 창에서 오른쪽 버튼을 클릭한 후 붙여넣기 항목을 클릭하면 간편하게 명령어를 콘솔에 입력할 수 있습니다. 아래는 명령어의 사용 예시입니다.

csupload Add-VMImage -Connection "SubscriptionId=417bb132-f6f0-e9a8-8e2d-a07bcd2ae122; CertificateThumbprint=93b1a5bf0764c0f4bc68b393b3811a7903d5bbd5; ServiceManagementEndpoint=https://management.core.windows.net/" -Description "Differencing image Windows Server 2008 R2" -LiteralPath "C:\VHD\diffimage.vhd" -Name diffimage.vhd

명령어를 실행하면 아래와 같이 작업이 진행될 것입니다.

20. VHD 유효성 검사 도구 안내 창이 중간에 나타날 수 있으며 이 때 계속 진행하도록 허용하고, 자동 실행 대화 상자가 이어서 나타나면 역시 닫습니다. 모든 과정이 완료될 때 까지 기다립니다.

21. 이제 차이점 보관 디스크의 종속성을 설정하여 부모 디스크와의 관계를 명시해야 합니다. CSUPLOAD 도구를 한 번 더 실행하는데 이번에는 다음과 같이 명령어를 입력합니다.

csupload Set-Parent -Connection "SubscriptionId=<YOUR-SUBSCRIPTION-ID>; CertificateThumbprint=<YOUR-CERTIFICATE-THUMBPRINT>; ServiceManagementEndpoint=https://management.core.windows.net/" -Child <YOUR-DIFF-VHD-NAME> -Parent <YOUR-PARENT-VHD-NAME>

  • <YOUR-SUBSCRIPTION-ID>: 이전에 획득한 Subscription ID 값을 이곳에 붙여넣습니다.
  • <YOUR-CERTIFICATE-THUMBPRINT>: 이전에 획득한 손도장 값을 이곳에 붙여넣습니다. 단, 이 때 형식은 연속된 형태의 띄어쓰기없는 16진수 값이어야 합니다.
  • <YOUR-VHD-DIFF-VHD-NAME>: 업로드한 차이점 보관 디스크의 서버 상의 이름을 지정합니다.
  • <YOUR-PARENT-VHD-NAME>: 업로드한 원본 디스크의 서버 상의 이름을 지정합니다.

이렇게 완성된 명령어를 클립보드에 복사하여 명령 프롬프트 창에서 오른쪽 버튼을 클릭한 후 붙여넣기 항목을 클릭하면 간편하게 명령어를 콘솔에 입력할 수 있습니다. 아래는 명령어의 사용 예시입니다.

csupload Set-Parent -Connection " SubscriptionId=417bb132-f6f0-e9a8-8e2d-a07bcd2ae122; CertificateThumbprint=93b1a5bf0764c0f4bc68b393b3811a7903d5bbd5; ServiceManagementEndpoint=https://management.core.windows.net/" -Child diffimage.vhd -Parent baseimage.vhd

22. 이제 관리 포탈 사이트로 되돌아가서 관계 설정이 아래 그림과 같이 정확히 이루어졌는지 확인합니다. 정상적으로 완료되었다면 BASEIMAGE.VHD 파일 항목 아래에 우리가 이번 시간에 업로드한 DIFFIMAGE.VHD 파일이 속해 있는 형태로 표시될 것입니다.

23. 이제 환경 설정 파일을 업데이트하여 새 가상 하드 디스크로 실행 중인 인스턴스들이 고쳐질 수 있도록 해야 합니다. 이전 단계와는 달리 이 작업을 위하여 Visual Studio는 별도로 필요하지 않습니다. 업데이트하려는 VM Role을 아래 그림과 같이 선택하고 Configure 버튼을 클릭합니다.

24. Configure Deployment 창이 나타나면, Edit Current Configuration 라디오 버튼을 클릭하고, OSIMAGE XML 요소의 HREF 값을 이전 단계에서 올린 차이점 보관 디스크 파일의 이름으로 바꿉니다. 그리고 OK 버튼을 클릭하여 설정을 저장합니다.

25. 이제 아래와 같이 업데이트 진행 상황이 표시될 것입니다. Ready로 표시될 때 까지 기다립니다.

26. 이제 웹 서버에 새로운 이미지의 내용이 보이는지 확인하기 위하여 해당 웹 사이트 주소로 브라우저를 열어봅니다. 아래와 같이 이미지에 수정한 내용이 잘 보인다면 성공적으로 차이점 보관 디스크가 작동하고 있는 것입니다.

마무리하며

총 6번의 연재를 통하여 Platform Training Kit의 Virtual Machine Role에 관한 내용을 모두 살펴보았습니다. 이번 내용은 Windows Azure Cafe에도 같이 게시될 예정이며 단일 문서로 통합된 파일도 제공할 예정이므로 많은 관심 바랍니다. 향후 Virtual Machine Role에서 사용할 수 있는 OS는 Windows Server 2008과 2008 R2 64비트 버전 외에도 32비트 버전의 Windows Server 2008과 Windows Server 2003에서도 지원될 예정이라고하니 기대하셔도 좋을 것 같습니다. 이들 OS에 대한 Additional Software는 2011년중에 개발되어 배포될 예정임이 알려져 있습니다.

감사합니다. :-)