기술자료

DBMS, DB 구축 절차, 빅데이터 기술 칼럼, 사례연구 및 세미나 자료를 소개합니다.

DB2 설치 가이드 Part 5: 배포 스트립트 작성

기술자료
DBMS별 분류
DB2
작성자
admin
작성일
2021-02-23 14:59
조회
1137

DB2 설치 가이드 Part 5: 배포 스트립트 작성

DB2 제품을 다른 컴퓨터에 배포하기 위해서는 소프트웨어 배포 도구를 사용하거나 컴퓨터에서 실행할 수 있는 스크립트 작성을 위한 패키지를 만들어야 한다 . 이번 회에서는 Linux 와 UNIX 플랫폼에서 배포 스크립트를 만드는 방법과 픽스 팩을 배포하는 방법을 알아본다 .<연재순서>
1회 DB2 설치 가이드 Part 1: 배포계획
2회 DB2 설치 가이드 Part 2: 설치방법
3회 DB2 설치 가이드 Part 3: 응답파일 작성
4회 DB2 설치가이드 Part 4: 배포 패키지와 스크립트 작성
5회 DB2 설치가이드 Part 5: 배포 스크립트 작성

배포 스크립트는 일반적으로 셸 스크립트로 작성되지만 Perl, Java™ 또는 C 를 포함하여 여러 언어를 사용할 수 있다 . 배치 파일을 사용할 수도 있다 . 이 스크립트는 DB2 설치 절차에서 처리하지 않는 DB2 설치 및 구성 부분을 처리하는 래퍼로 생각할 수 있다 . 대상 컴퓨터에서 배포 프로세스의 일부로 스크립트를 실행한다 .응답 파일을 완전히 만든 경우 배포 스크립트 작성이 간단할 수 있지만 , 특히 설치를 수행하는데 응답 파일을 사용하지 않는 다면 복잡할 수도 있다 .예제를 읽을 경우 , /share 는 배포되어야 할 모든 컴퓨터에서 /share 로 마운트되는 원격 파일 시스템임을 알 수 있다 . 공유 파일 시스템을 사용할 수 없는 경우 파일 시스템을 원격으로 마운트하거나 파일 시스템을 자동으로 마운트 또는 마운트 해제를 할 수 있도록 스크립트 작성이 가능하다 . 파일 시스템을 마운트하는 방법은 이 글의 주제를 벗어나기 때문에 여기서 설명하지 않는다 .Linux 와 UNIX 플랫폼에서는 NFS, AFS, DFS 또는 수많은 비 로컬 파일 시스템 등이 파일 시스템들이다 . 그러나 Samba 파일시스템은 사용해선 안 된다 . 그 이유에 대해서는 < DB2 설치가이드 Part2: 설치방법 > 를 참고하면 된다 .Windows 플랫폼에서는 Samba 파일 시스템과 네트워크 액세스 가능 드라이브가 모두 지원된다 .본 글에서는 예제로 IBM Data Server Client 제품을 사용했지만 , 설치 이미지로 패키지화된 모든 제품에서 동일한 단계를 거친다 .

응답 파일 설치의 배포

응답 파일 설치를 배포하는 것은 가장 간단한 작업이다 . 제품 정의 , 구성요소의 선택 , 인스턴스 설정이 대부분 응답 파일에 의해 캡슐화되어 있기 때문이다 . 다음과 같이 응답 파일을 실행하여 여러 작업을 일괄적으로 수행한다 .UNIX, Linux플랫폼의 경우 ,090109_efw1.bmpWindows플랫폼의 경우 ,090109_efw2.bmp이 예에서 사용자의 정의된 응답 파일은 다음과 같은 위치에 있다 .090109_efw3.bmp

설치 후 작업

