검색

2.5.

download PDF
주의

Service Mesh를 설치하려면 OpenShift Elasticsearch, Jaeger, Kiali, Service Mesh Operator를 설치하고, ServiceMeshControlPlane 리소스를 생성 및 관리하여 컨트롤 플레인을 배포하며, Service MeshMemberRoll 리소스를 생성하여 Service Mesh와 연결된 네임스페이스를 지정해야 합니다.

참고

Mixer의 정책 적용은 기본적으로 비활성화되어 있습니다. 정책 작업을 실행하려면 활성화해야 합니다.

참고

참고

Service Mesh 문서는 istio-system을 예제 프로젝트로 사용하지만, 모든 프로젝트에 서비스 메시를 배포할 수 있습니다.

2.5.1. 사전 요구 사항

  • cluster-admin 역할이 있는 계정.

서비스 메시 설치 프로세스는 OperatorHub를 사용하여 openshift-operators 프로젝트 내에 ServiceMeshControlPlane 사용자 정의 리소스 정의를 설치합니다. Red Hat OpenShift Service Mesh는 컨트롤 플레인의 배포, 업데이트 및 삭제와 관련된 ServiceMeshControlPlane을 정의하고 모니터링합니다.

2.5.2. OpenShift Elasticsearch Operator 설치

사전 요구 사항

  • cluster-admin 역할의 사용자로 클러스터에 액세스할 수 있어야 합니다. Red Hat OpenShift Dedicated를 사용하는 경우 dedicated-admin 역할의 계정이 있어야 합니다.
주의

Operator의 커뮤니티 버전은 설치하지 마십시오. 커뮤니티 Operator는 지원되지 않습니다.

참고

이미 OpenShift Elasticsearch Operator를 OpenShift 로깅의 일부로 설치한 경우 OpenShift Elasticsearch Operator를 다시 설치할 필요가 없습니다.

절차

  1. Red Hat OpenShift Dedicated를 사용하는 경우 dedicated-admin 역할의 계정이 있어야 합니다.
  2. Operators OperatorHub로 이동합니다.
  3. Elasticsearch를 필터 상자에 입력하여 OpenShift Elasticsearch Operator를 찾습니다.
  4. Red Hat에서 제공하는 OpenShift Elasticsearch Operator를 클릭하여 Operator에 대한 정보를 표시합니다.
  5. 설치를 클릭합니다.
  6. Operator 설치 페이지에서 stable 업데이트 채널을 선택합니다.
  7. 참고

    Elasticsearch 설치에는 OpenShift Elasticsearch Operator의 openshift-operators-redhat 네임스페이스가 필요합니다.

    • 클러스터 관리자는 Operator를 새 버전으로 업데이트하려면 OLM 업데이트 요청을 수동으로 승인해야 합니다.

      참고

  8. 설치를 클릭합니다.
  9. 설치된 Operator 페이지에서 openshift-operators-redhat 프로젝트를 선택합니다. 계속하기 전에 OpenShift Elasticsearch Operator에 "InstallSucceeded" 상태가 표시될 때까지 기다립니다.

2.5.3.

사전 요구 사항

  • cluster-admin 역할의 사용자로 클러스터에 액세스할 수 있어야 합니다. Red Hat OpenShift Dedicated를 사용하는 경우 dedicated-admin 역할의 계정이 있어야 합니다.
주의

Operator의 커뮤니티 버전은 설치하지 마십시오. 커뮤니티 Operator는 지원되지 않습니다.

절차

  1. Red Hat OpenShift Dedicated를 사용하는 경우 dedicated-admin 역할의 계정이 있어야 합니다.
  2. Operators OperatorHub로 이동합니다.
  3. 설치를 클릭합니다.
  4. Operator 설치 페이지에서 stable 업데이트 채널을 선택합니다.
  5. 이렇게 하면 기본 openshift-operators 프로젝트에서 Operator가 설치되고 클러스터의 모든 프로젝트에서 Operator를 사용할 수 있습니다.

    • 클러스터 관리자는 Operator를 새 버전으로 업데이트하려면 OLM 업데이트 요청을 수동으로 승인해야 합니다.

      참고

  6. 설치를 클릭합니다.
  7. Operators 설치된 Operator로 이동합니다.

