2.4. CRD(사용자 정의 리소스 정의)에 노출되지 않은 항목 구성
ActiveMQArtemis 사용자 정의 리소스에서 brokerProperties 속성을 사용하여 브로커의 구성 설정을 구성할 수 있습니다. brokerProperties 를 사용하는 것은 다음과 같은 설정을 구성하려는 경우 특히 유용합니다.
-
ActiveMQArtemisCRD에 노출되지 않음 -
ActiveMQArtemisAddress및ActiveMQArtemisSecurityCRD에 노출됩니다.
AMQ Broker 7.12부터 ActiveMQArtemisAddress 및 ActiveMQArtemisSecurity CRD가 더 이상 사용되지 않음
brokerProperties 속성 아래에 추가된 구성 설정은 시크릿에 저장됩니다. 이 시크릿은 브로커 Pod에 속성 파일로 마운트됩니다. 시작 시 속성 파일은 XML 구성을 적용한 후 내부 java 구성에 직접 적용됩니다.
- 예
- 다음 예제에서는 단일 속성이 구성 빈에 적용됩니다.
spec:
...
brokerProperties:
- globalMaxSize=500m
...
다음 예제에서는 다른 브로커와 메시지를 미러링하는 target 이라는 브로커 연결을 생성하기 위해 구성 빈의 중첩된 컬렉션에 여러 속성이 적용됩니다.
spec:
...
brokerProperties
- "AMQPConnections.target.uri=tcp://<hostname>:<port>"
- "AMQPConnections.target.connectionElements.mirror.type=MIRROR"
- "AMQPConnections.target.connectionElements.mirror.messageAcknowledgements=true"
- "AMQPConnections.target.connectionElements.mirror.queueCreation=true"
- "AMQPConnections.target.connectionElements.mirror.queueRemoval=true"
...
brokerProperties 속성을 사용하면 OpenShift Container Platform에서 AMQ Broker에 대해 구성할 수 없는 많은 구성 항목에 액세스할 수 있습니다. 잘못 사용하면 일부 속성이 배포에 심각한 영향을 미칠 수 있습니다. 이 방법을 사용하여 브로커를 구성할 때는 항상 주의하십시오.
brokerProperties의 상태 보고brokerProperties속성에 구성된 항목의 상태는ActiveMQArtemisCR의BrokerPropertiesApplied상태 섹션에 제공됩니다. 예를 들면 다음과 같습니다.- lastTransitionTime: "2023-02-06T20:50:01Z" message: "" reason: Applied status: "True" type: BrokerPropertiesAppliedreason필드에는brokerProperties속성에 구성된 항목의 상태를 표시하는 다음 값 중 하나가 포함되어 있습니다.적용됨- OpenShift Container Platform은 업데이트된 보안을 각 브로커 Pod의 속성 파일에 전파했습니다.
AppliedWithError-
OpenShift Container Platform은 업데이트된 보안을 각 브로커 Pod의 속성 파일에 전파했습니다. 그러나
brokerProperties구성에서 오류가 발견되었습니다. CR의status섹션에서message필드를 확인하여 잘못된 속성을 식별하고 CR에서 수정합니다. OutOfSync-
OpenShift Container Platform은 아직 업데이트된 시크릿을 각 브로커 Pod의 속성 파일에 전파하지 않았습니다. OpenShift Container Platform에서 업데이트된 보안을 각 Pod에 전파하면
이유필드 값이Applied로 변경됩니다.
브로커는 포드에 마운트된 속성 파일에 대한 업데이트를 포함하여 구성 변경 사항을 주기적으로 확인하고 변경 사항을 탐지하면 구성을 다시 로드합니다. 그러나 브로커를 시작할 때만 읽는 속성 업데이트(예: JVM 설정)는 브로커를 다시 시작할 때까지 다시 로드되지 않습니다. 다시 로드하는 속성에 대한 자세한 내용은 AMQ Broker 구성에서 구성 업데이트 다시 로드 를 참조하십시오.
추가 정보
CR의 brokerProperties 요소에서 구성할 수 있는 속성 목록은 AMQ Broker 구성 의 브로커 속성을 참조하십시오.