6.5. 다중 클러스터 메시에 Kiali 설치


두 OpenShift Container Platform 클러스터의 다중 클러스터 메시 구성에 Kiali를 설치합니다.

참고

이 절차에서 CLUSTER1 은 동부 클러스터이며 CLUSTER2 는 서부 클러스터입니다.

두 개 이상의 클러스터에 걸쳐 메시에 대해 이러한 지침을 조정할 수 있습니다.

사전 요구 사항

  • 각 클러스터에 최신 Kiali Operator가 설치되어 있습니다.
  • Istio는 각 클러스터의 다중 클러스터 구성에 설치됩니다.
  • 이러한 지침을 실행하는 데 사용할 수 있는 랩탑에 istioctl 이 설치되어 있습니다.
  • cluster-admin 역할의 사용자로 OpenShift Container Platform 웹 콘솔에 로그인되어 있습니다.
  • Kiali가 모든 클러스터에서 메트릭을 쿼리할 수 있도록 메트릭 저장소를 구성했습니다. Kiali는 각 끝점에서 메트릭 및 추적을 쿼리합니다.

프로세스

  1. 동 클러스터에 Kiali를 설치합니다.

    1. Kiali 배포를 위한 네임스페이스를 생성하는 kiali.yaml 이라는 YAML 파일을 생성합니다.

      설정 예

      apiVersion: kiali.io/v1alpha1
      kind: Kiali
      metadata:
        name: kiali
        namespace: istio-system
      spec:
        version: default
        external_services:
          prometheus:
            auth:
              type: bearer
              use_kiali_token: true
            thanos_proxy:
              enabled: true
            url: https://thanos-querier.openshift-monitoring.svc.cluster.local:9091
      Copy to Clipboard Toggle word wrap

      참고

      이 예제의 끝점은 OpenShift Monitoring을 사용하여 메트릭을 구성합니다. 자세한 내용은 " Kiali를 사용하여 OpenShift 모니터링 구성"을 참조하십시오.

    2. 다음 명령을 실행하여 동 클러스터에 YAML 파일을 적용합니다.

      $ oc --context cluster1 apply -f kiali.yaml
      Copy to Clipboard Toggle word wrap

      출력 예

      kiali-istio-system.apps.example.com
      Copy to Clipboard Toggle word wrap

  2. 다음 명령을 실행하여 Kiali CR(사용자 정의 리소스)이 준비되었는지 확인합니다.

    $ oc wait --context cluster1 --for=condition=Successful kialis/kiali -n istio-system --timeout=3m
    Copy to Clipboard Toggle word wrap

    출력 예

    kiali.kiali.io/kiali condition met
    Copy to Clipboard Toggle word wrap

  3. Kiali 경로 호스트 이름을 표시합니다.

    $ oc --context cluster1 get route kiali -n istio-system -o jsonpath='{.spec.host}'
    Copy to Clipboard Toggle word wrap
  4. West 클러스터에서 Kiali CR을 생성합니다.

    설정 예

    apiVersion: kiali.io/v1alpha1
    kind: Kiali
    metadata:
      name: kiali
      namespace: istio-system
    spec:
      version: default
      auth:
        openshift:
          redirect_uris:
            # Replace kiali-route-hostname with the hostname from the previous step.
            - "https://{kiali-route-hostname}/api/auth/callback/cluster2"
      deployment:
        remote_cluster_resources_only: true
    Copy to Clipboard Toggle word wrap

    Kiali Operator는 동부 클러스터에서 Kiali 서버에 필요한 리소스를 웨스트 클러스터에 연결하는 데 필요한 리소스를 생성합니다. Kiali 서버는 서부 클러스터에 설치되지 않습니다.

  5. 다음 명령을 실행하여 서부 클러스터에 YAML 파일을 적용합니다.

    $ oc --context cluster2 apply -f kiali-remote.yaml
    Copy to Clipboard Toggle word wrap
  6. 다음 명령을 실행하여 Kiali CR이 준비되었는지 확인합니다.

    $ oc wait --context cluster2 --for=condition=Successful kialis/kiali -n istio-system --timeout=3m
    Copy to Clipboard Toggle word wrap
  7. 동 클러스터에 Kiali 설치가 웨스트 클러스터에 액세스할 수 있도록 원격 클러스터 시크릿을 생성합니다.

    1. West 클러스터에서 kiali-service-account에 바인딩된 긴 라이브 API 토큰을 생성합니다. Kiali는 이 토큰을 사용하여 서부 클러스터를 인증합니다.

      설정 예

      apiVersion: v1
      kind: Secret
      metadata:
        name: "kiali-service-account"
        namespace: "istio-system"
        annotations:
          kubernetes.io/service-account.name: "kiali-service-account"
      type: kubernetes.io/service-account-token
      Copy to Clipboard Toggle word wrap

    2. 다음 명령을 실행하여 서부 클러스터에 YAML 파일을 적용합니다.

      $ oc --context cluster2 apply -f kiali-svc-account-token.yaml
      Copy to Clipboard Toggle word wrap
    3. kubeconfig 파일을 생성하고 Kiali 배포가 있는 동부 클러스터의 네임스페이스에 시크릿으로 저장합니다.

      이 프로세스를 단순화하려면 다음 curl 명령을 실행하여 kiali-prepare-remote-cluster.sh 스크립트를 사용하여 kubeconfig 파일을 생성합니다.

      $ curl -L -o kiali-prepare-remote-cluster.sh https://raw.githubusercontent.com/kiali/kiali/master/hack/istio/multicluster/kiali-prepare-remote-cluster.sh
      Copy to Clipboard Toggle word wrap
    4. 다음 명령을 실행하여 실행할 수 있도록 스크립트를 수정합니다.

      chmod +x kiali-prepare-remote-cluster.sh
      Copy to Clipboard Toggle word wrap
    5. 다음 명령을 실행하여 동 및 서부 클러스터 컨텍스트를 kubeconfig 파일에 전달하도록 스크립트를 실행합니다.

      $ ./kiali-prepare-remote-cluster.sh --kiali-cluster-context cluster1 --remote-cluster-context cluster2 --view-only false --kiali-resource-name kiali-service-account --remote-cluster-namespace istio-system --process-kiali-secret true --process-remote-resources false --remote-cluster-name cluster2
      Copy to Clipboard Toggle word wrap
      참고

      스크립트 사용 방법에 대한 추가 세부 정보를 표시하려면 --help 옵션을 사용합니다.

  8. Kiali Operator가 다음 명령을 실행하여 CR에 포함된 원격 시크릿을 등록하도록 조정 루프를 트리거합니다.

    $ oc --context cluster1 annotate kiali kiali -n istio-system --overwrite kiali.io/reconcile="$(date)"
    Copy to Clipboard Toggle word wrap
  9. 다음 명령을 실행하여 Kiali 리소스가 준비될 때까지 기다립니다.

    oc --context cluster1 wait --for=condition=Successful --timeout=2m kialis/kiali -n istio-system
    Copy to Clipboard Toggle word wrap
  10. 다음 명령을 실행하여 Kiali 서버가 준비될 때까지 기다립니다.

    oc --context cluster1 rollout status deployments/kiali -n istio-system
    Copy to Clipboard Toggle word wrap
  11. Kiali에 로그인합니다.

    1. Kiali에 처음 액세스할 때 Kiali 배포가 포함된 클러스터에 로그인합니다. 이 예에서는 East 클러스터에 액세스합니다.
    2. 다음 명령을 실행하여 Kiali 경로의 호스트 이름을 표시합니다.

      oc --context cluster1 get route kiali -n istio-system -o jsonpath='{.spec.host}'
      Copy to Clipboard Toggle word wrap
    3. 브라우저에서 Kiali URL로 이동합니다. https://<your-kiali-route-hostname>.
  12. Kiali를 통해 West 클러스터에 로그인합니다.

    Kiali UI에서 다른 클러스터를 보려면 먼저 Kiali를 통해 해당 클러스터에 사용자로 로그인해야 합니다.

    1. 오른쪽 상단 메뉴에서 사용자 프로필 드롭다운을 클릭합니다.
    2. West에 로그인을 선택합니다. OpenShift 로그인 페이지로 리디렉션되고 West 클러스터에 대한 인증 정보를 입력하라는 메시지가 표시됩니다.
  13. Kiali가 두 클러스터의 정보를 표시하는지 확인합니다.

    1. 개요 를 클릭하고 두 클러스터에서 네임스페이스가 표시되는지 확인합니다.
    2. 탐색을 클릭하고 메시 그래프에 두 클러스터가 모두 표시되는지 확인합니다.
맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat