운영체제 배포에 관한 커뮤니티를 알아냈다... 정확히는 곁다리 짚다 찾은 것이지만...
http://www.microsoft.com/technet/desktopdeployment/community/default.mspx
사실 우리나라에서는 운영체제 배포에 관해서는 황무지나 다름없다.
대기업과 같은 대규모 PC 운영이 아닌 이상은, 그저 물 흘러가듯 일일히 설치하고
진행하는 것이 마치 관례 처럼 되어 있기 때문이다.
솔직히 Windows 설치 횟수가 마치 적기를 떨어뜨린 후에 적는 킬 마크와 같이
되어서 만일 새로 설치해야 한다고 하면, 그냥 Windows 시디 넣고 깔기 시작한다.

백업이고 나발이고 그냥 설치 들어간다. 그리고 난 뒤 필요한 응용 프로그램 깔고..
그나마 이 BDD에 대해 조금 아는 사람들은 약간의 자동화를 해서
시디 한장을 넣으면 컴퓨터 이름에서 부터 패치까지 자동으로 되도록 만드는 정도?

하지만 한두대도 아닌 수많은 컴퓨터에 대해 설치한다고 하자.
물론 고스트나 하드 복사기로 하면 된다고 하지만,
재수 없게, 다양한 모델들이 있다고 한다면 거의 좌절 수준이다.
드라이버 다시 잡고, 각종 사용자 설정을 해야 되고...
게다가 받는 사람은 컴퓨터 처음 받은 기념으로 이것 저것 다시 설정하고 깔아야 한다.

이 우울한 작업을 한번에 끝낼 수 있도록 방법을 찾아가는 것이 바로 이 배포라는
부분이고, 이 커뮤니티에서는 그런 배포에 대한 정보를 보다 많은 사람에게 전달하고자 함이다.
한번 들려서 내용을 보는 것도 괜찮은것 같다.

- 그렇지만, 역시 Windows 기반이여서 Windows에 보다 깊이 빠져 들어 Windows만 쓰라는
  의미 같아서 왠지 마음이 조금은 무겁다.
728x90

앞에서는 개괄적인 BDD에 대한 이야기를 했습니다.
이번에는 BDD V2.5에 대한 각종 구성 내역과 개괄적인 내용에 대해 말씀 드리겠습니다.

앞의 내용을 각자 상상에 맡긴다면, 상당한 도구들과 다양한 UI가 필요할 것 같다고 생각하실 것입니다. 물론 내용 자체가 이해가 안되어 그다지 관심 밖일 수도 있겠지만..
일종의 도구로 판단하여, 이 BDD v2.5만 이용하면 운영체제 배포를 확실하게 끝내버릴 수 있을 것이라고 생각할 수 있습니다.
하지만, MS에서 제공하는 BDD는 절대 도구(TOOL)이 아닙니다. 단지, 방법을 제공하는 방법론 이자, 배포를 위한 플랫폼이자, 배포에 대한 각종 이론을 수록한 문서들 입니다.
실제 BDD Explore라는 것을 받게 되면 하나의 작은(?) 크기의 설치 파일 하나만을 받습니다. 그리고 그 설치파일을 실행해 보면, 하나의 폴더에 이런 저런 것들을 설치해 주고 끝냅니다.
그리고 프로그램 목록을 보시면 BDD Explore와 Getting Start 만 보실 수 있습니다.
게다가 한글화는 전혀 되어 있지 않아 오로지 영문으로 밖에는 볼 수 없습니다.
한걸음 더 나아가 실제 BDD Explore를 보면, 각종 vbs 들과 영문 문서들만이 이상하게 실행될 뿐 그 이상도 그 이하도 없습니다.
혹시나 하는 마음에 설치된 폴더를 가보시면 더 가관 입니다. 온통 문서를 하나의 폴더에 몰아 넣었고, 기타 다른 폴더들도 이름만 있고 비어 있기 일 수 있습니다. 게다가 변변한 EXE 파일은 하나도 없고, VBS, HTA, CMD, BAT과 같은 스크립트 들만 버글 거립니다.
도데체 이걸 가지고 어떻게 운영체제를 배포하라니... 라는 생각이 퍼뜩 드실 것입니다.

그.러.나 일단 BDD를 도구라는 생각을 버리시고 하나의 플랫폼이자 방법론이라고 시점을 돌리시고, 그 안의 문서들을 천천히 읽어 보시기 바랍니다. 그러면 이 BDD Explore에 담긴 그 철학과 그 방법들을 아실 수 있을 것입니다.
MS에서 배포를 위한 각종 바이너리 제품을 만들줄 몰라서 이렇게 만든 것이 아닙니다. 다양한 조건에 대해 유연하게 대처할 수 있는 방법을 모색하기 위해 이런 방법을 제시한 것입니다. 또한 MS의 파트너사(MS의 각종 실무적인 일을 대처해주거나, 각종 추가 기술을 제공해주는 동반자적인 위치의 회사)들의 밥벌이도 도움이 될 수 있구요.

