검색
Red Hat Advanced Cluster Management Search 서비스가 모든 클러스터에서 Kubernetes 리소스에 대한 가시성을 제공하는 방법을 알아보십시오.
초록
1장. 검색 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat Advanced Cluster Management Search 서비스에 대해 알아보십시오. 클러스터에서 리소스 데이터를 쿼리하려면 검색을 사용합니다. 다음 설명서를 참조하십시오.
1.1. 검색 서비스 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat Advanced Cluster Management for Kubernetes의 경우 모든 클러스터에서 Kubernetes 리소스에 대한 가시성을 제공합니다. 또한 검색에서는 Kubernetes 리소스 및 다른 리소스와의 관계를 인덱싱합니다.
1.1.1. 구성 요소 검색 링크 복사링크가 클립보드에 복사되었습니다!
검색 아키텍처는 다음 구성 요소로 구성됩니다.
구성 요소 이름 | 지표 | 메트릭 유형 | 설명 |
---|---|---|---|
|
Kubernetes 리소스를 감시하고, 리소스 메타데이터를 수집하고, 모든 관리 클러스터에서 리소스에 대한 관계를 계산하고, 수집된 데이터를 | ||
수집기에서 리소스 메타데이터를 수신하고 PostgreSQL 데이터베이스에 씁니다. |
| 히스토그램 | 시간(초)은 관리 클러스터에서 요청을 처리하는 데 걸리는 시간(초)입니다. |
| 히스토그램 | 검색 인덱서 요청의 총 변경 사항(관리된 클러스터에서) 총 변경 사항(추가, 업데이트, 삭제)입니다. | |
| 카운터 | 검색 인덱서에서 수신한 총 요청(관리된 클러스터에서) | |
| 게이지 | 검색 인덱서가 지정된 시간에 처리 중인 총 요청입니다. | |
GraphQL을 통해 |
| 히스토그램 | HTTP 요청의 히스토그램(초)입니다. |
| 히스토그램 | 데이터베이스 요청 대기 시간(초)입니다. | |
| 카운터 | 실패한 총 데이터베이스 연결 시도 수입니다. | |
| PostgreSQL 데이터베이스 인스턴스의 모든 관리 클러스터에서 수집된 데이터를 저장합니다. |
검색은 허브 클러스터에서 기본적으로 구성됩니다. 관리 클러스터를 프로비저닝하거나 수동으로 가져올 때 klusterlet-addon-search
가 활성화됩니다. 관리 클러스터에서 검색을 비활성화하려면 클러스터 의 klusterlet 애드온 설정 수정 을 참조하십시오.
1.1.2. 사용자 정의 및 구성 검색 링크 복사링크가 클립보드에 복사되었습니다!
search-v2-operator
사용자 정의 리소스에서 기본값을 수정할 수 있습니다. 사용자 정의 리소스의 세부 정보를 보려면 다음 명령을 실행합니다.
oc get search search-v2-operator -o yaml
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
스토리지 클래스를 선택하는 경우 구성은 다음 예와 유사할 수 있습니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이 구성은
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
사용자 정의 리소스는 다음 파일과 유사할 수 있습니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 메모리 리소스가 인덱서 Pod에 적용되는 다음 예제를 참조하십시오.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 검색 Pod에 대한 노드 배치를 정의할 수 있습니다.
nodeSelector
매개변수 또는tolerations
매개변수를 사용하여 검색 Pod의배치
리소스를 업데이트할 수 있습니다. 다음 예제 구성을 확인합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 열,Operator, 값 옵션을 필터링하거나 검색 제약 조건을 추가하려면 고급 검색 드롭다운 버튼을 선택하여 검색 쿼리를 지정합니다.
1.1.3. 검색 작업 및 데이터 유형 링크 복사링크가 클립보드에 복사되었습니다!
검색 작업을 조건으로 사용하여 검색 쿼리를 지정합니다. > , >=, <, <=, !=
와 같은 문자가 지원됩니다. 다음 검색 작업 테이블을 참조하십시오.
기본 작업 | 데이터 유형 | 설명 |
---|---|---|
| 문자열, 숫자 | 기본 작업입니다. |
| 문자열, 숫자 | 이는 NOT 작업을 나타내며 검색 결과에서 제외해야 합니다. |
| number | |
| date | 마지막 시간, 일, 주, 월, 연도와 일치하는 날짜입니다. |
| string | 부분 문자열이 일치합니다. |
1.1.4. 추가 리소스 링크 복사링크가 클립보드에 복사되었습니다!
- Kubernetes 콘솔용 Red Hat Advanced Cluster Management에 대한 자세한 내용은 웹 콘솔 을 참조하십시오.
1.2. 구성 가능한 검색 컬렉션 생성 링크 복사링크가 클립보드에 복사되었습니다!
검색한 리소스를 사용자 지정할 각 관리 클러스터에 대해 search-collector-config
구성 맵을 생성하여 클러스터에서 수집되는 Kubernetes 리소스를 정의합니다.
필수 액세스: 클러스터 관리자
검색 애드온이 배포된 동일한 네임스페이스에 구성 맵을 배치합니다. 기본 네임스페이스는 open-cluster-management-agent-addon
입니다.
다음 단계를 완료합니다.
다음 명령을 실행하여
search-collector-config
구성 맵을 생성합니다.oc apply -f <your-search-collector-config>.yaml
oc apply -f <your-search-collector-config>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 구성 맵 내에서 허용(
data.AllowedResources
) 및 거부 목록(data.DeniedResources
) 섹션에 있는 리소스를 나열합니다. 구성 맵은 다음 YAML 파일과 유사할 수 있습니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고: 구성 맵을 제공하지 않으면 기본적으로 모든 리소스가 수집됩니다.
AllowedResources
만 제공하는 경우AllowedResources
에 나열되지 않은 모든 리소스가 자동으로 제외됩니다.AllowedResources
및DeniedResources
에 동시에 나열된 리소스도 제외됩니다.
1.2.1. 검색 콘솔 사용자 정의 링크 복사링크가 클립보드에 복사되었습니다!
검색 결과 및 제한을 사용자 지정합니다. 사용자 지정을 수행하려면 다음 작업을 완료합니다.
OpenShift Container Platform 콘솔에서 검색 결과 제한을 사용자 지정합니다.
multicluster-engine
네임스페이스에서console-mce-config
를 업데이트합니다. 이러한 설정은 모든 사용자에게 적용되며 성능에 영향을 미칠 수 있습니다. 다음 성능 매개변수 설명을 확인합니다.-
192.0.2.D_SEARCH_LIMIT
- 각 사용자에 대해 저장된 최대 검색 양입니다. 기본적으로 각 사용자에 대해 저장된 검색 수가 10개로 제한됩니다. 기본값은10
입니다. 제한을 업데이트하려면console-config
구성 맵에 다음 키 값을 추가합니다. 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"}}'
oc patch configmap console-mce-config -n multicluster-engine --type merge -p '{"data":{"SEARCH_RESULT_LIMIT":"100"}}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 제안된 검색을 추가, 편집 또는 제거하려면
console-search-config
라는 구성 맵을 생성하고suggestedSearches
섹션을 구성합니다. 나열된 권장 검색도 콘솔에 표시됩니다. 각 검색 오브젝트에 대해id, name, search Cryostat
가 있어야 합니다. 다음 구성 맵 예제를 표시합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- search가 활성화된 네임스페이스를 추가합니다.
1.2.2. 콘솔에서 쿼리 링크 복사링크가 클립보드에 복사되었습니다!
검색 상자에 텍스트 값을 입력하면 이름 또는 네임스페이스와 같은 속성의 값이 있는 모든 항목이 포함됩니다. 빈 공간이 포함된 쿼리는 지원되지 않습니다.
필수 액세스: 클러스터 관리자
보다 구체적인 검색 결과를 보려면 검색에 속성 선택기를 포함합니다. 더 정확한 검색 범위를 위해 속성에 관련 값을 결합할 수 있습니다. 예를 들어 dev
클러스터에서 "red" 문자열과 일치하는 결과를 수신하려면 cluster:dev red
를 검색합니다.
검색을 사용하여 쿼리를 만들려면 다음 단계를 완료합니다.
- 탐색 메뉴에서 검색을 클릭합니다.
검색 상자에 단어를 입력한 다음 검색에서 해당 값이 포함된 리소스를 찾습니다.
- 리소스를 검색할 때 원래 검색 결과와 관련된 다른 리소스가 수신되므로 리소스가 시스템의 다른 리소스와 상호 작용하는 방식을 시각화하는 데 도움이 됩니다.
- 검색에서는 각 클러스터를 반환하고 검색한 리소스로 나열합니다. 허브 클러스터의 리소스의 경우 클러스터 이름이 local-cluster 로 표시됩니다.
-
검색 결과는 종류별로 그룹화되며 각 리소스 유형은 테이블에 그룹화됩니다.
- 검색 옵션은 클러스터 오브젝트에 따라 다릅니다.
-
특정 라벨을 사용하여 결과를 구체화할 수 있습니다. 레이블을 쿼리할 때 검색은 대소문자를 구분합니다. 필터링은 선택할 수 있는 다음 예제(
이름
,네임스페이스
,상태
및 기타 리소스 필드)를 참조하십시오. 자동 완성은 검색을 구체화하기 위한 제안을 제공합니다. 다음 예제를 참조하십시오. -
모든 Pod 리소스를 찾으려면
kind:pod
와 같은 단일 필드를 검색합니다. kind:pod namespace:default
와 같은 여러 필드를 검색하여 기본 네임스페이스에서 Pod를 찾습니다.참고:
- 여러 값을 사용하여 둘 이상의 속성 선택기를 검색하면 검색에서 쿼리된 값 중 하나를 반환합니다. 다음 예제를 확인합니다.
-
kind:Pod name:a
를 검색하면a
라는 모든 Pod가 반환됩니다. -
kind:Pod name:a,b
를 검색하면a
또는b
라는 모든 Pod가 반환됩니다. -
kind:pod status:!Running
을 검색하여 상태가Running
이 아닌 모든 Pod 리소스를 찾습니다. -
kind:pod restarts:>1
을 검색하여 최소 두 번 다시 시작한 모든 Pod를 찾습니다.
- 검색을 저장하려면 검색 저장 아이콘을 클릭합니다.
- 검색 결과를 다운로드하려면 내보내기 버튼을 CSV로 선택합니다.
1.3. klusterlet-addon-search 배포 업데이트 링크 복사링크가 클립보드에 복사되었습니다!
관리 클러스터에서 Kubernetes 오브젝트를 수집하기 위해 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
oc edit managedclusteraddon search-collector -n xyz
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 리소스 요구 사항을 주석으로 추가합니다. 다음 예제를 확인합니다.
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
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
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
이 주석은 관리 클러스터의 리소스 요구 사항을 재정의하고 새 리소스 요구 사항을 사용하여 Pod를 자동으로 다시 시작합니다.
참고: 콘솔에서 API Explorer를 사용하여 관리 클러스터에 정의된 모든 리소스를 검색할 수 있습니다. 또는 다음 명령을 실행하여 모든 리소스를 검색할 수도 있습니다. oc api-resources