4장. Red Hat에서 제공하는 Kiali Operator
4.1. Red Hat에서 제공하는 Kiali Operator 사용
메시에 애플리케이션을 추가한 후에는 Red Hat에서 제공하는 Kiali Operator를 사용하여 애플리케이션을 통한 데이터 흐름을 볼 수 있습니다.
4.1.1. Kiali 정보
Red Hat에서 제공하는 Kiali Operator를 사용하여 구성을 보고 트래픽을 모니터링하고 단일 콘솔에서 추적을 분석할 수 있습니다. 오픈 소스 Kiali 프로젝트를 기반으로 합니다.
Red Hat에서 제공하는 Kiali Operator는 Red Hat OpenShift Service Mesh의 관리 콘솔입니다. 대시보드, 관찰 기능, 강력한 구성 및 유효성 검사 기능을 제공합니다. 트래픽 토폴로지를 유추하고 서비스 메시의 구조를 표시하고 메시의 상태를 표시합니다. Kiali는 자세한 메트릭, 강력한 검증, Grafana에 대한 액세스, Red Hat OpenShift distributed tracing Platform(Tempo)과의 강력한 통합을 제공합니다.
4.1.2. Red Hat에서 제공하는 Kiali Operator 설치
다음 단계에서는 Red Hat에서 제공하는 Kiali Operator를 설치하는 방법을 보여줍니다.
Operator의 커뮤니티 버전을 설치하지 마십시오. 커뮤니티 버전은 지원되지 않습니다.
사전 요구 사항
- Red Hat OpenShift Service Mesh 웹 콘솔에 액세스합니다.
프로세스
- Red Hat OpenShift Service Mesh 웹 콘솔에 로그인합니다.
-
Operators
OperatorHub로 이동합니다. - Kiali 를 필터 상자에 입력하여 Red Hat에서 제공하는 Kiali Operator를 찾습니다.
- Red Hat에서 제공하는 Kiali Operator 를 클릭하여 Operator에 대한 정보를 표시합니다.
- 설치를 클릭합니다.
- Operator 설치 페이지에서 stable 업데이트 채널을 선택합니다.
-
클러스터의 모든 네임스페이스(기본값)를 선택합니다. 이렇게 하면 기본
openshift-operators
프로젝트에서 Operator가 설치되고 클러스터의 모든 프로젝트에서 Operator를 사용할 수 있습니다. 자동 승인 전략을 선택합니다.
참고수동 승인 전략을 사용하려면 적절한 인증 정보가 있는 사용자가 Operator 설치 및 서브스크립션 프로세스를 승인해야 합니다.
- 설치를 클릭합니다.
- 설치된 Operator 페이지에 Kiali Operator의 설치 진행 상황을 표시합니다.
4.1.3. Kiali를 사용하여 OpenShift 모니터링 구성
다음 단계에서는 Red Hat에서 제공하는 Kiali Operator를 사용자 워크로드 모니터링과 통합하는 방법을 보여줍니다.
사전 요구 사항
- Red Hat OpenShift Service Mesh가 설치되어 있습니다.
- 사용자 워크로드 모니터링이 활성화되어 있습니다. 사용자 정의 프로젝트에 대한 모니터링 활성화를 참조하십시오.
- OpenShift 모니터링은 Service Mesh를 사용하여 구성되었습니다. "Service Mesh를 사용하여 OpenShift 모니터링 구성"을 참조하십시오.
- Red Hat 1.89에서 제공하는 Kiali Operator가 설치되어 있습니다.
프로세스
Kiali에 대한
ClusterRoleBinding
리소스를 생성합니다.ClusterRoleBinding
구성의 예apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: kiali-monitoring-rbac roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: cluster-monitoring-view subjects: - kind: ServiceAccount name: kiali-service-account namespace: istio-system
Kiali 리소스를 생성하고 Istio 인스턴스를 가리킵니다.
Kiali 리소스 구성의 예
apiVersion: kiali.io/v1alpha1 kind: Kiali metadata: name: kiali-user-workload-monitoring namespace: istio-system spec: external_services: prometheus: auth: type: bearer use_kiali_token: true thanos_proxy: enabled: true url: https://thanos-querier.openshift-monitoring.svc.cluster.local:9091
Kiali 리소스가 준비되면 다음 명령을 실행하여 경로에서 Kiali URL을 가져옵니다.
$ echo "https://$(oc get routes -n istio-system kiali -o jsonpath='{.spec.host}')"
- URL에 따라 웹 브라우저에서 Kiali를 엽니다.
4.1.4. Red Hat에서 제공하는 Kiali Operator와 Red Hat OpenShift distributed tracing 플랫폼 통합
Red Hat에서 제공하는 Kiali Operator와 Red Hat OpenShift distributed tracing 플랫폼을 통합하여 다음 기능을 사용할 수 있습니다.
- 그래프에 추적 오버레이 및 세부 정보를 표시합니다.
- 세부 정보 페이지에 chart 및 심층적인 추적/연장 정보를 표시합니다.
- 로그 및 메트릭 차트에 통합된 범위 정보입니다.
- 외부 추적 UI에 대한 링크를 제공합니다.
4.1.4.1. Red Hat에서 제공하는 Kiali Operator를 사용하여 Red Hat OpenShift distributed tracing 플랫폼 구성
Red Hat에서 제공하는 Kiali Operator가 Red Hat OpenShift distributed tracing 플랫폼과 통합되면 Kiali 콘솔에서 분산 추적을 볼 수 있습니다. 이러한 추적을 보면 서비스 메시 내의 서비스 간 통신에 대한 인사이트를 제공할 수 있으므로, 요청이 시스템을 통과하는 방법과 잠재적인 문제가 있을 수 있는 위치를 파악할 수 있습니다.
사전 요구 사항
- Red Hat OpenShift Service Mesh를 설치했습니다.
- Red Hat OpenShift Service Mesh를 사용하여 분산 추적 플랫폼을 구성했습니다.
프로세스
추적에 대한
Kiali
리소스사양
구성을 업데이트합니다.추적을 위한
Kiali
리소스사양
구성의 예spec: external_services: tracing: enabled: true 1 provider: tempo use_grpc: false in_cluster_url: http://tempo-sample-query-frontend.tempo:3200 url: https://tempo-sample-query-frontend-tempo.apps-crc.testing 2
-
업데이트된
사양
을kiali_cr.yaml
에 저장합니다. 다음 명령을 실행하여 구성을 적용합니다.
$ oc patch -n istio-system kiali kiali --type merge -p "$(cat kiali_cr.yaml)"
출력 예:
kiali.kiali.io/kiali patched
검증
다음 명령을 실행하여 Kiali 경로를 가져옵니다.
$ oc get route kiali ns istio-system
- Kiali UI로 이동합니다.
-
워크로드
추적 탭으로 이동하여 Kiali UI에서 추적을 확인합니다.