자, 그럼 어디서 부터 시작할까요?
일단 그 전에 먼저 공부해야 될 사항들이 무엇인지에 대해 알아보도록 하죠. 이 BDD라는 것에 대해 아실려면, 제일 먼저 운영체제 설치 방법들에 대해 어느정도 잘 알고 있어야 합니다.
첫번째, BDD V2.5에서는 Windows XP with SP2 배포가 그 핵심인데, 이를 위해서는 역시 Windows XP 설치 방법을 어느정도 알고 있어야 합니다. 단순히 MS에서 건네준 CD로 Product Key를 넣고, 시간대 설정해주고, 사용자 이름 넣고 이런 수작업으로 설치하는 것이 아니라, Unattend.txt 라는 파일을 이용해 자동적으로 쭉 설치될 수 있도록 하는 방법 같은 것 말이죠.
어떻게 보면, BDD의 출발점과 같은 것이라고나 할까요?

두번째 응용 프로그램에 대한 자동설치 방법에 대해서 알아야 합니다. 응용 프로그램들이 자동 설치가 지원된다는 사실을 아시는 분이 그다지 많지 않으실 것입니다. 게다가 우리나라에서 개발된 응용 프로그램의 대부분은 자동설치같은 기능은 제공하지 않는게 대부분입니다. 자동설치란, 설치시 옵션을 몇가지 넣으면 사용자의 특별한 입력 없이 자동적으로 설치되는 것을 의미하는데, 우리나라에서는 어떻게든 동의라는 체크버튼을 만들고 어떻게든 다음 또는 Next 버튼을 누르게끔 하고 있습니다. 게다가 지원되는 옵션도 없는게 대부분이구요.
이에 비해 타국 제품들(물론 전부다는 아니지만, 대부분)은 옵션이나 설정 파일 변경 만으로 자동적으로 설치되게 끔 지원하고 있습니다. 최소한 정품이면 대게 지원하고 있습니다. 이런 자동 설치에 대한 어느정도의 선 지식이 필요합니다.

세번째 Windows Server 군에 대한 지식이 필요합니다. 보통 Infrastructure - 우리나라 말로 줄여서 인프라라고 하는데, 내부에서 쓰이는 IT 용 설비를 의미합니다. 각종 클라이언트들을 어떻게 모으고 어떻게 처리할 수 있는지를 말하는 것인데, 그 중에 Windows Server 군을 활용한 인프라 구성에 대한 지식이 필요합니다.
여기에는 제일 먼저 Windows Server 2003의 각종 기능들을 이해하고 있어야 합니다. 배포를 하던 설치를 하던 BDD 방법을 적용하려면 각종 설치 파일 및 이미지들을 담고 전달해줄 서버가 필요합니다. 이 서버의 역할을 Windows Server가 담당하게 되죠. 일단 Windows Server 서버의 기능 중 핵심적으로 활용하는 것이 Active Directory, IIS, DHCP 등인데 이 부분에 대한 전반적인 이해가 필요합니다.
대 규모 배포에서 때 필요한 사항이지만, 굳이 언급해 드리면 SQL 서버와 SMS 서버가 추가적으로 필요합니다. SQL 서버는 Database 서버로써, 현재 MS SQL Server 2005까지 나와있지만, BDD에서 지원되는 것은 아직 MS SQL Server 2000이므로 가급적 MS SQL Server 2000으로 구성해야 합니다. 그리고 SMS 서버. 많은 분들은 이 서버에 대해서 잘 알지 못하시겠지만, 약자를 풀면 아실 수 있으시리라 봅니다. System Management Server - 시스템 관리 서버 입니다. 이 SMS 서버가 하는 역할을 각 클라이언트/서버들에 대한 전반적인 관리를 할 수 있도록 도와주는 제품입니다. 각 클라이언트/서버들의 H/W, S/W 자원들에 대한 목록이나, 추가적인 응용 프로그램 배포, 패치 관리등을 수행하죠. 상당히 방대한 내용의 관리용 서버이기 때문에, 여기서 그 세세한 기능들은 말씀드리기 곤란하지만, 현재 BDD 상의 자동 운영체제 설치의 기반이라는 사실 정도만 아셔도 무방합니다.

크게 아셔야 될 부분이 3가지라고 말씀 드렸지만, 사실 더 다양한 지식도 필요합니다. 하지만, 위의 3가지에 대한 일반적인 지식들을 알고 계신다면, 보다 수월하게 BDD에 대한 진행이 가능하실 것입니다.




728x90

BDD - Business Desktop Deployment.
국내에서는 이 분야에 대해 잘 알고 있는 사람은 그다지 많지 않은 편입니다.
이 일의 정확한 의미는 운영체제(여기서는 MS Windows)를 어떻게 효율적으로 배포할 수 있는가를 가지고 만든 일종의 솔루션 이자 프레임 워크 입니다.