2.5.4. Kiali Operator 설치

주의

Operator의 커뮤니티 버전은 설치하지 마십시오. 커뮤니티 Operator는 지원되지 않습니다.

사전 요구 사항

절차

  1. Operators OperatorHub로 이동합니다.
  2. Kiali를 필터 상자에 입력하여 Kiali Operator를 찾습니다.
  3. Red Hat에서 제공하는 Kiali Operator를 클릭하여 Operator에 대한 정보를 표시합니다.
  4. 설치를 클릭합니다.
  5. Operator 설치 페이지에서 stable 업데이트 채널을 선택합니다.
  6. 클러스터의 모든 네임스페이스(기본값)를 선택합니다. 이렇게 하면 기본 openshift-operators 프로젝트에서 Operator가 설치되고 클러스터의 모든 프로젝트에서 Operator를 사용할 수 있습니다.
  7. 자동 승인 전략을 선택합니다.

    참고

    수동 승인 전략을 사용하려면 적절한 인증 정보를 가진 사용자가 Operator 설치 및 서브스크립션 프로세스를 승인해야 합니다.

  8. 설치를 클릭합니다.
  9. 설치된 Operator 페이지에 Kiali Operator의 설치 진행 상황을 표시합니다.

2.5.5. Operator 설치

Red Hat OpenShift Service Mesh를 설치하려면 다음 Operator를 이 순서대로 설치합니다. 각 Operator에 대한 절차를 반복합니다.

  • OpenShift Elasticsearch
  • Kiali
  • Red Hat OpenShift Service Mesh
참고

이미 OpenShift Elasticsearch Operator를 OpenShift 로깅의 일부로 설치한 경우 OpenShift Elasticsearch Operator를 다시 설치할 필요가 없습니다.

절차

  1. Red Hat OpenShift Dedicated를 사용하는 경우 dedicated-admin 역할의 계정이 있어야 합니다.
  2. Operator 이름을 필터 상자에 입력하고 Operator의 Red Hat 버전을 선택합니다. Operator의 커뮤니티 버전은 지원되지 않습니다.
  3. 설치를 클릭합니다.
  4. 설치를 클릭합니다. 목록에서 다음 Operator에 대한 단계를 반복하기 전에 Operator가 설치될 때까지 기다립니다.

  5. 4개의 Operator를 모두 설치한 후 Operators 설치된 Operators를 클릭하여 Operator가 설치되었는지 확인합니다.

2.5.6. Red Hat OpenShift Service Mesh Control Plane 배포

ServiceMeshControlPlane 리소스는 설치 중에 사용할 구성을 정의합니다. Red Hat에서 제공하는 기본 구성을 배포하거나 비즈니스 요구에 맞게 ServiceMeshControlPlane 파일을 사용자 지정할 수 있습니다.

2.5.6.1. 웹 콘솔에서 컨트롤 플레인 배포

웹 콘솔을 사용하여 Red Hat OpenShift Service Mesh Control Plane을 배포하려면 다음 절차를 따르십시오. 이 예제에서 istio-system은 컨트롤 플레인 프로젝트의 이름입니다.

사전 요구 사항

  • Red Hat OpenShift Service Mesh Operator가 설치되어 있어야 합니다.
  • Red Hat OpenShift Service Mesh 설치를 사용자 지정하는 방법에 대한 지침을 검토하십시오.
  • cluster-admin 역할이 있는 계정.

