Cloud Tech./Presentation2009.11.18 16:36
마이크로소프트가 새로운 서버 제품군을 소개했습니다. 이름하여 MultiPoint Server 입니다. 윈도우 7 발표 이후 사람들의 초미의 관심사중 하나인 멀티터치와는 별 관계 없는 서버입니다만, 이름이 참 매력적으로 들려오는 군요. 이 서버 제품은 여러 클라이언트가 하나의 컴퓨터에 접속한다는 뜻에서 MultiPoint Server 라고 지어진 것 같습니다. 우선 동영상 한편 보시고, MultiPoint Server 가 무슨 짓(?)을 하는 서버인지 보도록 하겠습니다.



동영상만을 보고 감 잡으신 분도 계실거고, 도대체 뭘 어떻게 한다는 이야기인지 통 모르겠다는 분도 계실 것 같습니다. 교육 시장을 타켓으로 잡고 있는 이 제품은 하나의 컴퓨터가 여러대의 키보드, 마우스, 그리고 모니터를 지원하는 일종의 VDI (Virtual Desktop Infrastructure) 로 볼 수 있을 것 같습니다. (그러나 진정한 의미의 VDI 와는 조금 거리가 있습니다)

각 키보드, 마우스, 모니터를 ThinClient 단말기로 대치해보시면 조금 더 답이 쉽게 나옵니다. 네, 이 서버 제품군은 기존의 터미널 서버 혹은 Remote Desktop Service 를 응용한 제품이라고 보시면 됩니다. 정확히 한대의 PC 에 MultiPoint Server 제품을 설치후 하드웨어 연결을 어떻게 하는지 알려지지는 않았으나 관련 FAQ 의 마지막 부분에 " MultiPoint Server 기반 어플리케이션 개발은 RDS 의 그것을 따른다 " 라는 내용이 있기 때문에 동일한 기술에 근간한 것으로 보면 될 것 같습니다.

2010년 상반기에 전세계에 출시 예정이라고 하니, 조금 더 관심을 가지고 지켜봐야 하겠습니다. 마이크로소프트가 시장을 다양한 방면으로 넓히기 위해서 백방으로 연구하는 듯 합니다.

* 제품 공식 홈페이지 : http://www.microsoft.com/windows/multipoint/default.aspx
* 제품 공식 브로우셔 : http://tinyurl.com/ycwg429

- NoPD -
신고
Posted by 노피디
Cloud Tech./Presentation2009.04.22 09:25
IDC 나 서버를 운영하는 사람의 입장에서 가상화를 도입하는 이유는 더 다양해질 수 있을 것 같다. 전력 수급의 문제라던가 공간의 문제와 같은 현실의 물리적인 문제들이 있을수도 있고, 서로 다른 하드웨어를 사용하는 것을 줄이는 관리의 목적도 있을 것 같다.

서버 리소스의 효율적인 사용

일반적으로 터미널 서비스를 사용하게 되면 개별 사용자들은 서버 OS 상에 별개의 Full 세션을 만들어 사용하게 된다. RemoteApp 을 사용하여 어플리케이션을 호스팅하게 되면 Full 세션을 만드는 것 만큼의 서버 자원을 사용하지 않고 효과적으로 여러 개별 사용자에게 서비스를 제공할 수 있는 잇점이 있다.

호환성 문제가 있는 어플리케이션의 동시 사용

마이크로소프트의 Office 제품군의 경우 단일한 버전만 인스톨하여 사용할 수 있는 한계가 있다. 그러나 때에 따라서 사용자들은 여러개의 버전 (XP, 2003, 2007 ...) 을 동시에 사용해야 하는 경우가 생길 수 있는데, 터미널 서비스 RemoteApp 은 이러한 상황에 대한 좋은 해법이 될 수 있다. 예를 들어, RemoteApp 서버팜을 구성하고 있는 서버 1, 2 번은 Office 2003 을 서비스 하고 3, 4번은 Office 2007 을 서비스 한다고 가정하자. 사용자에게 두가지 버전의 Office 를 Publishing 해주면 사용자는 자신의 PC 에서 Office 2003 과 Office 2007 을 동시에 사용할 수 있게된다.

