5.4. 검색 관리
검색을 사용하여 클러스터에서 리소스 데이터를 쿼리합니다.
필수 액세스 권한: 클러스터 관리자
다음 주제를 계속 읽습니다.
5.4.1. 검색 구성 가능한 컬렉션 생성
search-collector-config
ConfigMap을 생성하여 허용 및 거부 목록 섹션의 리소스를 나열하여 클러스터에서 수집되는 Kubernetes 리소스를 정의합니다. ConfigMap 내의 data.AllowedResources
및 data.DeniedResources
섹션에 있는 리소스를 나열합니다. 다음 명령을 실행하여 리소스를 생성합니다.
oc apply -f yourconfigMapFile.yaml
ConfigMap은 다음 YAML 파일과 유사할 수 있습니다.
apiVersion: v1 kind: ConfigMap metadata: name: search-collector-config namespace: <namespace where search-collector add-on is deployed> data: AllowedResources: |- - apiGroups: - "*" resources: - services - pods - apiGroups: - admission.k8s.io - authentication.k8s.io resources: - "*" DeniedResources: |- - apiGroups: - "*" resources: - secrets - apiGroups: - admission.k8s.io resources: - policies - iampolicies - certificatepolicies
이전 ConfigMap 예제에서는 모든 apiGroups
에서 서비스
및 Pod를
수집할 수 있도록 허용하면서 admission.k8s.io
및 authentication.k8s.io
apiGroups
에서 모든 리소스를 수집할 수 있습니다. 동시에 ConfigMap 예제에서는 apiGroup
admission.k8s.io
에서 정책iampolicies
, certificate
의 컬렉션을 방지하면서 모든 policies
apiGroups
의 시크릿
수집도 차단합니다.
참고: ConfigMap을 제공하지 않으면 모든 리소스가 기본적으로 수집됩니다. AllowedResources
만 제공하는 경우 AllowedResources
에 나열되지 않은 모든 리소스는 자동으로 제외됩니다. AllowedResources
및 DeniedResources
에 나열된 리소스도 제외됩니다.
5.4.2. 검색 콘솔 사용자 정의
OpenShift Container Platform 콘솔에서 검색 결과 제한을 사용자 지정할 수 있습니다. multicluster-engine
네임스페이스에서 console-mce-config
를 업데이트합니다. 이러한 설정은 모든 사용자에게 적용되며 성능에 영향을 미칠 수 있습니다. 다음 성능 매개변수 설명을 확인합니다.
-
192.0.2.D_SEARCH_LIMIT
- 사용자당 저장된 최대 검색 양입니다. 기본적으로 각 사용자에 대해 저장된 검색 수가 10개 있습니다. 기본값은10
입니다. 제한을 업데이트하려면console-config
ConfigMap: 192.0.2.D_SEARCH_LIMIT: x
에 다음 키 값을 추가합니다. -
SEARCH_RESULT_LIMIT
- 콘솔에 표시되는 검색 결과의 최대 양입니다. 기본값은1000
입니다. 이 제한을 제거하려면-1
로 설정합니다. -
SEARCH_AUTOCOMPLETE_LIMIT
- 검색 표시줄 typeahead에 대해 검색된 최대 제안 수입니다. 기본값은10,000
입니다. 이 제한을 제거하려면-1
로 설정합니다.
OpenShift Container Platform 콘솔에서 다음 patch
명령을 실행하여 검색 결과를 100개의 항목으로 변경합니다.
oc patch configmap console-mce-config -n multicluster-engine --type merge -p '{"data":{"SEARCH_RESULT_LIMIT":"100"}}'
5.4.3. 콘솔에서 쿼리
검색 상자에 텍스트 값을 입력할 수 있으며 결과는 이름 또는 네임스페이스와 같은 속성의 해당 값으로 모든 값을 포함합니다.You can type any text value in the Search box and results include anything with that value from any property, such as a name or namespace. 사용자는 빈 공간이 포함된 값을 검색할 수 없습니다.
보다 구체적인 검색 결과를 얻으려면 검색에 속성 선택기를 포함합니다. 검색의 더 정확한 범위를 위해 속성의 관련 값을 결합할 수 있습니다. 예를 들어, dev
클러스터에서 "red" 문자열과 일치하는 결과를 수신하려면 cluster:dev red
을 검색합니다.
검색을 사용하여 쿼리를 만들려면 다음 단계를 완료합니다.
- 탐색 메뉴에서 검색을 클릭합니다.
검색 상자에 단어를 입력한 다음 검색에서 해당 값을 포함하는 리소스를 찾습니다.
- 리소스를 검색할 때 원래 검색 결과와 관련된 다른 리소스를 수신하면 리소스가 시스템의 다른 리소스와 상호 작용하는 방식을 시각화할 수 있습니다.
- Search는 검색한 리소스가 포함된 각 클러스터를 반환하고 나열합니다. hub 클러스터의 리소스의 경우 클러스터 이름이 로컬 클러스터로 표시됩니다.
-
검색 결과는
종류
별로 그룹화되며 각 리소스종류는
테이블에 그룹화됩니다. - 검색 옵션은 클러스터 오브젝트에 따라 다릅니다.
-
특정 라벨을 사용하여 결과를 구체화할 수 있습니다. 레이블을 쿼리할 때 검색은 대소문자를 구분합니다. 필터링할 수 있는 다음 예제(
name
,namespace
,status
, 기타 리소스 필드)를 참조하십시오. 자동 완성은 검색을 구체화하는 제안 사항을 제공합니다. 다음 예제를 참조하십시오. -
kind:pod
와 같은 단일 필드를 검색하여 모든 Pod 리소스를 찾습니다. kind:pod namespace:default
와 같은 여러 필드를 검색하여 default 네임스페이스에서 Pod를 찾습니다.참고:
-
>, >=, <
, <=, !=
와 같은 문자를 사용하여 조건으로 검색할 수도 있습니다. - 여러 값을 사용하여 둘 이상의 속성 선택기를 검색할 때 검색에서 쿼리된 값 중 하나를 반환합니다. 다음 예제를 참조하십시오.
-
kind:pod name:a
를 검색하면a
라는 모든 Pod가 반환됩니다. -
kind:pod name:a,b
를 검색하면a
또는b
라는 모든 Pod가 반환됩니다. -
kind:pod status:!Running
을 검색하여 상태가Running
이 아닌 모든 Pod 리소스를 찾습니다. -
kind:pod restart:>1
을 검색하여 최소 두 번 재시작한 모든 Pod를 찾습니다.
-
>, >=, <
- 검색을 저장하려면 검색 저장 아이콘을 클릭합니다.
5.4.3.1. ArgoCD 애플리케이션 쿼리
ArgoCD 애플리케이션을 검색할 때 애플리케이션 페이지로 이동합니다. 검색 페이지에서 ArgoCD 애플리케이션에 액세스하려면 다음 단계를 완료합니다.
- Red Hat Advanced Cluster Management hub 클러스터에 로그인합니다.
- 콘솔 헤더에서 검색 아이콘을 선택합니다.
-
kind:application
및apigroup:argoproj.io
값을 사용하여 쿼리를 필터링합니다. - 확인할 애플리케이션을 선택합니다. 애플리케이션 페이지에 애플리케이션의 정보 개요가 표시됩니다.
5.4.4. 관리 클러스터에서 klusterlet-addon-search 배포 업데이트
관리형 클러스터에서 Kubernetes 오브젝트를 수집하기 위해 search가 활성화된 모든 관리형 클러스터에서 klusterlet-addon-search
Pod가 실행됩니다. 이 배포는 open-cluster-management-agent-addon
네임스페이스에서 실행됩니다. 리소스가 많은 관리형 클러스터에 klusterlet-addon-search
배포가 작동하려면 더 많은 메모리가 필요할 수 있습니다.
관리형 클러스터에서 klusterlet-addon-search
Pod에 대한 리소스 요구 사항은 Red Hat Advanced Cluster Management hub 클러스터의 ManagedClusterAddon
사용자 정의 리소스에서 지정할 수 있습니다. 관리되는 클러스터 이름이 있는 각 관리 클러스터의 네임스페이스가 있습니다. 관리 클러스터 이름과 일치하는 네임스페이스에서 ManagedClusterAddon
사용자 정의 리소스를 편집합니다. 다음 명령을 실행하여 xyz
관리 클러스터에서 리소스 요구 사항을 업데이트합니다.
oc edit managedclusteraddon search-collector -n xyz
리소스 요구 사항을 주석으로 추가합니다. 다음 예제를 확인합니다.
apiVersion: addon.open-cluster-management.io/v1alpha1 kind: ManagedClusterAddOn metadata: annotations: addon.open-cluster-management.io/search_memory_limit: 2048Mi addon.open-cluster-management.io/search_memory_request: 512Mi
이 주석은 관리 클러스터의 리소스 요구 사항을 재정의하고 새 리소스 요구 사항으로 Pod를 자동으로 다시 시작합니다.
Observing 환경 소개 로 돌아가십시오.