절차

  1. istio-system이라는 프로젝트를 생성합니다.

    1. 프로젝트로 이동합니다.
    2. 프로젝트 만들기를 클릭합니다.
    3. 이름 필드에 istio-system을 입력합니다.
    4. 생성을 클릭합니다.
  2. Operators 설치된 Operator로 이동합니다.
  3. 필요한 경우 프로젝트 메뉴에서 istio-system을 선택합니다. Operator가 새 프로젝트에 복사될 때까지 몇 분 정도 기다려야 할 수 있습니다.
  4. Red Hat OpenShift Service Mesh Operator를 클릭합니다. 제공된 API에서 Operator는 두 가지 리소스 유형을 생성할 수 있는 링크를 제공합니다.

    • ServiceMeshControlPlane 리소스
    • ServiceMeshMemberRoll 리소스
  5. Istio Service Mesh Control Plane에서 ServiceMeshControlPlane 만들기를 클릭합니다.
  6. Service Mesh Control Plane 페이지에서 필요에 따라 기본 ServiceMeshControlPlane 템플릿에 대한 YAML을 수정합니다.

    참고

    컨트롤 플레인 사용자 지정에 대한 자세한 내용은 Red Hat OpenShift Service Mesh 설치 사용자 지정을 참조하십시오. 프로덕션의 경우 기본 Jaeger 템플릿을 변경해야 합니다.

  7. 생성을 클릭하여 컨트롤 플레인을 생성합니다. Operator는 구성 매개변수를 기반으로 pods, 서비스 및 Service Mesh Control Plane 구성 요소를 생성합니다.
  8. Istio Service Mesh Control Plane 탭을 클릭합니다.
  9. 새 컨트롤 플레인의 이름을 클릭합니다.
  10. 리소스 탭을 클릭하여 Operator가 생성 및 구성된 Red Hat OpenShift Service Mesh Control Plane 리소스를 확인합니다.

2.5.6.2. CLI에서 컨트롤 플레인 배포

Red Hat OpenShift Service Mesh Control Plane에 명령줄을 배포하려면 다음 절차를 따르십시오.

사전 요구 사항

  • Red Hat OpenShift Service Mesh Operator가 설치되어 있어야 합니다.
  • Red Hat OpenShift Service Mesh 설치를 사용자 지정하는 방법에 대한 지침을 검토하십시오.
  • cluster-admin 역할이 있는 계정.
  • OpenShift CLI(oc)에 액세스합니다.

절차

  1. $ oc login --username=<NAMEOFUSER> https://<HOSTNAME>:6443
  2. istio-system이라는 프로젝트를 생성합니다.

    $ oc new-project istio-system
  3. “Red Hat OpenShift Service Mesh 설치 사용자 지정”에서 확인된 예제를 사용하여 istio-installation.yaml이라는 ServiceMeshControlPlane 파일을 생성합니다. 필요에 따라, 사용 사례와 일치하도록 사용자 지정할 수 있습니다. 프로덕션 배포의 경우 기본 Jaeger 템플릿을 변경해야 합니다.
  4. 다음 명령을 실행하여 컨트롤 플레인을 배포합니다.

    $ oc create -n istio-system -f istio-installation.yaml
  5. 다음 명령을 실행하여 컨트롤 플레인 설치 상태를 확인합니다.

    $ oc get smcp -n istio-system

    NAME            READY   STATUS            PROFILES      VERSION   AGE
    basic-install   11/11   ComponentsReady   ["default"]   v1.1.18   4m25s
  6. 다음 명령을 실행하여 설치 프로세스 중에 Pod의 진행 상황을 확인합니다.

    $ oc get pods -n istio-system -w

    출력은 다음과 유사합니다.

    출력 예

    NAME                                     READY   STATUS             RESTARTS   AGE
    grafana-7bf5764d9d-2b2f6                 2/2     Running            0          28h
    istio-citadel-576b9c5bbd-z84z4           1/1     Running            0          28h
    istio-egressgateway-5476bc4656-r4zdv     1/1     Running            0          28h
    istio-galley-7d57b47bb7-lqdxv            1/1     Running            0          28h
    istio-ingressgateway-dbb8f7f46-ct6n5     1/1     Running            0          28h
    istio-pilot-546bf69578-ccg5x             2/2     Running            0          28h
    istio-policy-77fd498655-7pvjw            2/2     Running            0          28h
    istio-sidecar-injector-df45bd899-ctxdt   1/1     Running            0          28h
    istio-telemetry-66f697d6d5-cj28l         2/2     Running            0          28h
    jaeger-896945cbc-7lqrr                   2/2     Running            0          11h
    kiali-78d9c5b87c-snjzh                   1/1     Running            0          22h
    prometheus-6dff867c97-gr2n5              2/2     Running            0          28h