터미널 서비스 RemoteApp 은 고민하기에 따라서 다양한 형태로 구성이 가능하다. Presentation 가상화를 함으로써 얻는 잇점이 그렇지 않은 경우에 비해 많은 것 같다고 생각되는 사무 환경이라면, 지금 윈도우 서버 2008를 이용하여 가상화에 도전해 보도록 하자.

2009/04/13 - [Virtualization/Presentation] - Presentation 가상화를 해야하는 이유는 무엇일까? #1
2009/04/20 - [Virtualization/Presentation] - Presentation 가상화를 해야하는 이유는 무엇일까? #2

- NoPD -
신고
Posted by 노피디
Cloud Tech./Presentation2009.04.13 08:08
Presentation 가상화는 다른 말로 표현하자면 UI 에 대한 가상화이다. 어플리케이션이 구동되는 물리적인 의미의 하드웨어는 사용자 PC 가 아닌 다른 곳 (데이터 센터, 서버 룸 등) 에 위치해 있고, 사용자는 구동되는 어플리케이션의 UI 영역만을 네트워크로 전송받아 사용하는 개념을 말한다.

이러한 기저에는 RDP 프로토콜이나 ICA 프로토콜과 같은 다양한 SBC(Server Based Computing) 솔루션이 위치해 있다는 것은 이미 너무나 많은 사람들이 알고있다. 기술을 떠나, 초심으로 돌아가서, 과연 왜 이런 Presentation 가상화를 해야하고 이러한 가상화를 도입했을 때 기업 혹은 개인이 얻을 수 있는 장점은 무엇인지 한번 Refresh 해 볼 필요가 있을 것 같다.

터미널서비스 RemoteApp 의 장점

윈도우 서버 2008 이 출시되면서 많은 변화들이 있었지만, 그 중 가상화에 대한 변화들은 다른 분야의 변화에 비해 월등히 변화가 많았던 부분이 아닐까 싶다. RemoteApp 도입 이전에 Presentation 가상화를 사용해 본다는 것은 별도의 솔루션 (Citrix 등) 을 사용해야 하고 투자비용이 든다는 단점이 있었다.

적은 사용자가 in-House 용도로 Presentation 가상화를 도입하는데 이러한 부분은 크게 걸림돌이 되었던 것이 사실이다. RemoteApp 가 Citrix 등의 전문 SBC 솔루션 만큼의 고가용성이나 고성능을 제공해 주지는 못하지만, in-House 용도로 한정 한다면 이유있는 선택이 될 수 있다.

중앙 집중화된 소프트웨어 관리

기업의 IT 조직들이 하는 일의 많은 부분이 개인 사용자 PC 에 설치된 어플리케이션의 문제를 진단해주고 해결해주는 것이라고 한다. 천차만별로 구성된 OS 환경에서 발생하는 문제를 찾는 것은 시간이 많이 소요되는 작업이고 이는 비용과 직결되는 이슈가 된다. RemoteApp 을 사용하면서 IT 조직은 관리되는(Managed) 환경하에 놓인 시스템에서 소프트웨어를 서비스 함으로써 많은 사용자 환경 차원의 문제를 해결할 수 있다.

버전이 새롭게 업데이트 되었거나 패치가 적용되어야 하는 시점이 아니라면 서버에서 호스팅 되는 소프트웨어들은 언제나 최신의 상태를 유지하며 안정적인 설정과 이미지를 모든 사용자에게 제공할 수 있게 된다.

(계속)

- NoPD -
신고
Posted by 노피디
Cloud Tech./Presentation2009.04.07 07:52
동일한 H/W 머신에 접속중인 다른 사용자의 세션에 접근해야 할 경우가 종종 생긴다. 사용자가 터미널 서비스 환경에서 작업을 하던 도중 문제에 부딪혔거나 일반 RDP 세션에서 콘솔 세션 (혹은 어드민 세션) 으로 이동해야 하는 경우가 대표적인 예이다. 이러한 경우 커맨드 라인에서 간단한 명령만으로 다른 세션에 연결할 수 있는 기능이 제공되고 있다.


