4.21. Operator에서 생성한 Openshift 리소스 사용자 정의
AMQ Broker 배포는 배포, Pod, 상태 저장 세트 및 서비스 리소스와 같은 OpenShift 리소스를 생성합니다. 이러한 리소스는 AMQ Broker Operator가 관리합니다. 특정 OpenShift 리소스를 관리하는 Operator만 해당 리소스를 변경할 수 있습니다.
다음과 같은 특정 작업을 수행하려는 경우 Operator가 관리하는 OpenShift 리소스를 사용자 정의하는 것이 유용할 수 있습니다.
- 다른 서비스에서 리소스를 처리하는 방법을 제어하는 사용자 지정 주석을 추가합니다.
- 브로커 사용자 정의 리소스에 노출되지 않는 속성 수정
resourceTemplates 속성을 사용하여 AMQ Broker Operator가 생성한 리소스를 사용자 지정할 수 있습니다. 리소스에 주석 또는 레이블을 추가하려면 주석 또는 라벨 속성을 포함하도록 resourceTemplates 속성을 구성합니다. 다음 예에서 annotations 속성은 Operator가 관리하는 모든 서비스에 주석을 추가하는 데 사용됩니다.
spec:
..
resourceTemplates:
- selector:
kind: "Service"
annotations:
name: "amq-operator-managed"
..
selector 속성은 사용자 지정되는 Operator 관리 리소스를 결정합니다. 예를 들어 selector 값은 kind: "Service" 이며 모든 서비스 리소스를 사용자 지정합니다. selector 속성이 비어 있으면 모든 Operator 관리 리소스에 변경 사항이 적용됩니다.
리소스에 대한 주석 또는 레이블이 아닌 항목을 사용자 지정하려면 resourceTemplates 속성과 함께 patch 속성을 사용해야 합니다. patch 속성을 지정하면 Operator는 전략적 병합을 사용하여 리소스를 업데이트합니다.
patch 속성을 사용하는 경우 업데이트할 특정 리소스를 식별하려면 selector 속성을 채워야 합니다.
다음 예에서 patch 속성은 StatefulSet 리소스에서 minReadySeconds 속성의 기본값을 변경하는 데 사용됩니다.
spec:
..
resourceTemplates:
- selector:
kind: "StatefulSet"
patch:
kind: "StatefulSet"
spec:
template:
spec:
minReadySeconds: 10
..
추가 리소스
전략적 병합에 대한 자세한 내용은 전략적 병합 패치를 사용하여 배포 업데이트를 참조하십시오.