![[Windows]](ngwin.gif)
Windows 에서 다중 인스턴스 큐 관리자 확인
샘플 프로그램 amqsghac, amqsphac 및 amqsmhac를 사용하여 다중 인스턴스 큐 관리자 구성을 확인합니다. 이 토픽은 Windows Server 2003의 멀티 인스턴스 큐 관리자 구성을 확인하기 위한 예제 구성을 제공합니다.
고가용성 샘플 프로그램은 자동 클라이언트 다시 연결을 사용합니다. 연결된 큐 관리자가 실패하면 클라이언트가 같은 큐 관리자 그룹에 있는 큐 관리자에 다시 연결하려고 시도합니다. 샘플의 설명인 고가용성 샘플 프로그램은 단순하게 하기 위해 단일 인스턴스 큐 관리자를 사용하는 클라이언트 재연결을 보여줍니다. 동일한 샘플을 다중 인스턴스 큐 관리자와 사용하여 다중 인스턴스 큐 관리자 구성을 확인할 수 있습니다.
이 예에서는 Windows 도메인 컨트롤러에서 다중 인스턴스 큐 관리자 만들기에 설명된 다중 인스턴스 구성을 사용합니다. 이 구성을 사용하여 다중 인스턴스 큐 관리자가 대기 인스턴스로 전환하는지 확인하십시오. endmqm 명령을 사용하여 큐 관리자를 중지하고 전환 옵션인 -s를 사용하십시오. 클라이언트 프로그램이 새 큐 관리자 인스턴스에 다시 연결하여 잠깐의 지연 후 새 인스턴스에 대한 작업을 계속합니다.
클라이언트는 Windows 7 서비스 팩 1을 실행 중인 400MB VMware 이미지에 설치됩니다. 보안상의 이유로 멀티 인스턴스 큐 관리자를 실행 중인 도메인 서버와 동일한 VMware 호스트 전용 네트워크에 연결됩니다. 구성을 단순화하기 위해 클라이언트 연결 테이블을 포함하는 /MQHA 폴더를 공유합니다.
IBM MQ Explorer 를 사용하여 장애 복구 확인
샘플 프로그램을 사용하여 장애 복구 확인
- 활성 인스턴스를 실행할 서버 선택
- MQHA 디렉토리 또는 파일 시스템을 호스트할 서버 중 하나를 선택했을 수 있습니다. 활성 서버를 실행 중인 VMware 창을 닫아 장애 복구를 테스트하려면 MQHA을(를) 호스트하는 서버가 아닌지 확인하십시오.
- 활성 큐 관리자 인스턴스를 실행하는 서버에서
- ipaddr1 및 ipaddr2을(를) 수정하고 N:\hasample.tst.에 다음 명령을 저장하십시오.
DEFINE QLOCAL(SOURCE) REPLACE DEFINE QLOCAL(TARGET) REPLACE DEFINE CHANNEL(CHANNEL1) CHLTYPE(SVRCONN) TRPTYPE(TCP) + MCAUSER(' ') REPLACE DEFINE CHANNEL(CHANNEL1) CHLTYPE(CLNTCONN) TRPTYPE(TCP) + CONNAME(' ipaddr1 (1414), ipaddr2 (1414)') QMNAME(QM1) REPLACE START CHANNEL(CHANNEL1) DEFINE LISTENER(LISTENER.TCP) TRPTYPE(TCP) CONTROL(QMGR) DISPLAY LISTENER(LISTENER.TCP) CONTROL DISPLAY LSSTATUS(LISTENER.TCP) STATUS참고: MCAUSER 매개변수를 공백으로 두면 클라이언트 사용자 ID가 서버로 전송됩니다. 이 클라이언트 사용자 ID에는 서버에 대한 올바른 권한이 있어야 합니다. 대안은 SVRCONN 채널의 MCAUSER 매개변수를 서버에서 구성한 사용자 ID로 설정하는 것입니다. - N:\ 경로로 명령 프롬프트를 열고 다음 명령을 실행하십시오.
runmqsc -m QM1 < hasample.tst - runmqsc 명령의 출력을 검사하여 리스너가 실행 중이고 큐 관리자 제어를 가지는지 확인하십시오.
또는 TCPIP 리스너가 실행 중이고LISTENER(LISTENER.TCP)CONTROL(QMGR) LISTENER(LISTENER.TCP)STATUS(RUNNING)Control = Queue Manager가 있는 IBM MQ Explorer 를 사용합니다.
- 클라이언트에서
- 서버의 공유 디렉토리 C:\MQHA을(를) 클라이언트의 N:\에 맵핑하십시오.
- N:\ 경로를 사용하여 명령 프롬프트를 여십시오. 서버의 클라이언트 채널 정의 테이블(CCDT)을 가리키도록 환경 변수
MQCHLLIB를 다음과 같이 설정하십시오.SET MQCHLLIB=N:\data\QM1\@ipcc - 명령 프롬프트에 다음 명령을 입력하십시오.
start amqsghac TARGET QM1 start amqsmhac -s SOURCE -t TARGET -m QM1 start amqsphac SOURCE QM1주: 문제점이 있는 경우 이유 코드가 콘솔에 인쇄되도록 명령 프롬프트에서 애플리케이션을 시작하거나 AMQERR01.LOG 파일을 N:\data\QM1\errors 폴더에 저장하십시오.
- 활성 큐 관리자 인스턴스를 실행하는 서버에서
- 다음 중 하나입니다.
- 활성 서버 인스턴스로 VMware 이미지를 실행하는 창을 닫으십시오.
- IBM MQ Explorer를 사용하여 활성 큐 관리자 인스턴스를 중지하고 대기 인스턴스로 전환할 수 있도록 허용하고 다시 연결 가능한 클라이언트에 다시 연결하도록 지시하십시오.
- 세 클라이언트는 결국 연결이 끊어진 것을 감지한 후 다시 연결합니다. 이 구성에서 서버 창을 닫으면 세 연결 모두 재설정되는 데 약 7분 정도 소요됩니다. 일부 연결은 다른 연결 전에 정상적으로 재설정됩니다.
- 다음 중 하나입니다.
결과
N:\>amqsphac SOURCE QM1 Sample AMQSPHAC start target queue is SOURCE message Message 1 message Message 2 message Message 3 message Message 4 message Message 5 17:05:25 : EVENT : Connection Reconnecting (Delay: 0ms) 17:05:47 : EVENT : Connection Reconnecting (Delay: 0ms) 17:05:52 : EVENT : Connection Reconnected message Message 6 message Message 7 message Message 8 message Message 9
N:\>amqsmhac -s SOURCE -t TARGET -m QM1 Sample AMQSMHA0 start 17:05:25 : EVENT : Connection Reconnecting (Delay: 97ms) 17:05:48 : EVENT : Connection Reconnecting (Delay: 0ms) 17:05:53 : EVENT : Connection Reconnected
N:\>amqsghac TARGET QM1 Sample AMQSGHAC start message Message 1 message Message 2 message Message 3 message Message 4 message Message 5 17:05:25 : EVENT : Connection Reconnecting (Delay: 156ms) 17:05:47 : EVENT : Connection Reconnecting (Delay: 0ms) 17:05:52 : EVENT : Connection Reconnected message Message 6 message Message 7 message Message 8 message Message 9