먼저 연결할 세션을 찾기 위해 Query Session 명령으로 접속한 H/W 머신의 모든 세션 정보를 조회하도록 하자. 수신대기 포트 이외에 콘솔을 포함하여 3개의 세션이 있음을 알 수 있다. 제일 마지막에 출력된 rdp-tcp#21 세션으로 연결하려면 간단히 " tscon 2 " 라고 타이핑 하면 된다. 잠시후 해당 세션으로 연결이 완료되면 화면이 전환된다.

tscon 의 장점은 해당 세션의 상태를 그대로 가져온다는 데 있다. 사용중이던 프로세스와 화면 상태를 그대로 가져오기 때문에 문제점이 발생했을 때 아주 유효 적절하게 사용가능한 명령어라고 할 수 있다. 다시 자신의 세션으로 돌아가려면 기억해 둔 자신의 세션 번호로 tscon 명령을 실행하면 된다.

위의 예에서는 동일한 사용자 계정으로 접속한 상황을 가정했기 때문에 인증절차 없이 접근이 가능했다. 그렇다면 다른 사용자 계정으로 접근한 경우에는 어떻게 세션을 전환할 수 있을까?


다른 사용자의 계정으로 접속된 세션에 접근할 때는, 해당 사용자의 비밀번호를 알고 있어야 한다. 세션에서 사용자 계정은 이미 알고 있으므로 /password 파라메터를 이용하여 사용자 패스워드를 입력해 주면 된다. 간단하지만 다양한 상황에서 유용하게 사용될 수 있는 커맨드가 아닐까 싶다.

- NoPD -
신고
Posted by 노피디
Cloud Tech./Presentation2009.04.06 18:46
터미널 서비스 (리모트 데스크탑) 환경에서 유용하게 사용할 수 있는 커맨드라인 명령중에 MSG 라는 명령어가 있다. 명령어의 이름에서 이미 짐작했겠지만, 서버에 접속해 있는 사용자들에게 메세지를 전송하는 커맨드이다. 이 명령어는 몇가지 옵션을 가지고 있는데 유용하게 쓰일만한 것들을 하나씩 살펴보도록 하자. 먼저 터미널 서비스가 운영중인 서버에 접속해서 커맨드 라인을 열자.


가장 간단한 형태의 MSG 명령어 사용의 예이다. 메세지를 수신할 사용자 계정의 이름을 입력하고 전송할 메세지를 입력하면 된다. Active Directory 환경이라면 그에 맞는 사용자 계정의 이름을 입력해 주면 된다. 이렇게 전송된 메시지는 Always On Top 속성이 지정된 것처럼, 서버에 접속한 사용자 화면의 최상위에 위치하게 된다.


서버에 중요한 PM 작업이 있어서 서버에 접속한 전체 사용자에게 메세지를 전송하고 싶을 때는 두가지 방법을 택할 수 있다. 첫번째는 사용자 계정 대신 별표(*)를 입력하여 전체 사용자에게 메세지를 전송하는 방법이고, 두번째는 텍스트 파일에 메세지를 수신할 사용자 계정을 나열한 뒤 메세지를 전송하는 방법이다. 이 중, 별표(*)를 사용하는 예를 살펴보도록 하자.


첫번째 예를 보면, /v 옵션을 같이 준 경우인데, 이 옵션을 주면 상세한 메세지 전송 내역을 텍스트로 확인할 수 있다. NoPD는 테스트를 위해 콘솔 세션으로 접속을 했는데, Tcp#18 번 RDP 세션으로 콘솔에 접속했다는 것으로 해석하면 된다. 메세지를 보냈고 메세지를 표시하는 기본 시간인 60초로 잡혀 있다는 것을 알 수 있다.

