설치 전 준비사항
본 장에서는 OpenFrame Base를 설치하기 전에 필요한 하드디스크 공간 용량 확인 및 설치용 속성 파일 작성에 대해 기술한다.
1. 개요
OpenFrame Base(이하 Base)를 설치하기에 앞서 필요한 준비사항은 다음과 같다.
-
시스템 요구사항 확인
-
디스크 용량 확인
-
설치용 속성 파일 작성
-
테이블 영역 생성
-
UNIX ODBC 환경설정
2. 시스템 요구사항
Base 설치를 위한 시스템 요구사항은 다음과 같다.
요구사항 | |
---|---|
Platform |
Solaris 11(SunOS 5.11) 이상 (32bit, 64bit) |
Linux x86 2.6 이상 (32bit, 64bit) |
|
Linux ia64 2.6 이상 (32bit, 64bit) |
|
Hardware |
최소 5GB 공간 |
최소 8GB 이상 메모리 공간 |
|
Database |
Tibero 6 FS07 |
Compiler |
MF-COBOL 컴파일러, NET-COBOL 컴파일러, OpenFrame COBOL 컴파일러 |
OpenFrame PL/I 컴파일러 |
|
OpenFrame ASM 컴파일러 |
IBM 혹은 HP-UX Platform은 TmaxSoft의 기술 지원에 문의한다. |
3. 디스크 용량 확인
Base 설치에 앞서 UNIX 시스템에 남아있는 디스크의 여유공간을 확인한다. Base를 설치하기 위해서는 최소 200MB의 여유공간을 필요로 한다. 하드웨어 요구사항에 대한 자세한 내용은 시스템 요구사항을 참고한다.
UNIX 시스템에서 하드웨어의 여유공간을 확인하려면 UNIX 프롬프트에서 df 명령어를 실행한다.
다음은 Linux x86 운영체제를 사용하는 머신에서 df 명령어를 실행하여 설치할 디렉터리에 연결된 디스크 용량이 얼마나 남아있는지 확인하는 예제이다. 출력 결과를 읽기 쉬운 단위로 표시하기 위해 –h 옵션을 사용한다.
$ df -h /home/oframe
다음은 위에서 실행한 명령의 결과이다.
Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos_oflinux64-home 144G 49G 96G 34% /home
/home/oframe 디렉터리는 /dev/mapper/centos_oflinux64-home 디스크에 속해 있고, 전체 용량 144GB 중 사용한 용량은 49GB, 남은 용량은 96GB로 전체의 34%가 사용 중인 것을 확인할 수 있다.
4. 설치용 속성 파일 작성
Base는 설치용 속성 파일에 값을 설정한 후 설치 스크립트를 실행하는 방법으로 설치된다. 즉, Base 설치를 위한 각종 속성 내용을 하나의 파일에 모두 작성한 후 인스톨러를 실행하면 인스톨러는 속성 파일에 작성된 설정 내용을 읽어 들여 설정된 항목에 따라 설치를 진행한다.
본 절에서는 OpenFrame 설치용 속성 파일에 작성되어야 하는 항목에 대해 기술한다. 설치용 속성 파일의 예제 샘플은 설치용 속성 파일 예제에서 확인할 수 있다.
|
4.1. OpenFrame 디렉터리 설정
Base를 설치할 디렉터리를 설정하는 항목으로, OpenFrame 제품이 설치되는 절대 경로를 입력한다. 설정된 디렉터리는 이후 모든 설정 파일에서 OpenFrame 홈 디렉터리로 사용되며, Base를 기반으로 하는 다른 OpenFrame 제품군도 동일한 디렉터리에 설치되어야 한다.
다음은 OpenFrame의 홈 디렉터리를 설정하는 항목이다.
OPENFRAME_HOME=<path>
항목 | 설명 |
---|---|
OPENFRAME_HOME |
UNIX의 디렉터리 또는 파일 경로를 지정한다. |
다음은 OpenFrame 홈 디렉터리를 /home/oframe/OpenFrame으로 설정하는 예이다.
OPENFRAME_HOME=/home/oframe/OpenFrame
4.2. Tmax 환경설정
OpenFrame 엔진에 포함된 Tmax에 관련된 환경을 설정한다.
TP_HOST_NAME=<name> TP_HOST_IP=<ip> TP_SHMKEY=<key> TP_TPORTNO=<port> TP_UNBLOCK_PORT=<port> TP_NODE_NAME=<node_name> TP_NODE_LIST=<node_list> TCACHE_SHMKEY=<key>
항목 | 설명 |
---|---|
TP_HOST_NAME |
OpenFrame을 설치할 컴퓨터의 호스트명을 숫자(0~9), 영문자(A~Z, a~z), 특수문자(@, #, $, -)로 이루어진 문자열로 설정한다. |
TP_HOST_IP |
OpenFrame을 설치할 컴퓨터의 IP 주소를 10진수로 설정한다. |
TP_SHMKEY |
Tmax에서 사용되는 공유 메모리 키를 10진수 또는 0x로 시작하는 16진수로 설정한다. |
TP_TPORTNO |
Tmax에서 사용되는 기본 포트 번호를 10진수로 설정한다. |
TP_UNBLOCK_PORT |
Tmax에서 사용되는 Unblock 포트 번호를 10진수로 설정한다. |
TP_NODE_NAME |
OpenFrame 및 Tmax에서 사용될 현재 서버의 노드명을 숫자(0~9), 영문자(A~Z, a~z), 특수문자(@, #, $, -)로 이루어진 문자열로 설정한다. |
TP_NODE_LIST |
OpenFrame 시스템을 이루는 모든 노드 목록이다. 각 노드 이름은 세미콜론(;)으로 구분한다.
|
TCACHE_SHMKEY |
OpenFrame의 환경설정 값이 관리되는 Tmax TCache 공유 메모리 키를 10진수 또는 0x로 시작하는 16진수로 설정한다. |
|
다음은 Tmax 관련 환경설정의 예이다.
TP_HOST_NAME=ofLinux64 TP_HOST_IP=192.168.105.61 TP_SHMKEY=52878 TP_TPORTNO=8989 TP_UNBLOCK_PORT=8199 TP_NODE_NAME=NODE1 TP_NODE_LIST=NODE1 TCACHE_SHMKEY=39101
4.3. 저장 장치 환경설정
OpenFrame에서 사용되는 카탈로그, 저장 장치 및 데이터셋 등에 관련된 환경 값을 설정하는 항목이다.
MASCAT_NAME=<dataset> MASCAT_CREATE=YES|NO DEFAULT_VOLSER=<volume> VOLADD_DEFINE=YES|NO ODBC_USERNAME=<name> ODBC_PASSWORD=<password> ODBC_DATABASE=<name> TSAM_DBTYPE=TIBERO DATASET_SHMKEY=<key> TSAM_INCLUDE1= <path> TSAM_INCLUDE2= <path> TSAM_INCLUDE3= <path>
향목 | 설명 |
---|---|
MASCAT_NAME |
OpenFrame에서 마스터 카탈로그로 사용할 데이터셋 이름을 설정한다. |
MASCAT_CREATE |
마스터 카탈로그를 설치과정에서 자동으로 생성할지 여부를 설정한다.
|
DEFAULT_VOLSER |
OpenFrame에서 기본 볼륨으로 사용되는 볼륨 이름을 설정한다. |
VOLADD_DEFINE |
설치 과정에서 기본 볼륨을 자동으로 생성할지 여부를 설정한다.
|
ODBC_USERNAME |
ODBC를 이용하여 데이터베이스에 접속하기 위한 사용자 계정을 지정한다. 사용하는 데이터베이스의 사용자 계정을 입력해야 하며 숫자(0~9), 영문자(A~Z, a~z), 특수문자(@, #, $, -)로 이루어진 문자열로 설정한다. |
ODBC_PASSWORD |
ODBC를 이용하여 데이터베이스에 접속하기 위한 사용자의 패스워드를 지정한다. |
ODBC_DATABASE |
접속하려는 데이터베이스 이름을 지정한다. |
TSAM_DBTYPE |
TSAM에 사용되는 데이터베이스의 타입을 지정한다.
|
DATASET_SHMKEY |
데이터셋 할당 정보를 관리하기 위한 공유 메모리 키를 10진수로 설정한다. |
TSAM_INCLUDE1, TSAM_INCLUDE2, TSAM_INCLUDE3 |
TSAM 프리컴파일에 사용되는 시스템 컴파일 헤더 경로를 지정한다. |
다음은 저장 장치에 대한 환경설정의 예이다.
MASCAT_NAME=SYS1.MASTER.ICFCAT MASCAT_CREATE=YES DEFAULT_VOLSER=DEFVOL VOLADD_DEFINE=YES ODBC_USERNAME=tibero ODBC_PASSWORD=tmax ODBC_DATABASE=oframe TSAM_DBTYPE=TIBERO DATASET_SHMKEY=50382 TSAM_INCLUDE1=/usr/include TSAM_INCLUDE2=/usr/local/include TSAM_INCLUDE3=/usr/lib/gcc/x86_64-redhat-linux/4.8.2/include
4.4. 컴파일러 설정
OpenFrame에서 사용되는 코볼 컴파일러 제품을 설정하는 항목이다. 인스톨러는 설정된 제품에 해당하는 라이브러리를 사용할 수 있도록 링크를 걸어준다. 설치 후에는 링크만 변경하여 사용이 가능하다.
COBOL_COMPILER=MFCOBOL|OFCOBOL|NETCOBOL|DUMMY
향목 | 설명 |
---|---|
COBOL_COMPILER |
설치할 때 기본으로 사용할 코볼 컴파일러 제품을 지정한다.
|
다음은 컴파일러 제품을 OFCOBOL로 지정한 예이다.
COBOL_COMPILER=OFCOBOL
4.5. OpenFrame 타입 설정
OpenFrame 시스템에서 사용할 타입을 지정한다.
BATCH_OS_TYPE = <MVS|MSP> OpenFrame OS Type CPM_PATH=Default CPM type <EBCASCUS|EBCASCJP|JEFASCK(MSP/XSP)>
향목 | 설명 |
---|---|
BATCH_OS_TYPE |
OpenFrame/Batch 시스템에서 JCL을 실행할 때에 호환되는 OS를 지정한다.
|
CPM_PATH |
OpenFrame의 dsview, spfedit 툴에서 Double Character Set을 변환하기 위하여 기본으로 사용하는 CPM 타입을 지정한다.
|
다음은 CPM 타입을 EBCASCKR.cpm 지정한 예이다.
BATCH_OS_TYPE=MVS CPM_PATH=EBCASCKR.cpm
4.6. 라이선스 환경설정
OpenFrame을 정상적으로 실행하려면 반드시 라이선스 파일을 발급받아 지정된 디렉터리로 복사해야 한다. 인스톨러를 실행하기 전 발급받은 라이선스 파일을 지정한 디렉터리에 넣어두면 인스톨러가 자동으로 해당 라이선스 파일을 지정된 라이선스 디렉터리로 복사한다. 여기서 지정하는 디렉터리가 최종 라이선스 파일의 위치로 인식되는 것이 아니라는 점에 유의한다.
OPENFRAME_LICENSE_PATH=<path> TMAX_LICENSE_PATH=<path>
향목 | 설명 |
---|---|
OPENFRAME_LICENSE_PATH |
발급받은 OpenFrame 라이선스 파일들이 위치하는 절대 경로를 지정한다. OpenFrame 라이선스는 설치하는 제품별로 여러 개의 파일로 구성되어 있다. 여기서 설정한 디렉터리의 라이선스 파일들은 ${OPENFRAME_HOME}/license 디렉터리로 복사된다. |
TMAX_LICENSE_PATH |
OpenFrame의 Tmax 라이선스 파일이 위치하는 절대 경로를 지정한다. 설정된 디렉터리의 라이선스 파일은 ${OPENFRAME_HOME}/core/license 디렉터리로 복사된다. |
다음은 라이선스 파일이 위치한 절대 경로를 지정한 예이다.
OPENFRAME_LICENSE_PATH=/home/oframe/licenses/OPENFRAME TMAX_LICENSE_PATH=/home/oframe/licenses/TMAX
OpenFrame에서 라이선스를 발급하는 모듈은 Base, Batch, TACF, OSC, OSI, HiDB, AIM이다. |
5. 테이블 영역 생성
데이터베이스에 기본 볼륨으로 사용할 테이블 영역을 생성한다.
다음은 Tibero를 사용하여 테이블 영역을 생성하는 예이다. OpenFrame에서 기본 볼륨으로 사용할 DEFVOL이라는 테이블 영역을 300MB 크기로 생성하여 사용한다.
SQL> CREATE TABLESPACE "DEFVOL" DATAFILE 'DEFVOL.dbf' SIZE 300M AUTOEXTEND ON;
시스템 관련 데이터를 관리할 수 있는 OFM_REPOSITORY 테이블 영역을 300MB 크기로 생성하여 사용한다.
SQL> CREATE TABLESPACE "OFM_REPOSITORY" DATAFILE 'OFM_REPOSITORY.dbf' SIZE 300M AUTOEXTEND ON;
6. UNIX ODBC 환경설정
Base에서는 DBMS_LOCK 패키지를 사용하므로, UNIX용 ODBC 드라이버와 연동해야 한다.
다음은 UNIX ODBC Manager 설치 및 드라이버 연동에 대한 설명이다.
-
http://www.unixodbc.org에 접속하여 UNIX ODBC Manager를 설치한다. 해당 페이지 내의 왼쪽 상단 [Download] 탭을 선택해서 압축 파일을 다운 받아 설치한다.
다음은 UNIX ODBC Manager 설치의 예이다.
$ tar -zxvf unixODBC-2.3.4.tar.gz $ cd unixODBC-2.3.4 $ ./configure --prefix=/home/oframe/unixODBC --sysconfdir=/home/oframe/unixODBC/etc $ make $ make install
-
UNIX ODBC는 기본적으로 /usr/local에 설치된다. configuration을 수행할 때 prefix 옵션을 기술하여 설치 경로를 변경할 수 있다.
-
환경설정 파일은 기본적으로 /etc에 설치된다. configuration을 수행할 때 sysconfdir 옵션을 기술하여 환경설정 파일을 변경할 수 있다.
-
-
사용자 계정의 환경변수에 UNIX ODBC 관련 변수를 추가한다.
다음은 환경변수 추가의 예이다.
export ODBC_HOME=$HOME/unixODBC export PATH=$ODBC_HOME/bin:$PATH export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ODBC_HOME/lib export LD_LIBRARY_PATH_64=$LD_LIBRARY_PATH_64:$ODBC_HOME/lib export ODBCINI=$HOME/unixODBC/etc/odbc.ini export ODBCSYSINI=$HOME
항목 설명 ODBCINI
기본 경로(/etc)가 아닌 다른 경로에 위치한 odbc.ini를 사용할 경우 설정한다.
ODBCSYSINI
기본 경로(/etc)가 아닌 다른 경로에 위치한 odbcinst.ini를 사용할 경우 설정한다.
-
UNIX ODBC 설정 파일(odbc.ini, odbcinst.ini)을 기술한다.
odbc.ini는 ODBC 드라이버의 접속정보를 기록하는 설정 파일이고, odbcinst.ini는 ODBC Driver가 정의된 파일이다. odbc.ini에서 드라이버의 경우 odbcinst.ini에서 사용하는 Section(절) 이름과 동일하게 작성해야 한다. odbc.ini에서 [ODBC_datasource_name] 절의 경우 DSN 이름과 동일하게 작성해야 한다.
[ODBC_datasource_name] Description = description_of_data_source Driver = driver_name DSN = ODBC_datasource_name attribute1 = value attribute2 = value . . attribute(n-1) = value attributen = value
-
odbc.ini
다음은 MS SQL과 Tibero 기반의 odbc.ini의 예이다.
[MSSQLSERVER] Description = MSSQL Server 2014 DSN Driver = ODBC Driver 11 for SQL Server DSN = MSSQLSERVER Server = 192.168.37.44 Port = 1433 UserID = tibero Password = tmax MARS_Connection = Yes [TIBEROSERVER] Description = Tibero ODBC driver for Tibero5 Driver = Tibero DSN = TIBEROSERVER SID = oframe User = tibero Password = tmax
-
odbcinst.ini
다음은 MS SQL과 Tibero 기반의 odbcinst.ini의 예이다.
[ODBC Driver 11 for SQL Server] Description=Microsoft ODBC Driver 11 for SQL Server Driver=/opt/microsoft/msodbcsql/lib64/libmsodbcsql-11.0.so.2270.0 Threading=1 UsageCount=1 [Tibero] Description = Tibero ODBC driver for Tibero6 Driver = /home/oframe/tibero6/client/lib/libtbodbc.so Setup = FileUsage = CPTimeout = CPReuse = Driver Logging = 7 [ODBC] Trace = NO TraceFile = /home/oframe/odbc.log ForceTrace = Yes Pooling = No DEBUG = 1
MS SQL 드라이버의 경우 설치된 msodbcsql/lib64에서 libmsodbcsql.so를 지정하고, Tibero 드라이버의 경우 TB_HOME의 client/lib에서 libtbodbc.so를 지정한다. 각각 DB의 섹션 이름은 odbc.ini에서 사용하는 Driver 이름과 동일하게 작성해야 한다. ODBC 절의 경우 ODBC 로그를 남긴다. Trace를 YES로 하면 TraceFile에 지정한 경로에 기록한다.
-
-
UNIX ODBC 버전 확인과 설정 파일을 확인한다.
odbcinst -j를 실행하면 'DRIVERS', 'SYSTEM DATA SOURCES' 항목에 odbc.ini, odbcinst.ini 파일을 참조하는 위치를 확인할 수 있다.
$ odbcinst -j unixODBC 2.3.2 DRIVERS............: /home/oframe/odbcinst.ini SYSTEM DATA SOURCES: /home/oframe/unixODBC/etc/odbc.ini FILE DATA SOURCES..: /home/oframe/ODBCDataSources USER DATA SOURCES..: /home/oframe/odbc.ini SQLULEN Size.......: 8 SQLLEN Size........: 8 SQLSETPOSIROW Size.: 8
-
UNIX ODBC Driver 연동 테스트를 한다. odbc.ini, odbcinst.ini 파일을 설정하고 isql을 사용해서 ODBC로 DB에 접속한다.
isql [DSN_NAME] [db_username] [db_password]
다음은 isql을 사용해서 DB에 접속하는 예이다.
$ isql oframe tibero tmax +---------------------------------------+ | Connected! | | | | sql-statement | | help [tablename] | | quit | | | +---------------------------------------+ SQL>
위와 같이 접속 프롬프트가 보여지면 정상적으로 DB에 연결된 상태이다.