DB2 Data Server Client 를 사용하기 위해서는 원격 서버와 데이터베이스를 카탈로그로 만들어야 한다 .db2cfimp사용으로 이러한 연결을 카탈로그로 만든 다음 ,db2cfexp를 사용해서 연결들을 익스포트 (export) 할 수 있다 . 또는 수동으로 연결 카탈로그를 만들 수 있다 .예를 들면 Linux 와 UNIX 플랫폼에서 db2cfexp 유틸리티를 사용하여 db2inst1 이라는 인스턴스에 대한 구성 파일을 만들 수 있다 . 또한 db2cfimp 유틸리티를 사용하여 해당 구성을 다음과 같이 복제할 수 있다 .090109_efw4.bmp생성된 동일한 인스턴스로 카탈로그를 수동으로 만들려면 다음을 수행한다.090109_efw5.bmp
후자의 경우 다른 파일에 카탈로그 명령을 넣은 다음 CLP 에서 해당 파일을 읽도록 하는 것이 더 좋다 .090109_efw6.bmp그런 다음 다른 파일을 사용하여 다음의 예에 표시된 것처럼 다른 DB2 설치 작업을 수행할 수 있다 .090109_efw7.bmpWindows 플랫폼에서도 명령문은 유사하다 . 그러나 DB2 인스턴스를 설정하기 위해서는 다음과 같이DB2INSTANCE환경 변수를 사용하고db2cmd /C를 사용하여 DB2 명령을 실행한다 .090109_efw8.bmp

서버 고려사항

일반적으로 서버를 배포할 때는 , 예를 들어 데이터베이스 , 테이블 스페이스 , 테이블을 만들고 설정하기 위한 추가 명령이 필요하다 . 클라이언트에서와 마찬가지로 스크립트를 한 개 만들고 db2 tvf 명령을 사용하여 실행하면 간단하게 배포할 수 있다 .
UNIX 플랫폼의 병렬 환경에서는 필요에 따라 배포 스크립트에서 .rhosts 또는 db2nodes.cfg 파일을 업데이트할 수 있어야 한다 .db2_install을 사용한 설치 배포 (Linux, UNIX)db2_install 명령문을 사용하여 설치를 배포할 수 있다 . 이 방법은 응답 파일 작성 단계 및 응답 파일 설치에서의 모든 편의 (conveniences) 를 사용하지 않는다 . 설치 단계는 상대적으로 간단하다 .090109_efw9.bmp
제품 식별은 각 제품에 대해 유일하다 . 사용 가능한 제품 식별의 목록을 보려면 매개변수 없이db2_install명령을 실행한다 . 추가 언어를 지정하려면 L 옵션을 사용한다 .db2_install명령문에 대한 자세한 내용은를 참조하면 된다 .배포 스크립트를 사용하여 사용자 , 인스턴스 , DAS 를 만들 수 있다 . 사용자를 만드는 것은 플랫폼별 기능이므로 자세한 내용은 < 운영 체제 매뉴얼 > 을 참조한다 . 인스턴스와 DAS 생성은에 설명되어 있다 .설치 후 작업에 대한 자세한 내용은 이 문서의 앞부분에서 설명한 < 응답 파일 설치의 배포 > 부분을 참고 하면 된다 .

픽스 팩 배포