두번째 예를 보면, /w 옵션까지 같이 주었는데, 이 옵션을 주면 사용자의 응답을 기다렸다가 응답이 돌아왔다는 것을 확인할 수 있다. 여러 사용자에게 메세지를 보내고 이를 사용자가 읽고 창을 닫았는지 (물론 자의적인 해석이겠지만 ^^) 확인이 가능하다.

간단한 커맨드이지만, 사용자가 많은 터미널 서버를 운영중이라면 간단하게 공지사항을 전송할 수 있는 유용한 기능이 아닐까 싶다.

- NoPD -
신고
Posted by 노피디
Cloud Tech./Presentation2008.10.21 03:03
터미널 서버의 Presentation 가상화를 이용하여 어플리케이션을 일련의 사용자들에게 서비스 할 때 주의할 점은 여러가지가 있지만 그중에서도 핵심적인 것중 하나는 바로 "응용프로그램 설치"에 관한 것이다. 일반적인 방식으로 프로그램을 설치했을 때 발생가능한 문제점들과 대처방안을 숙지해 둘 필요가 있다.

Presentation 가상화는 여러 사용자의 세션을 각 하드웨어들이 받아들여 서비스를 해야 하는 방식이다. 소프트웨어는 여러 사용자를 위하여 서비스가 가능하도록 적절하게 설계되어 있거나 이를 위한 방안이 꼭 있어야 한다. 다른 말로 하면, 다중 사용자를 위한 준비가 안된 소프트웨어는 터미널 서버 Presentation 가상화를 통해서 서비스가 불가능 할 수도 있다는 말이다.

예를들어 서버의 특정 경로에 사용자 관련된 환경을 저장한다거나 레지스트리의 HKEY_LOCAL_MACHINE 에 사용자 관련 설정이 저장되는 소프트웨어라면 Presentation 가상화가 힘들 가능성이 높다. 윈도우 서버에서는 이러한 소프트웨어에 대응하기 위하여 터미널 서버를 위한 응용프로그램 설치 모드가 준비되어 있다. 제어판을 열어보자.


이전에 보지 못하던 새로운 아이콘이 하나 등장한 것이 보인다. 이름하여 "터미널 서버에 응용프로그램 설치"이다. (이름이 참 길다 -_-) 사실 이 아이콘이 하는 역할은 포스팅 마지막에 소개할 커맨드 명령어처럼 이전부터 알려져 있던 내용이다. 하지만, 종종 어플리케이션 설치과정에 빼먹기 쉬운 커맨드 명령어 누락을 막기 위한 배려라고 생각하면 가슴이 짠해져 오는 것을 느낄지도 모르겠다.


아이콘을 더블클릭하면 위와 같은 화면이 뜬다. 일반적으로 플로피 디스크나 CD-ROM 에서 응용프로그램을 설치하는 경우가 요즘은 무척 드문데, 여전히 이런 화면이 첫번째로 등장한다는 것은 조금 에러가 아닌가 싶기도 하다. 플로피 디스크나 CD-ROM 을 통해서 설치할 것이 아니므로 일단 "다음"을 눌러보자.


친절하게도 "설치 프로그램을 찾을 수 없습니다" 라는 메세지와 함께 파일 브라우저 버튼이 화면에 등장했다. 찾아보기 버튼을 누르면 설치가능한 모든 포맷 (MSI, EXE...) 이 필터링 되어 있는 파일 탐색기가 열린다. 활용해 보고 싶은 프로그램의 설치파일을 찾아서 선택하도록 하자.


XML 에 사용자 환경파일을 저장하는 대표적인 프로그램인 mRemote 라는 프로그램을 설치파일로 지정했다. 정상적으로 다중 사용자 환경에서 동작하는지에 대한 테스트는 다음 포스팅에서 해보도록 하겠다. 터미널 서버 프로그램 설치의 메세지를 보면 "성공 실패를 떠나서 설치가 끝나면 마침이나 취소를 눌러라" 라고 되어 있는게 보인다. 해석하면 프로그램이 설치되는 동안 액세스 되는 내용들을 점검해서 다중 사용자 환경에서 구동 가능하도록 한번 "노력해 보겠다" 정도로 해석하면 될 것 같다. 설치가 끝나면 당연한 이야기겠지만 "마침"을 눌러서 관리자 설치를 마치도록 하자.