멀티 테넌트 설치의 경우, Red Hat OpenShift Service Mesh는 클러스터 내에서 여러 개의 독립적인 컨트롤 플레인을 지원합니다. ServiceMeshControlPlane 템플릿을 사용하여 재사용 가능한 구성을 생성할 수 있습니다.

2.5.7. Red Hat OpenShift Service Mesh 멤버 롤 생성

ServiceMeshMemberRoll에 나열된 프로젝트만 컨트롤 플레인의 영향을 받습니다. 특정 컨트롤 플레인 배포의 멤버 롤에 추가할 때까지 프로젝트는 서비스 메시에 속하지 않습니다.

ServiceMeshControlPlane과 동일한 프로젝트에서 default 라는 ServiceMeshMemberRoll 리소스를 생성해야 합니다. (예: istio-system)

2.5.7.1. 웹 콘솔에서 멤버 롤 생성

웹 콘솔에서 서비스 메시 멤버 롤에 하나 이상의 프로젝트를 추가할 수 있습니다.

사전 요구 사항

  • Red Hat OpenShift Service Mesh Operator 설치 및 검증.
  • 서비스 메시에 추가할 기존 프로젝트 목록.

절차

  1. 메시에 대한 서비스가 아직 없거나 처음부터 시작하려는 경우 애플리케이션에 대한 프로젝트를 생성합니다.

    1. 프로젝트로 이동합니다.
    2. 이름 필드에 이름을 입력합니다.
    3. 생성을 클릭합니다.
  2. Operators 설치된 Operator로 이동합니다.
  3. 프로젝트 메뉴를 클릭하고 목록에서 ServiceMeshControlPlane 리소스가 배포되는 프로젝트를 선택합니다(예: istio-system).
  4. Red Hat OpenShift Service Mesh Operator를 클릭합니다.
  5. Istio Service Mesh 멤버 목록 탭을 클릭합니다.
  6. ServiceMeshMemberRoll 만들기를 클릭합니다.
  7. Members를 클릭한 다음 Value 필드에 프로젝트 이름을 입력합니다. 여러 프로젝트를 추가할 수 있지만 프로젝트는 하나ServiceMeshMemberRoll 리소스에만 속할 수 있습니다.
  8. 생성을 클릭합니다.

2.5.7.2. CLI에서 멤버 롤 생성

명령줄의 ServiceMeshMemberRoll에 프로젝트를 추가할 수 있습니다.

사전 요구 사항

  • Red Hat OpenShift Service Mesh Operator 설치 및 검증.
  • 서비스 메시에 추가할 프로젝트 목록.
  • OpenShift CLI(oc)에 액세스합니다.

절차

  1. $ oc login --username=<NAMEOFUSER> https://<HOSTNAME>:6443
  2. 메시에 대한 서비스가 아직 없거나 처음부터 시작하려는 경우 애플리케이션에 대한 프로젝트를 생성합니다.

    $ oc new-project <your-project>
  3. 프로젝트를 멤버로 추가하려면 다음 예제 YAML을 수정합니다. 여러 프로젝트를 추가할 수 있지만 프로젝트는 하나ServiceMeshMemberRoll 리소스에만 속할 수 있습니다.

    servicemeshmemberroll-default.yaml 예

    apiVersion: maistra.io/v1
    kind: ServiceMeshMemberRoll
    metadata:
      name: default
      namespace: istio-system
    spec:
      members:
        # a list of projects joined into the service mesh
        - your-project-name
        - another-project-name

  4. 다음 명령을 실행하여 istio-system 네임스페이스에 ServiceMeshMemberRoll 리소스를 업로드하고 만듭니다.

    $ oc create -n istio-system -f servicemeshmemberroll-default.yaml
  5. 다음 명령을 실행하여 ServiceMeshMemberRoll이 성공적으로 생성되었는지 확인합니다.

    $ oc get smmr -n istio-system default

    STATUS 열이 Configured인 경우 설치가 성공적으로 완료된 것입니다.

