3.2. 사용자 정의 및 구성 검색
search-v2-operator
사용자 정의 리소스에서 기본값을 수정할 수 있습니다. 사용자 정의 리소스의 세부 정보를 보려면 다음 명령을 실행합니다.
oc get search search-v2-operator -o yaml
검색 Operator는 search-v2-operator
사용자 정의 리소스를 감시하고 변경 사항을 조정하고 활성 Pod를 업데이트합니다. 구성에 대한 다음 설명을 확인합니다.
PostgreSQL 데이터베이스 스토리지:
Red Hat Advanced Cluster Management를 설치하면 PostgreSQL 데이터를 빈 디렉터리( empty directory) 볼륨에 저장하도록 PostgreSQL 데이터베이스
가
구성됩니다. 빈 디렉터리 크기가 제한된 경우 PostgreSQL 데이터를 PVC(영구 볼륨 클레임)에 저장하여 검색 성능을 향상시킬 수 있습니다. Red Hat Advanced Cluster Management Hub 클러스터에서 스토리지 클래스를 선택하여 검색 데이터를 백업할 수 있습니다. 예를 들어gp2
스토리지 클래스를 선택하는 경우 구성은 다음 예와 유사할 수 있습니다.apiVersion: search.open-cluster-management.io/v1alpha1 kind: Search metadata: name: search-v2-operator namespace: open-cluster-management labels: cluster.open-cluster-management.io/backup: "" spec: dbStorage: size: 10Gi storageClassName: gp2
이 구성은
gp2-search
라는 PVC를 생성하고search-postgres
Pod에 마운트됩니다. 기본적으로 스토리지 크기는10Gi
입니다. 스토리지 크기를 수정할 수 있습니다. 예를 들어20Gi
는 약 200개의 관리 클러스터에 충분할 수 있습니다.Pod 메모리 또는 CPU 요구 사항, 복제본 수 및 4개의 검색 Pod(
indexer
,database
,queryapi
또는수집기
Pod)에 대한 로그 수준을 업데이트하여 비용을 최적화합니다.search-v2-operator
사용자 정의 리소스의배포
섹션을 업데이트합니다.search-v2-operator
에서 관리하는 배포의 4가지는 개별적으로 업데이트할 수 있습니다.search-v2-operator
사용자 정의 리소스는 다음 파일과 유사할 수 있습니다.apiVersion: search.open-cluster-management.io/v1alpha1 kind: Search metadata: name: search-v2-operator namespace: open-cluster-management spec: deployments: collector: resources: 1 limits: cpu: 500m memory: 128Mi requests: cpu: 250m memory: 64Mi indexer: replicaCount: 3 database: 2 envVar: - name: POSTGRESQL_EFFECTIVE_CACHE_SIZE value: 1024MB - name: POSTGRESQL_SHARED_BUFFERS value: 512MB - name: WORK_MEM value: 128MB queryapi: arguments: 3 - -v=3
메모리 리소스가 인덱서 Pod에 적용되는 다음 예제를 참조하십시오.
indexer: resources: limits: memory: 5Gi requests: memory: 1Gi
검색 Pod에 대한 노드 배치:
nodeSelector
매개변수 또는tolerations
매개변수를 사용하여 검색 Pod배치를
업데이트할 수 있습니다. 다음 예제 구성을 확인합니다.spec: dbStorage: size: 10Gi deployments: collector: {} database: {} indexer: {} queryapi: {} nodeSelector: node-role.kubernetes.io/infra: "" tolerations: - effect: NoSchedule key: node-role.kubernetes.io/infra operator: Exists