어디서 많이 해봤던 작업이라는 느낌이 확 온다. 그렇다. 이전 버전까지의 터미널 서버 어플리케이션 설치 방법이었던 change user 커맨드를 사용하기 편하도록 만들어 둔 것이다. 이미 익숙한 사용자라면 계속 change user 커맨드를 써도 상관없지만 귀차니즘에 빠져 있다는 생각이 들면, 한번 이용해 보는 것도 나쁘지 않은 제어판 항목이 아닌가 싶다.


다음 포스팅에서 설치한 mRemote가 정상적으로 다중 사용자 환경에서 동작하는 지를 확인해 보고 마이크로소프트의 골드 파트너사인 씨트릭스(Citrix)의 AIE (Application Isolation Environment) 이야기도 잠깐 해보도록 하겠다.

2008/09/09 - [Virtualization/Presentation] - WS2008, Remote App 을 소개합니다
2008/08/26 - [Virtualization/Presentation] - WS2008, 터미널 서버의 설치

- NoPD -


신고
Posted by 노피디
Cloud Tech./Presentation2008.09.09 13:46

터미널 서버의 설치를 마치고 서버를 재부팅 하고 나면 잠시 변경된 내용이 적용되고 다시 서버 환경으로 로그인을 할 수 있다. 서버 관리자를 실행하고 설치한 터미널 서버 역할이 잘 정의가 되었는지 확인해 볼 수 있다. 이전에 항목이 0개였던 역할 노드에 터미널 서버가 추가된 것을 확인할 수 있고 우측의 Detail 팬에서도 해당 내용을 같이 확인할 수 있다.

그런데 왼쪽의 노드 트리를 유심히 보면 처음 보는 용어가 위치해 있는 것을 알 수 있는데, 이름하여 "TS RemoteApp"이다. TS RemoteApp 은 윈도우 서버 2008 에서 터미널 서버가 갖고 있는 기본 기능이다. Citrix의 Presentation 서버 (MetaFrame) 를 들어본 적이 있다면 익숙할 Seamless 환경을 지원하던 Presentation 서버의 Publish 기능을 알고 있을 것이다. 퍼블리싱 된 소프트웨어는 사용자 클라이언트 PC 에서 마치 로컬 실행되는 어플리케이션처럼 구동되는 모습에 많이들 감탄했을 것이다.

TS RemoteApp 은 Citrix와 같은 솔루션의 도움 없이 윈도우 서버 2008과 터미널 서버 역할 만으로 이러한 기능을 제공해 준다. 강력한 컴퓨팅 파워를 필요로 하는 어플리케이션이나 공통 어플리케이션을 서버에 설치하고 RemoteApp 으로 제공하면 일종의 SaaS (Software as a service) 개념이 가미된 사용자 컴퓨팅 환경을 구성할 수 있게 된 것이다.

RemoteApp 프로그램 추가

서버 관리자에서 터미널 서버 노드를 선택하면 제일 오른쪽에 위치한 작업팬에 사용자가 할 수 있는 몇가지 액션에 대한 기능들이 보인다. 그 중 맨위에 위치한 "RemoteApp 프로그램 추가" 기능을 통해서 서버에 설치된 프로그램을 터미널 서버 RemoteApp 으로 사용자들에게 제공할 수 있도록 설정할 수 있다. 프로그램을 추가하기 전에 배포할 어플리케이션이 서버에 설치가 되었는지 확인하도록 하자.

기능을 실행하면 무척 간단한 마법사가 어플리케이션 배포를 도와준다. 특별한 설정이 필요 없다면 무조건 "다음"만 선택해도 되지만 처음 RemoteApp 으로 어플리케이션을 배포한다면 어떤 설정들을 할 수 있는지 간단하게 살펴보는 것도 좋다.