MS가 다양한 활동을 보여주고 있으며 다양한 사업들을 추진하고 있지만,
MS의 사업 중 가장 큰 부분을 차지 하고 있는 부분이 바로 운영체제입니다. 그 중에서도 클라이언트 운영체제에 대한 사업이 가장 크게 움직이고 있습니다.
단지, 현재 MS Windows는 대부분의 클라이언트 시장을 잠식하고 있기 때문에 딱히 운영체제 배포에 대해 그다지 신경을 안쓸 수 있겠지만, MS의 입장에서는 꼭 그렇지만은 않습니다.
이번 해, 아니 다음 해에도 클라이언트 운영체제인 Windows Vista를 발표할 만큼 MS에서는 끊임 없는 클라이언트 운영체제 개발에 열중하고 있습니다.

그런데, 실제 이런 운영체제 발표 이면에는 운영체제를 어떻게 배포할까에 대한 많은 문제들이 있습니다. 게다가, 설치해야 할 대상이 한 두대도 아니고, 수백대, 수천대라면(개인 사업자라기 보단, 대기업이나 중기업 정도의 규모) 무척 도전적인 작업이 될 것입니다.

이런 큰 규모의 배포에 대해 MS는 많은 신경을 썼으며, 다양한 방법들을 제시해 왔습니다.
이것을 한데 모아 정리한 것이 바로 이 BDD 입니다.

과거 MS에서는 자동으로 배포 할 수 있도록 운영체제 안에 넣기 시작했습니다. 물론 Windows 9X 같은 운영체제는 막 Windows에 대한 시작이나 다름 없었기 때문에, 배포에 대해서 별 신경은 안썼습니다. 아니 정확히는 배포 자체에 대한 문제점을 알지 못했다고 보는 것이 나을 것입니다.

하지만, Windows 9X를 판매하고 난 뒤에 MS에서는 이 배포에 관련된 문제가 많다는 것을 알게 되었으며, 운영체제 자체의 안정성이 무척 중요하다는 사실을 깨닫게 된것입니다.
그래서 Windows 2000에서 부터 자동적으로 운영체제가 설치될 수 있는 방법을 하나씩 만들어 제시하게 되었습니다.간혹 어둠의 경로나 아니면 컴퓨터 전문가에게 받은 운영체제 CD 중에 CD키를 안넣고도 자기가 알아서 쭉 설치되는 운영체제 설치 CD를 보신적이 있을 것입니다.(물론 그런 것 보신적은 없어도 그런 CD가 있다는 것을 아시는 분도 있을지 모르겠군요). 이런 자동 설치 CD같은 것이 바로 자동 설치 기능을 활용한 설치 CD인 것입니다.

이 것이 바로 BDD의 효시 였으며, 이른바 버전 1.0입니다.
이런 방법들을 모아, 자동적으로 운영체제를 설치하고 구성하는 것을 제공했습니다. 과거 Windows 9X를 쓰던 분들이 쉽게 Windows 2000으로 넘어올 수 있도록 다양한 방법을 제시하고, 이후 Windows XP에서는 보다 이런 부분을 강화해서 구성해 BDD에 추가했습니다.

그렇지만, 운영체제 설치 시디 자체의 배포에 대해 많은 한계에 부딪히게 되었습니다.
제일 큰 문제는 역시 수많은 PC들에게 설치를 하려면 그 수많은 PC 수 만큼의 설치 미디어가 필요했고, 거기에 그 설치 시작을 하기 위한 수많은 관리자들이 필요했습니다.
이 또한 문제였죠. 게다가 운영체제를 한번 설치 들어가게 되면 보통 1시간 이상의 시간이 소요 되었으며, 각종 업무용 응용 프로그램에 각종 H/W 드라이버들까지 설치하다 보면, 1대의 PC당 5시간 또는 그 이상의 시간을 보내게 되는 경우도 있습니다.
운영체제 한번 갈아 업는데 많은 시간과 인력이 소요되는 것이죠.

이를 이번 BDD 2.X에서는 대폭적인 개선을 하게 됩니다.
이젠 배포 자체를 파일 설치 기반이 아닌 Ghost와 같은 이미지 기반의 배포로 진행을 할 수 있게 만들어 준 것입니다. 게다가 CD와 같은 미디어 기반이 아닌 네트워크 상에서 동작할 수 있도록 다양한 기능들을 엮은 것입니다.
단, 여기서 만들어진 기능들은 밑바닥 부터 구성한 것이 아니라, 기존에 있던 기능들을 최대한 활용하여 일종의 모음집 같은 것입니다. 기존의 배포에 관련된 각종 기술들을 연계 조합을 했다고나 할까요?

이런 다양한 상황들과 역사들 속에서 BDD는 탄생했고 지금까지 BDD 2.5를, 이제 Windows Vista의 배포를 위해 BDD 3.0까지 진행하고 진화되고 있습니다.

현재 제가 하고 있는 일이 바로 이 BDD라는 분야 입니다.


728x90

+ Recent posts

728x90