- brokername
- (필수) 수정할 브로커의 이름. 이 매개변수는 첫 번째 매개변수여야 합니다.
- -b ComponentName
- (선택사항) 등록 정보를 변경할 구성요소의 이름.
http 리스너 구성요소의 경우 httplistener를 사용하십시오.
- -eExecutionGroupLabel
- (선택사항) 예약됨.
- -o ObjectName
- (필수) 등록 정보를 변경할 오브젝트의 이름.
아래에 나열된 값 중 하나로 설정해야 합니다.
- -n PropertyName
- (필수) 변경할 등록 정보의 이름.
- -vPropertyValue
- (필수) 제공된 PropertyValue는 PropertyName으로 지정된
등록 정보에 지정됩니다.
쉼표를 분리 문자로 사용하여 둘 이상의 이름과 해당 값을
지정할 수 있습니다.
예를 들어, 다음과 같습니다.
-n Name1, Name2 -v Value1, Value2
브로커 간 통신의 경우,
ObjectName 값을 사용할 수 있습니다.
- DynamicSubscriptionEngine
HTTPInput 및 HTTPReply 노드를 포함하는
httplistener 구성요소의 경우,
다음
ObjectName 값을 사용할 수 있습니다.
- HTTPListener 프로세스를 제어하기 위한 HTTPListener.
- HTTPInput 및 HTTPReply 노드와의 HTTP 통신을 제어하기 위한 HTTPConnector.
- HTTPInput 및 HTTPReply 노드와의 HTTPS 통신을 제어하기 위한 HTTPSConnector.
httplistener ComponentName은 HTTP
ObjectName 설정을 사용할 때 필요합니다.
브로커 간 통신
매개변수 값
브로커 간 통신을 위한 올바른 등록 정보 이름이 아래에 나열되어 있습니다.
- brokerInputQueues
- 브로커 간 연결에서 메시지를 처리할 때 사용할 디스패치 큐의 최대 수를
지정합니다. 값을 증가시키면 브로커 간 연결에서 메시지를 전송할 수 있는
비율이 증가될 수 있습니다.
- brokerInputQueueLength
- 이 등록 정보는 각 입력 큐에 저장될 수 있는 최대 메시지 수를 정의합니다.
값이 클수록 각 입력 큐에 저장될 수 있는 입력 메시지의 수가 많습니다. 이 등록 정보의 값이
클수록 각 큐에 대해 브로커가 필요로 하는 메모리의 양이 많아짐에 주의하십시오.
- brokerPingInterval
- 브로커-브로커 연결에서 브로커가 시작하는 ping 메시지 간의 시간(밀리세컨드). Ping 메시지는 통신이 양쪽 연결 간에 계속 열려 있는지와 내부적으로
생성되었는지 확인합니다. 값이 0이면 브로커가 ping을 시작하지 않습니다.
- clientPingInterval
- 브로커-클라이언트 연결에서 브로커가 시작하는 ping 메시지 간의 시간(밀리세컨드). Ping 메시지는 통신이 양쪽 연결 간에 계속 열려 있는지와 내부적으로
생성되었는지 확인합니다. 값이 0이면 브로커가 ping을 시작하지 않습니다.
- enableClientDiscOnQueueOverflow
- True이고 가능한 모든 메시지를 삭제한 후에도 maxClientQueueSize를
초과하면, 브로커가 클라이언트의 연결을 끊습니다.
- 값 유형 - Boolean
- 초기값 - False
- enableQopSecurity
- 메시지의 QoP(Quality of Protection) 레벨을 사용 가능하게 합니다.
기본적으로
QoP는 isysQopLevel 또는 sysQopLevel
값이 디폴트 값 없음에서 변경된 경우 사용 가능합니다.
- httpDispatchThreads
- 값은 브로커가 HTTP 터널링 클라이언트 관리를 위해 지정하는 스레드 수입니다.
- httpProtocolTimeout
- 값은 HTTP 프로토콜 시간 종료 간격의 밀리세컨드 수입니다.
이 값을 변경하여 HTTP 터널링 프로토콜 단계 중에 브로커가 다음 이벤트를 대기하는
시간의 크기를 갱신할 수 있습니다. 값 0을 지정하면 브로커가 무기한으로 대기합니다.
- interbrokerHost
- 브로커의 IP 호스트 이름을 지정합니다. 단일 브로커 구성을 디폴트인
널(null)로 남겨둘 수 있습니다.
mqsichangeproperties <broker>
-o DynamicSubscriptionEngine -n interbrokerHost -v <IP host name>
값을 변경하는 경우, 브로커를 정지하고 재시작해야 합니다.
그런 다음, 전체 토폴로지를 재전개해야 합니다.
- interbrokerPort
- 브로커가 수신되는 브로커 간 연결을 대기하는 포트 번호.
같은 시스템에서 둘 이상의 브로커가 실행 중이면, 각 브로커에 대해 interbrokerPort 등록 정보를
다른 값으로 설정하십시오. 예를 들면,
mqsichangeproperties <broker>
-o DynamicSubscriptionEngine -n interbrokerPort -v <port number>
토폴로지를 전개하기 전에
interbrokerPort 값을 설정하지 않은 경우 브로커를 재시작하십시오.
값을 변경하는 경우, 브로커를 정지하고 재시작해야 합니다.
그런 다음, 전체 토폴로지를 재전개해야 합니다.
- isysQopLevel
- 시스템에 적용되어 브로커가 publish 및 subscribe만 수행하도록 허용합니다.
- maxBrokerQueueSize
- 브로커가 다른 브로커로 전송하기 위해 큐에 넣는 최대 바이트 수. 최대값을 초과하면, 브로커가 최신 메시지, 높은 우선순위의 메시지 및 응답 메시지를 제외하고
해당 브로커에 대한 큐에 있는 모든 메시지를 삭제합니다. 값이 0이면, 브로커가 다른 브로커로 전송하기 위해
큐에 넣는 바이트 수를 제한하지 않습니다:
- maxClientQueueSize
- 브로커가 클라이언트로 전송하기 위해 큐에 넣는 최대 바이트 수. 최대값을 초과하면,
브로커는 최신 메시지, 높은 우선순위의 메시지 및 응답 메시지를 제외하고
해당 클라이언트에 대한 큐에 있는 모든 메시지를 삭제합니다. 값이 0이면, 브로커가 클라이언트로 전송하기 위해
큐에 넣는 바이트 수를 제한하지 않습니다.
이 등록 정보의 값은 반드시 maxMessageSize
값 이상이어야 합니다.
- maxConnections
- 브로커가 허용하는 동시에 연결된 최대 클라이언트 수. 이 한계에 도달하면, 브로커가 클라이언트의 새 연결 요청을
거부합니다. 이 값이 0보다 작으면, 클라이언트 수가 제한되지 않습니다.
- maxHopCount
- 메시지가 다중 브로커 네트워크에서 루프되지 않도록 하기 위해 메시지를 송신할 때 사용하는
최대 다중 브로커 링크 수를 지정합니다. 이 값을 메시지가 전체 다중 브로커 네트워크를 이동할 수 있을 만큼 큰 값으로 설정하십시오.
- maxMessageSize
- 허용되는 최대 메시지 크기(바이트 단위). 클라이언트로부터 이 최대 크기를
초과하는 메시지를 수신하면, 클라이언트의 연결이 끊깁니다.
이 등록 정보의 값은 반드시 maxClientQueueSize
값 이하여야 합니다.
- multicastAddressRangeMax
- 브로커가 해당 멀티캐스트 전송에 사용할 수 있는 가장 높은 IP 주소.
범위 224.0.0.2에서 239.255.255.255 사이에 있어야 합니다.
- 값 유형 - 문자열
- 초기값 - 239.255.255.255
- multicastAddressRangeMin
- 브로커가 해당 멀티캐스트 전송에 사용할 수 있는 가장 낮은 IP 주소.
범위 224.0.0.2에서 239.255.255.255 사이에 있어야 합니다.
- 값 유형 - 문자열
- 초기값 - 224.0.0.2
- multicastBackoffTimeMillis
- 클라이언트가 자체 고유의 NACK를 송신하기 전에 다른 클라이언트의
NACK를 대기하는 최대 시간(밀리세컨드 단위). 이 값의 범위는 0 - 1000일 수 있습니다.
- multicastDataPort
- 멀티캐스트 패킷이 송수신되는 UDP 데이터 포트.
- multicastEnabled
- multicastTopicsConfigFile에 정의된 토픽이 멀티캐스트로 전달되는지의 여부를 표시합니다. 값이 true이면, multicastTopicsConfigFile에 있는 토픽이 멀티캐스트로 전달됩니다.
- 값 유형 - Boolean
- 초기값 - false
- multicastHeartbeatTimeoutSec
- 각 클라이언트에서의 제어 패킷 도착 사이의 시간(초 단위)을 표시합니다. 제어 패킷이 이 등록 정보에서 지정한 값의 두 배로 정의된 이전 제어 패킷 도착
시간(초 단위) 이내에 도달하지 않으면 오류로 간주할 수 있습니다.
- multicastLimitTransRate
- 이 등록 정보는 multicastTransRateLimitKbps 등록 정보와 함께
네트워크 혼잡을 제어하는 데 사용할 수 있습니다. 가능한 값은 다음과 같습니다.
- 사용 안함
- 멀티캐스트 데이터가 가능한 한 빨리 전송됩니다.
- 정적
- 전송률이 multicastTransRateLimitKbps에 지정된 값에 의해 제한됩니다.
- 동적
- 프로세스 동안 전송률이 달라질 수는 있으나 multicastTransRateLimitKbps에
지정된 값을 초과하지는 않습니다.
- multicastMaxKeyAge
- 토픽 암호화 키를 재정의해야 하는 토픽 암호화 키의 최대 사용 기간(분 단위).
- multicastMaxMemoryAllowedKBytes
- 클라이언트 수신 버퍼에 의한 최대 메모리 소비량(KB 단위로 측정).
PGM(Pragmatic General Multicast) 프로토콜이 선택된 경우에만 이 매개변수가 사용 가능합니다.
- multicastMCastSocketTTL
- 멀티캐스트 패킷이 클라이언트와 브로커 간에 만들 수 있는 최대 홉(Hop) 수. 이 값은 클라이언트와 브로커 간에 존재할 수 있는 최대 라우터 수보다 1이 큰 값입니다.
값 1은 패킷이 모든 노드에 도달하지만
라우터에 의해 릴레이 될 수 없음을 나타냅니다.
최대값은 255입니다.
- multicastMinimalHistoryKBytes
- 전송되는 모든 패킷에 대한 아카이브로서 할당되는 버퍼의 최소 크기(KB 단위). 이 버퍼는 신뢰 가능한 모든 토픽에 의해 공유되며 손실된 패킷을 복구하는 데
사용할 수 있습니다. 이 값의 범위는 1000 - 1,000,000일 수 있습니다.
- multicastMulticastInterface
- 멀티캐스트 전송에 사용할 인터페이스를 지정합니다. 호스트 이름 또는 IP 주소를 지정할 수 있습니다. "없음(none)" 값을 지정하면 운영 체제에 따라 사용되는 네트워크 인터페이스가 결정됩니다.
주: 하나의 네트워크 카드만 있는 경우 운영 체제에서 localhost 값을 사용하므로
디폴트 값 없음(none)이 작동합니다.
그러나 둘 이상의 네트워크 카드가 있는 경우 이 매개변수를 설정하여 올바른 카드가 사용되는지 반드시 확인해야 합니다.
- multicastNACKAccumulationTimeMillis
- 복구된 패킷이 송신되기 전에 브로커에서 NACK가 집계되는 시간(밀리세컨드 단위). 이 값의 범위는 50 - 1000일 수 있습니다.
- multicastNACKCheckPeriodMillis
- NACK 빌드에 대한 순서 갭 감지와 수신 상태의 주기적 점검 사이의 시간(밀리세컨드 단위). 이 값의 범위는 10 - 1000일 수 있습니다.
- multicastOverlappingTopicBehavior
- 이 등록 정보는 명시적으로 멀티캐스트가 불가능한 토픽이 포함된 토픽 계층에
속하는 토픽에 대해 클라이언트가 멀티캐스트 subscription을 요청할 때 브로커의 작동을
제어하는 데 사용됩니다. 가능한 값은 다음과 같습니다.
- 승인
- 일치하는 멀티캐스트 subscription이 승인되고, 토픽과 일치하는 모든
publication(명시적으로 제외된 것은 제외)이 멀티캐스트됩니다.
- 거부
- 브로커에서 멀티캐스트가 불가능한 하위 토픽을 포함하는 토픽에 대한 멀티캐스트 subscription을
거부합니다.
- 되돌리기
- 멀티캐스트가 불가능한 토픽이나 해당 토픽의 하위 토픽을 subscribe하면
유니캐스트로 전송됩니다.
- multicastPacketBuffers
- 패킷 수신을 위해 시동 시 작성되는 메모리 버퍼 수.
사용 가능한 버퍼가 많을수록 수신 성능이 향상되고 높은 전달 속도에서의
패킷 손실이 최소화되나, 메모리 사용량이 증가합니다. 각 버퍼는 33KB이고 이 값의 범위는 1 - 5000일 수 있습니다.
- multicastPacketSizeBytes
- 멀티캐스트 패킷 크기(바이트 단위)를 지정합니다. 범위는 500 - 32000일 수 있습니다.
- multicastProtocolType
- 프로토콜 유형을 지정합니다. 레벨은 다음 중 하나여야 합니다.
- multicastSocketBufferSizeKbytes
- 클라이언트 소켓 수신자 버퍼의 크기(KB 단위). 크기를 증가시키면
손실 비율이 감소합니다. 이 값의 범위는 65 - 10000일 수 있습니다.
- multicastTransRateLimitKbps
- 초당 전체 전송률(KB 단위)을 제한합니다.
이 등록 정보는
multicastLimitTransRate 등록 정보가
사용 안함으로 설정되어 있지 않는 경우에만 유효합니다. 이 등록 정보의 값을
시스템 또는 네트워크의 최대 데이터 전송률보다 높게 설정해서는 안 되며,
가능한 범위는 10 - 1,000,000입니다.
- nonDurableSubscriptionEvents
- 비지속적 subscriber를 작성하거나 삭제할 때 사용자가 이벤트 메시지를
필요로 하는지 여부를 나타냅니다. true 값을 지정하면 이벤트 publication이
작성되고, false는 이벤트 publication이 작성되지 않음을 나타냅니다.
- 값 유형 - Boolean
- 초기값 - False
- pingTimeoutMultiple
- 클라이언트 또는 브로커의 연결을 끊기 전에 브로커가 대기하는 응답 없이
연속되는 clientPngIntervals 또는 brokerPngIntervals의 수.
- statsInterval
- 값은 통계 publication 간의 밀리세컨드 수입니다.
0으로 설정하면 통계 publication이 생성되지 않습니다. 이 등록 정보를 변경한 후
브로커를 재시작할 필요는 없지만, 값이 변경된 후 브로커가 통계 생성을 시작할 수 있는
최신 상태가 될 수 있습니다.
주: 이 값은 Publish/Subscribe 통계 간격만
참조합니다.
- sysQopLevel
- 시스템에 적용되어 브로커가 publish만 수행하도록 허용합니다.
권한 부여
Windows 플랫폼에서
이 명령을 호출하는 데 사용되는 사용자 ID는 로컬 시스템에서 Administrator
권한을 가져야 합니다.
UNIX 플랫폼에서, 이 명령을 호출하는 데
사용되는 사용자 ID는 root이거나 mqsicreatebroker 명령의
-i 매개변수에 지정한
것과 같은 ID여야 합니다.
또한, mqbrkrs 그룹의 구성원이어야 합니다.
또한 다른 프로토콜에 대해 브로커에 필요한 권한은 다음과 같습니다.
- PGM/IP
- 브로커에는 다음과 같은 사항이 필요합니다.
- Linux 및 UNIX 시스템의 Root 권한
- Windows 플랫폼의 Administrator 권한
- z/OS의 root 권한(UNIX 시스템 서비스 전용)
- PGM/UDP
- 브로커에는 지원되는 모든 플랫폼에 대한 User 권한이 필요합니다.
- PTL
- 브로커에는 지원되는 모든 플랫폼에 대한 User 권한이 필요합니다.
httplistener 구성요소
매개변수 값
HTTPListener ObjectName의 올바른 등록 정보 이름은 다음과 같습니다.
- enableSSLConnector
- HTTPS(SSL) 커넥터를 사용 가능하게 하거나 사용 불가능하게 하는 데
사용할 수 있는 boolean 값. http 리스너가 인바운드 SSL 연결을 대기하기 전에 이를“true”로 설정해야 합니다.
- 값 유형 - Boolean
- 초기값 - false
HTTPConnector ObjectName의 올바른 등록 정보 이름은 다음과 같습니다.
- address
- IP 주소가 두 개 이상인 서버의 경우, 이 값은 지정된 포트에서 대기하는 데 사용되는 주소를
지정합니다. 디폴트로 이 포트는 서버와 연관된 모든 IP 주소에서 사용됩니다. 지정하는 경우, 하나의 값을 사용할 수 있습니다.
- port
- 이 커넥터가 서버 소켓을 작성하고 수신되는 연결을 기다리는 TCP 포트 번호.
HTTPSConnector ObjectName의 올바른 등록 정보 이름은 다음과 같습니다.
- address
- IP 주소가 두 개 이상인 서버의 경우, 이 값은 지정된 포트에서 대기하는 데 사용되는 주소를
지정합니다. 디폴트로 이 포트는 서버와 연관된 모든 IP 주소에서 사용됩니다. 지정하는 경우, 하나의 값을 사용할 수 있습니다.
- port
- 이 커넥터가 서버 소켓을 작성하고 수신되는 연결을 기다리는 TCP 포트 번호.
- algorithm
- 사용할 인증서 인코딩 알고리즘.
- 값 유형 - 문자열
- 초기값 - Solaris와 HPUX에서는 SunX509, 기타 플랫폼(AIX, z/OS, Linux, Windows)에서는 IbmX509.
- clientAuth
- SSL 스택이 연결을 승인하기 전에 클라이언트로 부터 올바른 인증서 체인을 필요로 하는 경우
true로 설정하십시오. false 값(디폴트 값)은 클라이언트가 CLIENT-CERT 인증을 사용하는
보안 제한조건으로 보호되는 자원을 요청하는 경우를 제외하고 인증서 체인을 필요로 하지 않습니다.
- keystoreFile
- 로드될 서버 인증서가 저장된 키스토어 파일의 경로. 디폴트로 http 리스너는 브로커를 시작한 사용자의 홈 디렉토리에
.keystore라는 파일을 예상합니다.
- 값 유형 - 문자열
- 초기값 - 디폴트 값(앞서 설명함)
- keystorePass
- 지정된 키스토어 파일에서 서버 인증서에 액세스하는 데 사용되는 암호.
- 값 유형 - 문자열
- 초기값 - changeit
- keystoreType
- 서버 인증서에 사용될 키스토어 파일 유형.
- sslProtocol
- 사용할 SSL 프로토콜의 버전.
- ciphers
- 사용할 수 있는 쉼표로 분리된 암호화 암호 목록. 지정하지 않으면(디폴트 값), 사용 가능한 임의의 암호를 사용할 수 있습니다.
가능한
keystoreType,
sslProtocol
및
ciphers 값은 JSSE 구현에 따라 다르며, 이 값은
JSSE 제공자 문서에 있어야 합니다.
권한 부여
Windows 플랫폼에서
이 명령을 호출하는 데 사용되는 사용자 ID는 로컬 시스템에서 Administrator
권한을 가져야 합니다.
UNIX 플랫폼에서, 이 명령을 호출하는 데
사용되는 사용자 ID는 root이거나 mqsicreatebroker 명령의
-i 매개변수에 지정한
것과 같은 ID여야 합니다.
또한, mqbrkrs 그룹의 구성원이어야 합니다.