마법사의 두번째 화면은 정상적인(?) 방법으로 설치되어 윈도우의 프로그램 관리자가 설치 / 제거를 지원할 수 있는 모든 어플리케이션이 목록에 출력된다. 만약 특별한 설치과정이 제공되지 않고 Stand-Alone 으로 설치된 프로그램을 배포하고자 한다면 "찾아보기" 기능을 이용해서 직접 실행파일을 배포해도 상관없다. 이쯤에서 아이디어가 떠오른 사람도 있겠지만, PDF 와 같은 문서파일을 RemoteApp 으로 배포하는 것도 물론 가능하다. 정책이라던가 일정 처럼 공유되어야만 하는 정보를 넘길수도 있을 것이다.

마법사를 통한  간단한 설치 절차가 끝나고 나면 중앙의 팬 하단에 RemoteApp 프로그램 목록에 설정한 프로그램이 등록된다. 등록한 이름과 경로, TS 웹 액세스, 인수 등의 항목이 보이는데 TS 웹 액세스에 관해서는 다음 아티클에서 상세히 설명하도록 하겠다.

등록된 어플리케이션 목록에서 마우스 오른쪽 버튼을 누르면 RemoteApp 프로그램에 대하여 관리자가 할 수 있는 작업 목록이 팝업된다. 등록된 어플리케이션을 사용자들이 액세스 할 수 있도록 하기 위한 방법은 여러가지가 있는데 다음 아티클에서 소개할 TS 웹 액세스가 가장 진보된 형태의 배포 및 액세스 방법이다. 아직 웹 액세스는 설치하지 않았으므로 RDP 파일과 MSI 파일로 배포하는 방법을 볼 까 한다.

RDP 파일은 일반적으로 터미널 서버 액세스를 위해 RDP 설정 파일을 만들어 주는 것과 동일하다. MSI 파일형태로 만들게 되면 사용자 PC 에 프로그램을 설치하는 것과 동일한 (즉, 프로그램 추가 제거에서 RemoteApp 어플리케이션을 제거할 수 있는 형태) 방식으로 설치가 된다. 다만, 이 두가지 방법의 단점은 사용자에게 RDP 파일 혹은 MSI 파일을 배포해야 하기 때문에 1) 공유폴더를 통한 배포, 혹은 2) 액티브 디렉토리 정책을 통한 배포를 해야만 한다. 테스트 환경은 AD가 설치되어 있지 않아 공유폴더를 통해서 MSI 파일을 배포해 보았다.

 

배포된 MSI 파일을 설치하고 나면 사용자의 클라이언트 PC 에 "원격 프로그램" 이라는 프로그램 그룹이 생성되고 그 하단에 배포되는 모든 RemoteApp 프로그램이 설치된 모습이 보인다. 물론, 마법사를 통해 MSI 패키징을 하는 과정에 다른 경로나 이름을 지정했다면 그 설치 위치는 달라졌을 것이다. RDP 파일을 배포하는 경우는 이러한 절차나 모습없이 RDP 파일을 직접 더블클릭해서 RemoteApp 을 구동시키게 된다.

설치된 RemoteApp 구글 어스를 실행하면 위의 사진처럼 마치 로컬 어플리케이션이 실행되는 것과 같은 모습을 보여준다. Seamless 방식으로 어플리케이션이 구동되고 있기 때문이며 사용자의 높은 데스크탑 사용자 경험을 느낄 수 있는 방식이다. RemoteApp 은 Citrix의 Presentation 서버가 제공하는 다양한 기능 (예>로드밸런싱, 어플리케이션 격리화 환경 등) 을 제공하지는 않지만 중소규모의 엔터프라이즈 환경에서라면 얼마든지 다양한 아이디어를 통해서 업무에 응용해서 사용할만한 매력적인 기능임에는 틀림이 없다.

- NoPD -

신고
Posted by 노피디

티스토리 툴바