테스트 환경 구축을 위해선 가상컴퓨터 소프트웨어와 리눅스 OS가 필요한데, 다음과 같이 다양한 선택권이 있다. 

[ 가상컴퓨터 소프트웨어 ]

1. VMware

2. VirtualBox

3. VirtualPC

[ 리눅스 ]

1. Red Hat Enterprise Linux ( Oracle Enterprise Linux / CentOS )

2. SUSE Enterprise Linux ( openSUSE )

가상컴퓨터 소프트웨어는 VirtualBox나 VirtualPC와 같이 무료 소프트웨어가 있기는 하나 (개인적인 생각에는) 안정성과 편의성이 다소 떨어지는 측면이 있기 때문에, 부득이 하게 유료 소프트웨어인 VMware 을 사용할 예정이다.

물론 VMware에도 VMware Player나 VMware Server 같은 무료 제품들이 있기는 하나, 기능상의 제약이 있기 때문에 유료버전인 VMware Desktop을 이용해서 테스트 환경을 구축할 것이다.

리눅스의 경우, Red Hat과 SUSE는 상용화 되어있고, Oracle은 DB2 엔지니어 입장에서 왠지 모르게 쓰기가 싫어서... 예전부터 친숙했던 빨간 모자 계열의 리눅스인 CentOS를 사용할 계획이다.

CentOS (The Community ENTerprise Operation System) 는 RHEL (Red Hat Enterprise Linux) 의 클론버전으로써, 몇 가지 소프트웨어/드라이버를 제외하고는 RHEL와 똑같기 때문에 안정성이 뛰어난 편이어서 DB2 테스트 수행에 적격인 리눅스이다.

결론적으로, VMware Desktop으로 가상컴퓨터를 만들고 OS로는 CentOS를 설치한 후, DB2 UDB for Linux를 설치하여 테스트 베드를 구축할 예정이다.

‘IBM DB2 UDB for LUW’라는 용어에서 ‘LUW’의 의미는 ‘Linux, Unix, Windows’의 약어이며, 이는 DB2가 리눅스, 유닉스, 윈도우 3가지 플랫폼을 모두 다 지원한다는 의미이다.

그러나, 현재까지 DB2는 주로 Enterprise 용도로 많이 쓰여왔기 때문에 윈도우나 리눅스보다는 유닉스 환경 (주로 AIX) 에서 많이 사용되어 온 것이 사실이다.

따라서, 현업에서 DB2 고객지원을 원활하게 하기 위해서는 평소에 유닉스 환경에서 여러 가지 DB2 테스트를 해보는 것이 가장 좋으나, 대개의 경우 유닉스 서버는 (더군다나 IBM 서버의 경우) 다음과 같은 이유로 개인이 마음대로 사용할 수 없는 것이 현실이다.

1. 유닉스용 서버, 특히 AIX용 서버인 pSeries 서버는 비싸다.

2. 비싸다 보니 많은 서버를 보유하기가 현실적으로 어렵다.

3. 그러다 보니, 서버 한대를 여러 사람/어플리케이션이 사용하여 리소스가 딸린다.

4. 공동 사용이므로, 사용상 여러 제약도 따른다. (구성변경, 포맷, 재 부팅 등등)

5. 결정적으로, 회사 외부에서는 사용할 수 없다. (회사 보안 규정상, 사내 접근만 허용)

그래서, 위와 같은 문제점들을 우회하기 위한  대안이 바로 리눅스 환경을 기반으로 한 DB2 테스트 베드를 가상컴퓨터로 구축하는 것이며, 이 방안의 장단점은 다음과 같다고 볼 수 있다.

[장점]

1. 유닉스와 비슷한 환경 하에서 DB2 테스트 해볼 수 있다.

2. 가상컴퓨터 기반이므로 서버의 추가 생성에 대한 비용적 부담이 없다.

3. 가상컴퓨터 기반이기 때문에 하드웨어의 변경 또한 자유롭다. (CPU, RAM, HDD, NC 등)

4. 혼자 사용하므로, 사용에 어떠한 제약도 없다.

5. 개인용 노트북에 설치하게 되면 언제 어디서든지 사용 가능하다.

[단점]

1. 가상컴퓨터 소프트웨어는 상용 프로그램이다. (물론 무료도 있지만...)

2. 가상컴퓨터를 실행시키는 컴퓨터/노트북의 사양이 빵빵해야 된다.

몇 가지 단점에도 불구하고 이 방안이 주는 장점들이 매력적이기 때문에 (솔직히 말하면, 이거 이외에는 다른 대안이 없기에) 그 동안 많은 DB2 테스트들을 이러한 환경하에서 진행해왔었다.

그리고, 앞으로도 요러한 환경이 (큰 이변이 없는 한) 계속해서 사용될 것으로 생각되어서 그간 구축해 보았던 몇 가지 리눅스 서버 구성법들을 (까먹기 전에) 알기 쉽게 체계적으로 총 정리하여 문서화 해보려고 한다.

+ Recent posts