DB2 제품의 기존 설치를 업그레이드하는 것은 초기 설치만큼 중요하다 . 다행히 업그레이드는 일반적으로 수행이 보다 쉽다 .http://www.ibm.com/software/data/db2/udb/support.html에서 픽스 팩을 다운로드 할 수 있다 .픽스 팩의 readme 와 픽스된 APAR 의 목록을 항상 읽어야 한다 . 이 목록들은 FTP 사이트의 픽스 팩 또는 다운로드 웹 페이지의 링크와 동일한 디렉토리에 있다 . readme 는 픽스 팩 설치 방법에 대한 정보와 일반적으로 알려진 문제점 또는 해결 방법에 대한 특정 정보를 제공한다 . 향후 픽스 팩이 출시될 때 발생할 수 있는 모든 변경사항과 추가 정보도 readme 에서 참조할 수 있다 .Linux 와 UNIX 플랫폼의 경우 ,클라이언트의 내부 업그레이드는 다음과 같이 간단하게 수행할 수 있다 .1. 새로운 클라이언트를 다운로드 한다 .2. 클라이언트 이미지를 다음 예와 같이 /share 에 넣는다 .090109_efw10.bmp3. 다음의 예와 같이 픽스 팩에 의해 필요한 작업을 배포 스크립트에 추가한다 .090109_efw11.bmp
090109_efw12.bmp
DB2 9.5 부터db2iupdt단계가 installFixPack 에 의해 자동으로 수행된다 . 픽스 팩을 서버에 적용하는 경우 , 먼저 인스턴스를 모두 중지한 후 다시 시작해야 한다 . 병렬 환경에서는 인스턴스를 소유한 노드에서만 이 작업을 수행해야 한다 .여러 제품이 설치되어 있는 경우 , 예를 들어 WebShpere Information Integrator Relational Wrappers 가 DB2 Enterprise Server Edition 에 설치된 경우 개별 제품에 대한 픽스 팩 대신 Universal 픽스 팩을 사용한다 .새로운 방법의 업그레이드를 사용하는 경우 새로운 위치에 설치하고 해당 위치에서 테스트한 다음 인스턴스를 새 복사본으로 업데이트해야 한다 . 이 작업은 필요한 곳에서 단계적으로 수행될 수 있다 . 이러한 작업은 다운타임과 알 수 없는 오류를 최소화해야 하는 서버에 더욱 중요하다 .이 경우 초기 설치에서 사용한 이전 응답 파일은 새로 설치할 경우 기본으로 사용할 수 있기 때문에 보존해야 한다 . 인스턴스나 DAS 를 처리하는 부분을 제거하고 파일 키워드를 통해 새 설치 경로를 사용한다 . 앞에서 설명한 것과 같이 , 설치를 배포한 다음db2iupdt도구를 사용하여 인스턴스를 새 복사본으로 이동한다 . 이렇게 하면 프로덕션 애플리케이션을 중지하지 않고도 코드를 배포할 수 있으며 , db2iupdt 를 실행할 수 있는 한 DB2 서버와 같은 애플리케이션만 중지하면 된다 .Windows플랫폼의 경우 ,가장 먼저 수행할 단계는 필요한 픽스 팩을 준비해야 한다 . 컴퓨터에 배포했던 모든 제품에 대한 픽스 팩을 구해야 한다 . 이 작업은 특정 컴퓨터에 하나 이상의 DB2 제품을 설치한 경우에 중요하며 필수적이다 .컴퓨터에 설치된 픽스 팩은 모두 픽스 팩을 설치할 때 사용이 가능해야 하며 , 압축이 풀린 상태여야 한다 . 복사본에서 업데이트되고 있는 모든 DB2 제품이 같은 레벨에 있어야 하기 때문이다 . DB2 Setup 마법사가 컴퓨터에 설치되어 있는 모든 이미지에 액세스할 수모든 픽스 팩은 같은 위치에 저장해야 한다 . 이렇게 해야 설치하는 동안 Installer 가 필요한 제품에 대한 픽스 팩을 찾을 수 있다 . 모든 이미지는 같은 상위 디렉토리 아래에 있는 하위 디렉토리에 압축을 푼 상태로 있어야 한다 .픽스 팩은 자체 추출되는 zip 파일이다 . 이들을 같은 디렉토리에서 압축을 푼다 . 압축을 풀고 나면 다음 예와 같은 디렉토리 구조가 만들어진다 .090109_efw13.bmp픽스 팩을 같은 디렉토리에 추출한 후 응답 파일을 사용하여 초기 제품 설치에서와 마찬가지 방법으로 픽스 팩을 배포할 수 있다 .초기 설치를 변경할 필요가 없는 경우 초기 설치를 배포할 때 사용했던 것과 같은 응답 파일을 사용한다 . 만약 응답 파일을 작성할 경우 , 샘플 응답 파일을 사용한다 . 샘플 응답 파일은 \db2\windows\samples 디렉토리에 있다 .많은 경우 응답 파일에서 유일하게 변경해야 할 것은 LIC_AGREEMENT=ACCEPT 를 지정하여 라이선스 조항 및 규정을 수락하는 것이다 . 추가 데이터베이스 매니저 구성 매개변수 또는 프로필 레지스트리 변수를 설정하기 위해 설치하려는 경우 이러한 내용을 응답 파일에 지정할 수 있다 .DB2 라이브러리가 사용 중인 상태여부가 확실하지 않은 경우 KILL_PROCESSES 를 YES 로 설정한다 . KILL_PROCESSES 키워드는 모든 DB2 인스턴스를 중지시키며 DB2 라이브러리를 액세스할 수도 있는 모든 애플리케이션을 바로 중지시킨다 . 중지시키고 싶지 않은 애플리케이션이 있다면 설치할 때 이러한 애플리케이션이 실행 중인지 확인해야 한다 .setup.exe 에 f 매개변수를 지정할 수도 있다 . 그러나 설치가 가능한 한 일관적으로 수행될 수 있도록 응답 파일에 많은 옵션을 설정해야 한다 .

필자소개

Andrew Hiden: DB2 Up & Running Architect
Darin McBride: DB2 Installation and Up & Running Developer
Jason Shayer: DB2 Information Development출처 : KDUG (http://www.kdug.kr/)제공 : DB포탈사이트 DBguide.net