설명: StandAlone Agent의 프로세스를 관리를 위해 OPMN(Oracle Process Monitoring and Notification Server)을 설치하고 Agent를 추가하는 작업을 진행
기능: Process Monitoring – Agent 실행 상태 확인
Logging – 상태 이상 발생시 자동 로그 관리
Failover – Process 중지 시 자동 재 실행
l OPMN는 ODI 설치 시에는 포함되어 있지 않으므로, 별도의 Oracle 제품을 설치하여 사용하여야 한다.
l Oracle Application Server 설치 시에는 OPMN이 포함되어 있고 Oracle Product도 일부 포함하고 있는 제품이 있음
l 이미 OPMN이 설치되어 있는 경우는 OPMN 설치 순서 Skip
l OPMN이 포함되어 있는 Oracle 제품
n EPM 11.1.2, Web Tier and etc
l Web Tier는 설치 시 OPMN만 설치 가능
구성 순서
1. OPMN 설치
2. Agent 설정
3. 환경 변수 설정
4. odi_opmn_addAgent.bat
파일 수정
5. agentcreate.properties
파일 수정
6. OPMN 시작
7. Add agent
8. Start agent (OPMN)
9. Agent connection
test
l 테스트는 Windows
XP에서 수행되어 bat파일을 사용하였고, Linux 일
경우는 sh파일 사용
① OPMN 설치
A. Download Web Tier 11.1.1.2.0 (설치 풀 버전)
B. Install Oracle HTTP Server(OPMN) only
Web Tier Installation Guide: http://download.oracle.com/docs/cd/E14571_01/doc.1111/e14260/toc.htm
C.
Stop OPMN
(시작-프로그램-Web Tier instance~-
Stop Oracle Process Manager
시작-프로그램-Web Tier instance~-
Stop Oracle HTTP Server)
D. Download & patch Web Tier 11.1.1.3.0 (latest version)
② Agent 설정
A. Install ODI 11g (ODI 문서 참조)
B. Create Repository (ODI 문서 참조)
C. Create Agent (ODI 문서 참조)
D.
Odiparams.bat 파일 수정
REM #
REM # Connection retry parameters
REM #
set ODI_CONNECTION_RETRY_COUNT=3
set ODI_CONNECTION_RETRY_DELAY=7000
i. ODI_CONNECTION_RETRY_DELAY: 재시도할 시간(MicroSecond)
ii. ODI_CONNECTION_RETRY_COUNT: 재시도 횟수
E. Connection test
③ 환경 변수 설정
u Win: 시스템 -> 고급
탭 -> 환경변수
u Linux: profile 수정 or Script
추가
A. JAVA_HOME 설정
i. JAVA 버전에 따라 OPMN이 지원되지 않을 수 있으므로 최신 버전을 사용하는 것을 추천 (for example - jdk 1.6.0_23)
B. ODI_JAVA_HOME 설정
i. JAVA_HOME과 같은 경로
④ odi_opmn_addAgent.bat 파일 수정
A.
~/Oracle_ODI1/oracledi/agent/bin/odi_opmn_addAgent.bat
파일에 변수 값 설정
rem if
"%ODI_HOME%" == "" set ODI_HOME=..
rem if "%OPMN_HOME%" == "" set
OPMN_HOME=..
rem if "%INSTANCE_HOME%" == ""
set INSTANCE_HOME=..
if "%ODI_HOME%" == "" set ODI_HOME=C:\WEBTIER_HOME\Oracle_WT1\odi_standalone\oracledi\agent
if "%OPMN_HOME%" == "" set
OPMN_HOME=C:\WEBTIER_HOME\Oracle_WT1
if "%INSTANCE_HOME%" == "" set
INSTANCE_HOME=C:\WEBTIER_HOME\Oracle_WT1\instances\instance1
set CLASSPATH=%ODI_HOME%\lib\odi-standalone-agent.jar;%OPMN_HOME%\opmn\lib\opmneditor.jar
java -classpath %CLASSPATH%
oracle.odi.AddAgentToOpmn %*
CALL %INSTANCE_HOME%\bin\opmnctl reload
:ENDCOMMAND
i.
ODI_HOME: ODI 설치 폴더아래에 있는 Agent의 폴더 경로
~/Oracle_ODI1/oracledi/agent
ii.
OPMN_HOME: OPMN이 설치된 폴더 경로
~/Oracle_WT1
iii.
INSTANCE_HOME: OPMN 인스턴스
폴더 경로
~/Oracle_WT1/Instances/Instance1
⑤ agentcreate.properties 파일 수정
A.
~/Oracle_ODI1/oracledi/agent/bin/agentcreate.properties
파일에 변수 값 설정
# Use
/ as path seperator to specify path
in Unix as well as Windows.
ORACLE_ODI_HOME=C:/oracle/Middleware/Oracle_ODI1
INSTANCE_HOME=C:/oracle/Middleware/Oracle_WT1/instances/instance1
COMPONENT_TYPE=ODIAGENT
COMPONENT_NAME=AGT11
ODI_MASTER_DRIVER=oracle.jdbc.OracleDriver
ODI_MASTER_URL="jdbc:oracle:thin:@192.168.0.12:1521:widetns"
ODI_MASTER_USER=odi_mst_rep
ODI_MASTER_ENCODED_PASS=g2yHxMSwq4rPER7leJIkGJRg
ODI_SECU_WORK_REPO=WORKREP1
ODI_SUPERVISOR_ENCODED_PASS=fDyaLjkz6yyfEUxYb1nr
PORTNO=20910
JAVA_HOME=C:/Progra~1/Java/jdk1.6.0_24
ORACLE_OPMN_HOME=C:/oracle/Middleware/Oracle_WT1
JMXPORTNO=21910
u 경로 구분자는
Windows, Linux 모두 ‘\’가 아닌 ‘/’로
통일함
i.
ORACLE_ODI_HOME: ODI 설치 경로
~/Oracle_ODI1
ii.
INSTANCE_HOME: OPMN 인스턴스
폴더 경로
~/Oracle_WT1/Instances/Instance1
iii. COMPONENT_TYPE: 프로세스 타입 (should be odiagent)
iv. COMPONENT_NAME: Topology에서 명시된 물리적 Agent 명(OPMN에서 사용)
v. ODI_MASTER_DRIVER: 마스터 리포지토리 정보(odiparams 참고)
vi. ODI_MASTER_URL: 마스터 리포지토리 정보(odiparams 참고)
vii. ODI_MASTER_USER: 마스터 리포지토리 정보(odiparams 참고)
viii. ODI_MASTER_ENCODED_PASS: 마스터 리포지토리 정보(odiparams 참고)
ix. ODI_SECU_WORK_REPO: 워크 리포지토리 명(odiparams 참고)
x. ODI_SUPERVISOR_ENCODED_PASS: ODI 로그인 패스워드 정보(odiparams 참고)
xi. PORTNO: Agent port 번호
xii. JAVA_HOME: JAVA 설치 폴더
xiii.
ORACLE_OPMN_HOME: OPMN 설치
폴더
~/Oracle_WT1
xiv. JMXPORTNO: Agent JMX port 번호
⑥ OPMN 시작
A.
Start Oracle Process Manager
(시작-프로그램-Web Tier instance~- Start
Oracle Process Manager)
B.
Start Oracle HTTP Server
(시작-프로그램-Web Tier instance~- Start
Oracle HTTP Server)
⑦ Add agent
A. Run odi_opmn_addagent.bat (command line)
odi_opmn_addagent.bat
“agentcreate.properties”
⑧ Start agent
A. opmnctl.bat을 사용하여 Agent를 OPMN에 추가
opmnctl.bat
startproc ias-component=AGT11
⑨ Connection test
A. Topology에서 Agent 연결 테스트 – 성공 할 때까지!
# Agent 상태 확인
커맨드 창에서 확인 가능
# delete Agent
커맨드를 통해 실행
odi_opmn_deleteagent.sh <INSTANCE_HOME> <OPMN_HOME>
<PROCESS_NAME(ias-component name)>
Trouble Shooting
문제 발생: Add agent
오류 코드:
C:\oracle\Middleware\Oracle_WT1\opmn\lib>java
-classpath %CLASSPATH% oracle.odi.AddAgentToOpmn %*
Exception in
thread "main" java.lang.NoClassDefFoundError:
\lib\odi-standalone-agent/jar;
C:\oracle\Middleware\Oracle_WT1\opmn\lib\opmneditor/jar
Caused by:
java.lang.ClassNotFoundException:
\lib\odi-standalone-agent.jar;C:\oracle\Middleware\Oracle_WT1\opmn\lib\opmneditor.jar
…
오류 원인: 변수 설정 이상
해결 방법: odi_opmn_AddAgent 파일 변수 설정
문제 발생: Add agent
오류 코드:
java.lang.NoClassDefFoundError:
Files\Java\jdk1/6/0_23\lib\tools/jar
Caused by: java.lang.ClassNotFoundException:
Files\Java\jdk1.6.0_23\lib\tools.jar
at
java.net.URLClassLoader$1.run(URLClassLoader.java:202)
오류 원인: JDK PATH 설정 이상
해결 방법: JAVA_HOME 설정 시 “~” 사용
C:\Program
Files\Java\jdk1.6.0_23
->
C:\Progra~1\Java\jdk1.6.0_23
문제 발생: OPMN 실행
오류 코드:
Exception in
thread "main" java.lang.UnsupportedClassVersionError: Bad version
number in .class file
at java.lang.ClassLoader.defineClass1(Native Method)
at
java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:14)
오류 원인: JAVA Version이 낮음
해결 방법: JAVA 최신 버전 설치 후 환경 변수 설정
문제 발생: Add agent
오류 코드:
C:\oracle\Middleware\Oracle_WT1\opmn\lib>java
-classpath %CLASSPATH% oracle.odi.
AddAgentToOpmn %*
파일을 읽는 중 오류 발생
다음에 대한 값을 제공하십시오.ORACLE_ODI_HOME
오류 원인: agentcreate.properties 변수 설정 불량
해결 방법: agentcreate.properties 수정