JP1/AJS3(JP1/AJS2)의 작업이 큐잉 상태가 되었을 경우는, 이하 5개의 케이스에 해당하지 않는지 확인해 주세요.
1.관리자 호스트와 에이전트 호스트 간에 이름 확인이 불가능합니다.
●원인
JP1/AJS3(JP1/AJS2)은 호스트명으로부터 IP주소를 해석할 수 있는 환경에서 동작합니다. 특히 매니저 호스트와 에이전트 호스트 간의 통신에서는, 각각의 머신의 「호스트명」을 사용하기 때문에, 서로의 호스트명이 올바르게 설정되어 있지
않으면 작업이 큐잉 상태가 됩니다.
●대처 방법
DNS를 운영하는 경우 호스트 이름의 IP 주소가 FQDN 형식으로 올바르게 확인되도록 설정하십시오.
※논리 호스트명에는 FQDN 형식의 호스트명을 사용할 수 없습니다.
2. 대상 호스트의 JP1/AJS3 및 JP1/AJS2 서비스가 시작되지 않음
●원인
JP1 / AJS3 (JP1 / AJS2)은 매니저 호스트에서 에이전트 호스트의 처리를 실행할 수 있습니다. 에이전트 호스트에 작업을 전달하는 경우 전달 대상의 JP1/AJS3(JP1/AJS2) 서비스가 정상적으로 기동하고 있어야 하며, 서비스가 정지하고 있으면 매니저 호스트는 작업을 수신할 수 없게 큐잉 상태가 됩니다.
●대처 방법
작업이 실행되는 에이전트 호스트의 JP1 / AJS3 (JP1 / AJS2) 서비스를 시작하십시오.
Windows의 경우
1. 제어판 > 서비스를 선택합니다. 또는 관리 도구 > 서비스를 선택합니다. 2. JP1/AJS3 또는 JP1/AJS2 서비스를 선택하고 시작을 클릭합니다.
UNIX의 경우
1. 다음 명령을 실행하여 서비스 가동 상태를 확인합니다. # /opt/jp1ajs2/bin/jajs_spmd_status KNAD3662-I 프로세스가 모두 중지되었습니다 2. 서비스가 중지된 경우 다음 명령을 실행하여 서비스를 시작합니다. # /etc/opt/jp1ajs2/jajs_start
* 클러스터 환경의 경우 명령 옵션에 -h 논리 호스트 이름을 부여하십시오. # /etc/opt/jp1ajs2/jajs_start.cluster [논리 호스트명]
3. 방화벽이 JP1에서 사용하는 포트를 차단하고 있음
●원인
JP1/AJS3(JP1/AJS2)는 방화벽을 사이에 두고 JP1/AJS3 - Manager(JP1/AJS2 - Manager)와 JP1/AJS3 - Agent(JP1/AJS2 - Agent) 또는 JP1/AJS3 - View(JP1/AJS2 -View)를 접속하는 시스템 구성에 대응합니다. 따라서 JP1에서 사용하는 포트가 방화벽에 의해 차단되어 통신이 이루어지지 않을 경우 매니저 호스트와 에이전트 호스트 간의 통신이 차단되어 작업이 대기 상태가 됩니다.
●대처 방법
방화벽을 통한 네트워크 환경에서 JP1을 운영하는 경우 패킷 필터링이나 NAT에 JP1/AJS3(JP1/AJS2)이 사용하는 IP 주소와 포트 번호를 정의해야 합니다. 개방하는 포트 번호나 통신 방향은 다음과 같습니다. 작업이 큐잉하는 경우, 우선은 ★표시의 포트를 확인해 주세요.
JP1/AJS3 - Manager ※2 JP1/AJS3 - Software Development Kit
jp1ajs3cdinetd
22250/tcp
JP1/AJS3 - Software Development Kit → 매니저
※1 JP1/AJS3와 JP1/AJS2에서 함께 사용하는 포트 번호입니다.
※2 JP1/AJS3 만으로 사용하는 포트 번호입니다.
4. 작업 실행 다중도를 초과함
●원인
JP1/AJS3(JP1/AJS2)에서는 실행 에이전트에 동시 실행 작업 수(작업 실행 다중도)를 제한할 수 있습니다. 그 때문에, 지정한 작업 실행 다중도를 「0」으로 지정하고 있는 경우나 설정치를 넘어 버리면 작업은 에이전트 호스트에 전달되지 않고 큐잉 상태가 됩니다.
●대처 방법
다음 명령을 실행하여 작업 실행 다중도를 확인하십시오.
Windows의 경우 (V8 이하) > jpqagtshow –a
UNIX의 경우 (V8 이하) # /opt/jp1ajs2/bin/jpqagtshow –a
jpqagtshow 명령 실행 결과
※ 출력 내용 AGENT: 에이전트 호스트명을 나타냅니다. CUREXECHGNUM: 현재 작업 실행 다중도를 나타냅니다. EXECUTING: 현재 실행 중인 작업 수를 나타냅니다.
Windows의 경우 (V9 이상) > ajsagtshow –l
UNIX의 경우(V9 이상) # /opt/jp1ajs2/bin/ajsagtshow –l
* 클러스터 환경의 경우 명령 옵션에 -h 논리 호스트 이름을 부여하십시오.
ajsagtshow 명령 실행 결과
※ 출력 내용 AGENT: 실행 에이전트명을 나타냅니다. STATUS: 실행 에이전트의 수신 배달 제한 상태를 나타냅니다. HOST: 실행 호스트 이름을 나타냅니다. CON-EXE: 작업 실행 다중도를 나타냅니다. QUE: 큐잉 중인 작업 수를 표시합니다. JOB: 실행 중인 작업 수를 표시합니다. EVENT: 실행 중인 이벤트 작업 수를 나타냅니다. DESCRIPTION: 추가/변경 시 설정한 실행 에이전트에 대한 코멘트를 나타냅니다.
필요한 경우 jpqagtalt(V8 이전) 또는 ajsagtalt(V9 이상) 명령에서 작업 실행 다중도를 변경하십시오.
5. 큐의 접수구나 취출구가 열려 있지 않다 (V8 이전)
●원인
V8 이전의 JP1/AJS2는, JP1/AJS3와는 「큐」의 개념이 다릅니다. 대기열의 받는 사람이 닫히면 작업을 대상 호스트로 전달하지 않습니다. 또한, 큐의 출구가 닫혀 있는 경우도 매니저에 작업 실행 결과를 돌려줄 수 없고 작업은 큐잉 상태가 됩니다.
●대처 방법
"jpqqueshow" 명령을 실행하여 접수구와 출구가 열려 있는지 확인하십시오. 닫힌 경우에는 “jpqqueopen”을 실행하여 접수구와 출구를 여십시오.
Windows의 경우 > jpqqueshow –mh 관리자 호스트 이름 -ah 에이전트 호스트 이름
UNIX의 경우 # /opt/jp1ajs2/bin/jpqqueshow
jpqqueshow 실행 결과 예
KAVU0838-I 기본 대기열 정보 (에이전트 이름) 표시를 시작합니다.
QUEUE : a : 에이전트 이름
MAXQUEUE : 100
WARNQUEUE : 80
ENTRYSTATUS : CLOSE ←★ 직업 접수구 상태
EXITSTATUS : CLOSE ←★ 작업의 출구 상태
QUEUING : 0
EXECUTING : 0
LINKAGENT : 에이전트 이름 : 1
KAVU0842-I 큐 정보 표시 처리가 성공적으로 완료되었습니다.
ENTRYSTATUS 또는 EXITSTATUS가 "CLOSE"로 표시되면 작업의 접수구와 꺼내기가 닫혀 있으므로 다음 명령을 실행합니다.
Windows의 경우 > jpqqueopen -ah 에이전트 이름 -en UNIX의 경우 # /opt/jp1ajs2/bin/jpqqueopen -ah 에이전트 이름 -en
jpqqueopen 명령 실행 결과의 예
KAVU0835-I 큐 (에이전트 이름)의 작업 접수부가 열렸습니다.
또한 명령으로 에이전트를 추가한 직후에는 큐의 접수부는 닫힙니다. 그러므로 작업을 등록할 때 jpqqueopen 명령을 사용하여 큐의 접수부를 여십시오.
정 리
JP1/AJS3(JP1/AJS2)의 작업이 큐잉 상태가 되는 사례를 소개했습니다. 작업이 큐잉하는 원인을 모르는 경우에는 본 블로그에서 소개한 5가지 사건에 해당하지 않는지 확인해 주십시오.
제품 정식 명칭/약칭 표기 및 기능 대상 버전
JP1/Automatic Job Management System 3 - Manager/JP1/AJS3-Manager JP1/Automatic Job Management System 2 - Manager/JP1/AJS2-Manager JP1/Automatic Job Management System 3 - Agent/JP1/AJS3-Agent JP1/Automatic Job Management System 2 - Agent/JP1/AJS2-Agent