2.5.8. 서비스 메시에서 프로젝트 추가 또는 제거

웹 콘솔을 사용하여 기존 Service Mesh ServiceMeshMemberRoll 리소스에서 프로젝트를 추가하거나 제거할 수 있습니다.

  • 여러 프로젝트를 추가할 수 있지만 프로젝트는 하나ServiceMeshMemberRoll 리소스에만 속할 수 있습니다.
  • 해당 ServiceMeshControlPlane 리소스가 삭제되면 ServiceMeshMemberRoll 리소스가 삭제됩니다.

2.5.8.1. 웹 콘솔을 사용하여 멤버 롤에서 프로젝트 추가 또는 제거

사전 요구 사항

  • Red Hat OpenShift Service Mesh Operator 설치 및 검증.
  • 기존 ServiceMeshMemberRoll 리소스.
  • ServiceMeshMemberRoll 리소스를 사용한 프로젝트의 이름.
  • 메시에서 추가하거나 삭제하려는 프로젝트의 이름.

절차

  1. Operators 설치된 Operator로 이동합니다.
  2. 프로젝트 메뉴를 클릭하고 목록에서 ServiceMeshControlPlane 리소스가 배포되는 프로젝트를 선택합니다(예: istio-system).
  3. Red Hat OpenShift Service Mesh Operator를 클릭합니다.
  4. Istio Service Mesh 멤버 목록 탭을 클릭합니다.
  5. default 링크를 클릭합니다.
  6. YAML 탭을 클릭합니다.
  7. YAML을 수정하여 프로젝트를 멤버로 추가하거나 제거합니다. 여러 프로젝트를 추가할 수 있지만 프로젝트는 하나ServiceMeshMemberRoll 리소스에만 속할 수 있습니다.
  8. 저장을 클릭합니다.
  9. 새로 고침을 클릭합니다.

2.5.8.2. CLI를 사용하여 멤버 롤에서 프로젝트 추가 또는 제거

명령줄을 사용하여 기존 서비스 메시 멤버 목록을 수정할 수 있습니다.

사전 요구 사항

  • Red Hat OpenShift Service Mesh Operator 설치 및 검증.
  • 기존 ServiceMeshMemberRoll 리소스.
  • ServiceMeshMemberRoll 리소스를 사용한 프로젝트의 이름.
  • 메시에서 추가하거나 삭제하려는 프로젝트의 이름.
  • OpenShift CLI(oc)에 액세스합니다.

절차

  1. ServiceMeshMemberRoll 리소스를 편집합니다.

    $ oc edit smmr -n <controlplane-namespace>
  2. YAML을 수정하여 프로젝트를 멤버로 추가하거나 제거합니다. 여러 프로젝트를 추가할 수 있지만 프로젝트는 하나ServiceMeshMemberRoll 리소스에만 속할 수 있습니다.

    servicemeshmemberroll-default.yaml 예

    apiVersion: maistra.io/v1
    kind: ServiceMeshMemberRoll
    metadata:
      name: default
      namespace: istio-system #control plane project
    spec:
      members:
        # a list of projects joined into the service mesh
        - your-project-name
        - another-project-name

2.5.9. 수동 업데이트

수동으로 업데이트하는 경우 OLM(Operator Lifecycle Manager)은 클러스터에서 Operator의 설치, 업그레이드 및 역할 기반 액세스 제어(RBAC)를 제어합니다. OLM은 Operator Registry API를 사용하는 CatalogSources를 통해 활용 가능한 Operator와 설치된 Operator의 업그레이드를 쿼리합니다.

2.5.9.1.

배포 시 자동 사이드카 삽입을 사용하는 경우 주석을 추가하거나 수정하여 배포에서 pod 템플릿을 업데이트할 수 있습니다. 다음 명령을 실행하여 pod를 다시 배포합니다.

$ oc patch deployment/<deployment> -p '{"spec":{"template":{"metadata":{"annotations":{"kubectl.kubernetes.io/restartedAt": "'`date -Iseconds`'"}}}}}'

2.5.10. 다음 단계

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.