1.8. ServiceMeshControlPlane 생성
1.8.1. About ServiceMeshControlPlane 링크 복사링크가 클립보드에 복사되었습니다!
컨트롤 플레인에는 Istiod, Ingress 및 Egress 게이트웨이 및 Kiali 및 Jaeger와 같은 기타 구성 요소가 포함됩니다. 컨트롤 플레인은 Service Mesh Operator 및 데이터 플레인 애플리케이션 및 서비스와 다른 별도의 네임스페이스에 배포해야 합니다. AWS 웹 콘솔의 Red Hat OpenShift Service 또는 oc
클라이언트 툴을 사용하여 명령줄에서 SMCP( ServiceMeshControlPlane
)의 기본 설치를 배포할 수 있습니다.
이 기본 설치는 AWS의 기본 Red Hat OpenShift Service를 기반으로 구성되며 프로덕션용으로 설계되지 않습니다. 이 기본 설치를 사용하여 설치를 확인한 다음 환경에 대한 ServiceMeshControlPlane
설정을 구성합니다.
AWS의 Red Hat OpenShift Service에서 사용할 컨트롤 플레인을 배포하는 경우 인증 오류로 인해 시작되지 않는 Red Hat 지식베이스 문서 OpenShift 서비스 메시 operator Istio 기본 정보에서 새 프로젝트 추가 및 Pod 시작에 대해 설명합니다.
1.8.1.1. 웹 콘솔에서 Service Mesh Control Plane 배포 링크 복사링크가 클립보드에 복사되었습니다!
웹 콘솔을 사용하여 기본 ServiceMeshControlPlane
을 배포할 수 있습니다. 이 예제에서 istio-system
은 Service Mesh Control Plane 프로젝트의 이름입니다.
사전 요구 사항
- Red Hat OpenShift Service Mesh Operator가 설치되어 있어야 합니다.
-
dedicated-admin
역할의 사용자로 AWS 웹 콘솔의 Red Hat OpenShift Service에 로그인했습니다.
절차
-
cluster-admin
역할의 사용자로 AWS 웹 콘솔에서 Red Hat OpenShift Service에 로그인합니다. Red Hat OpenShift Dedicated를 사용하는 경우dedicated-admin
역할의 계정이 있어야 합니다. istio-system
이라는 프로젝트를 생성합니다.-
홈
프로젝트로 이동합니다. - 프로젝트 만들기를 클릭합니다.
-
이름 필드에
istio-system
을 입력합니다.ServiceMeshControlPlane
리소스는 마이크로 서비스 및 Operator와 별도로istio-system
프로젝트에 설치해야 합니다. - 생성을 클릭합니다.
-
홈
-
Operators
설치된 Operator로 이동합니다. - Red Hat OpenShift Service Mesh Operator를 클릭한 다음 Istio Service Mesh Control Plane을 클릭합니다.
Istio Service Mesh Control Plane 탭에서 ServiceMeshControlPlane 생성을 클릭합니다.
- 기본 Service Mesh Control Plane 버전을 수락하여 최신 버전의 제품에서 사용할 수 있는 기능을 활용합니다. 컨트롤 플레인의 버전에 따라 Operator 버전에 관계없이 사용 가능한 기능을 결정합니다.
-
AWS의 Red Hat OpenShift Service에 필요한
spec.security.identity.type.Thirdparty
필드를 추가합니다. - 생성을 클릭합니다.
Operator는 구성 매개변수를 기반으로 pods, 서비스 및 Service Mesh Control Plane 구성 요소를 생성합니다. 나중에
ServiceMeshControlPlane
설정을 구성할 수 있습니다.
검증
컨트롤 플레인이 올바르게 설치되었는지 확인하려면 Istio Service Mesh Control Plane 탭을 클릭합니다.
- 새 컨트롤 플레인의 이름을 클릭합니다.
- 리소스 탭을 클릭하여 Operator가 생성 및 구성된 Red Hat OpenShift Service Mesh Control Plane 리소스를 확인합니다.
1.8.1.2. CLI를 사용하여 Service Mesh Control Plane 배포 링크 복사링크가 클립보드에 복사되었습니다!
명령줄에서 기본 ServiceMeshControlPlane
을 배포할 수 있습니다.
사전 요구 사항
- Red Hat OpenShift Service Mesh Operator가 설치되어 있어야 합니다.
-
OpenShift CLI(
oc
)에 액세스합니다. -
dedicated-admin
역할의 사용자로 AWS의 Red Hat OpenShift Service에 로그인했습니다.
절차
istio-system
이라는 프로젝트를 생성합니다.oc new-project istio-system
$ oc new-project istio-system
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ServiceMeshControlPlane
리소스는 마이크로 서비스 및 Operator와 별도로istio-system
프로젝트에 설치해야 합니다.다음 예제를 사용하여
istio-installation.yaml
이라는ServiceMeshControlPlane
파일을 생성합니다. Service Mesh Control Plane 버전에 따라 Operator 버전에 관계없이 사용 가능한 기능을 결정합니다.ServiceMeshControlPlane
리소스 예Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- AWS의 Red Hat OpenShift Service에 필요한 설정을 지정합니다.
다음 명령을 실행하여 서비스 메시 컨트롤 플레인을 배포합니다. 여기서 <
istio_installation.yaml
>에는 파일에 대한 전체 경로가 포함됩니다.oc create -n istio-system -f <istio_installation.yaml>
$ oc create -n istio-system -f <istio_installation.yaml>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Pod 배포의 진행 상황을 보려면 다음 명령을 실행합니다.
oc get pods -n istio-system -w
$ oc get pods -n istio-system -w
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력은 다음과 유사합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
1.8.1.3. CLI를 사용하여 SMCP 설치 검증 링크 복사링크가 클립보드에 복사되었습니다!
명령줄에서 ServiceMeshControlPlane
생성을 검증할 수 있습니다.
사전 요구 사항
- Red Hat OpenShift Service Mesh Operator가 설치되어 있어야 합니다.
-
OpenShift CLI(
oc
)에 액세스합니다. -
dedicated-admin
역할의 사용자로 AWS의 Red Hat OpenShift Service에 로그인했습니다.
절차
다음 명령을 실행하여 서비스 메시 컨트롤 플레인 설치를 확인합니다. 여기서
istio-system
은 Service Mesh Control Plane을 설치한 네임스페이스입니다.oc get smcp -n istio-system
$ oc get smcp -n istio-system
Copy to Clipboard Copied! Toggle word wrap Toggle overflow STATUS
열이ComponentsReady
인 경우 설치가 성공적으로 완료되었습니다.NAME READY STATUS PROFILES VERSION AGE basic 10/10 ComponentsReady ["default"] 2.6.7 66m
NAME READY STATUS PROFILES VERSION AGE basic 10/10 ComponentsReady ["default"] 2.6.7 66m
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
1.8.2. 컨트롤 플레인 및 클러스터 전체 배포 정보 링크 복사링크가 클립보드에 복사되었습니다!
클러스터 전체 배포에는 전체 클러스터의 리소스를 모니터링하는 Service Mesh Control Plane이 포함되어 있습니다. 컨트롤 플레인이 모든 네임스페이스에서 단일 쿼리를 사용하여 Istio 및 Kubernetes 리소스를 모니터링한다는 점에서 전체 클러스터의 모니터링 리소스는 Istio 기능과 유사합니다. 결과적으로 클러스터 전체 배포는 API 서버로 전송되는 요청 수를 줄입니다.
AWS 웹 콘솔의 Red Hat OpenShift Service 또는 CLI를 사용하여 클러스터 전체 배포에 대해 Service Mesh Control Plane을 구성할 수 있습니다.
1.8.2.1. 웹 콘솔을 사용하여 클러스터 전체 배포를 위한 컨트롤 플레인 구성 링크 복사링크가 클립보드에 복사되었습니다!
AWS 웹 콘솔에서 Red Hat OpenShift Service를 사용하여 클러스터 전체 배포에 대한 ServiceMeshControlPlane
리소스를 구성할 수 있습니다. 이 예제에서 istio-system
은 Service Mesh Control Plane 프로젝트의 이름입니다.
사전 요구 사항
- Red Hat OpenShift Service Mesh Operator가 설치되어 있습니다.
-
dedicated-admin
역할의 사용자로 AWS의 Red Hat OpenShift Service에 로그인했습니다.
절차
istio-system
이라는 프로젝트를 생성합니다.-
홈
프로젝트로 이동합니다. - 프로젝트 만들기를 클릭합니다.
이름 필드에
istio-system
을 입력합니다.ServiceMeshControlPlane
리소스는 마이크로 서비스 및 Operator와 별도로 프로젝트에 설치해야 합니다.이러한 단계에서는
istio-system
을 예제로 사용합니다. 서비스가 포함된 프로젝트와 별도로 Service Mesh Control Plane을 모든 프로젝트에 배포할 수 있습니다.- 생성을 클릭합니다.
-
홈
-
Operators
설치된 Operator로 이동합니다. - Red Hat OpenShift Service Mesh Operator를 클릭한 다음 Istio Service Mesh Control Plane을 클릭합니다.
- Istio Service Mesh Control Plane 탭에서 ServiceMeshControlPlane 생성을 클릭합니다.
- YAML 보기를 클릭합니다. Service Mesh Control Plane 버전에 따라 Operator 버전에 관계없이 사용 가능한 기능을 결정합니다.
spec.mode
필드를 수정하고spec.security.identity.type.Third party
필드를 추가합니다.ServiceMeshControlPlane
리소스 예Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
생성을 클릭합니다. Operator는 구성 매개변수를 기반으로 pods, 서비스 및 Service Mesh Control Plane 구성 요소를 생성합니다. 또한 기본 구성의 일부로 없는 경우 Operator는
ServiceMeshMemberRoll
을 생성합니다.
검증
컨트롤 플레인이 올바르게 설치되었는지 확인하려면 다음을 수행하십시오.
- Istio Service Mesh Control Plane 탭을 클릭합니다.
-
새
ServiceMeshControlPlane
오브젝트의 이름을 클릭합니다. - 리소스 탭을 클릭하여 Operator가 생성 및 구성한 Red Hat OpenShift Service Mesh Control Plane 리소스를 확인합니다.
1.8.2.2. CLI를 사용하여 클러스터 전체 배포를 위한 컨트롤 플레인 구성 링크 복사링크가 클립보드에 복사되었습니다!
CLI를 사용하여 클러스터 전체 배포에 대한 ServiceMeshControlPlane
리소스를 구성할 수 있습니다. 이 예에서 istio-system
은 Service Mesh Control Plane 네임스페이스의 이름입니다.
사전 요구 사항
- Red Hat OpenShift Service Mesh Operator가 설치되어 있습니다.
-
OpenShift CLI(
oc
)에 액세스할 수 있습니다. -
dedicated-admin
역할의 사용자로 AWS의 Red Hat OpenShift Service에 로그인했습니다.
절차
istio-system
이라는 프로젝트를 생성합니다.oc new-project istio-system
$ oc new-project istio-system
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 예제를 사용하여
istio-installation.yaml
이라는ServiceMeshControlPlane
파일을 생성합니다.ServiceMeshControlPlane
리소스 예Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 서비스 메시 컨트롤 플레인을 배포합니다.
oc create -n istio-system -f <istio_installation.yaml>
$ oc create -n istio-system -f <istio_installation.yaml>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음과 같습니다.
- <istio_installation.yaml>
- 파일의 전체 경로를 지정합니다.
검증
Pod 배포의 진행 상황을 모니터링하려면 다음 명령을 실행합니다.
oc get pods -n istio-system -w
$ oc get pods -n istio-system -w
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 예와 유사한 출력이 표시됩니다.
출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
1.8.2.3. 클러스터 전체 메시의 멤버 롤 사용자 정의 링크 복사링크가 클립보드에 복사되었습니다!
클러스터 전체 모드에서는 ServiceMeshControlPlane
리소스를 생성할 때 ServiceMeshMemberRoll
리소스도 생성됩니다. ServiceMeshMemberRoll
리소스를 생성한 후 수정할 수 있습니다. 리소스를 수정한 후 Service Mesh Operator에서 더 이상 변경하지 않습니다. AWS 웹 콘솔에서 Red Hat OpenShift Service를 사용하여 ServiceMeshMemberRoll
리소스를 수정하는 경우 프롬프트를 수락하여 수정 사항을 덮어씁니다.
또는 ServiceMeshControlPlane
리소스를 배포하기 전에 ServiceMeshMemberRoll
리소스를 생성할 수 있습니다. ServiceMeshControlPlane
리소스를 생성할 때 Service Mesh Operator는 ServiceMeshMemberRoll
을 수정하지 않습니다.
ServiceMeshMemberRoll
리소스 이름은 default
로 지정해야 하며 ServiceMeshControlPlane
리소스와 동일한 프로젝트 네임스페이스에서 생성해야 합니다.
메시에 네임스페이스를 추가하는 방법은 다음 두 가지가 있습니다. spec.members
목록에 해당 이름을 지정하여 네임스페이스를 추가하거나 레이블을 기반으로 네임스페이스를 포함하거나 제외하도록 네임스페이스를 구성할 수 있습니다.
ServiceMeshMemberRoll
리소스에 멤버를 지정하는 방법에 관계없이 각 네임스페이스에서 ServiceMeshMember
리소스를 생성하여 메시에 멤버를 추가할 수도 있습니다.
1.8.3. Kiali를 사용하여 SMCP 설치 검증 링크 복사링크가 클립보드에 복사되었습니다!
Kiali 콘솔을 사용하여 서비스 메시 설치를 검증할 수 있습니다. Kiali 콘솔은 Service Mesh 구성 요소가 올바르게 배포 및 구성되었는지 확인하는 몇 가지 방법을 제공합니다.
사전 요구 사항
- Red Hat OpenShift Service Mesh Operator가 설치되어 있어야 합니다.
-
OpenShift CLI(
oc
)에 액세스합니다. -
dedicated-admin
역할의 사용자로 AWS의 Red Hat OpenShift Service에 로그인했습니다.
절차
-
AWS 웹 콘솔의 Red Hat OpenShift Service에서 네트워킹
경로로 이동합니다. 경로 페이지의 네임스페이스 메뉴에서 Service Mesh Control Plane 프로젝트(예:
istio-system
)를 선택합니다.Location 열에는 각 경로에 대한 연결된 주소가 표시됩니다.
- 필요한 경우 필터를 사용하여 Kiali 콘솔의 경로를 찾습니다. 경로 위치를 클릭하여 콘솔을 시작합니다.
Log In With OpenShift 를 클릭합니다.
Kiali 콘솔에 처음 로그인하면 표시 권한이 있는 서비스 메시에 모든 네임스페이스가 표시되는 개요 페이지가 표시됩니다. 개요 페이지에 네임스페이스가 여러 개 있는 경우 Kiali는 먼저 상태 또는 검증 문제가 있는 네임스페이스를 표시합니다.
그림 1.1. Kiali 개요 페이지
각 네임스페이스의 타일은 라벨 수, Istio Config 상태, 애플리케이션 상태 및 네임스페이스의 트래픽 을 표시합니다. 콘솔 설치의 유효성을 검증하고 네임스페이스가 메시에 추가되지 않은 경우
istio-system
이외의 다른 데이터를 표시할 데이터가 없을 수 있습니다.Kiali에는 특히 Service Mesh Control Plane이 설치된 네임스페이스에 대해 네 개의 대시보드가 있습니다. 이러한 대시보드를 보려면 컨트롤 플레인 네임스페이스 타일(예:
istio-system
)에서 옵션 메뉴를 클릭하고 다음 옵션 중 하나를 선택합니다.
- Istio 메시 대시보드
- Istio 컨트롤 플레인 대시보드
- Istio 성능 대시보드
Istio ExetTION 대시보드
그림 1.2. Grafana Istio Control Plane 대시보드
Kiali는 Grafana 홈 페이지에서 사용할 수 있는 두 개의 추가 Grafana 대시보드도 설치합니다.
- Istio 워크로드 대시보드
- Istio 서비스 대시보드
Service Mesh Control Plane 노드를 보려면 그래프 페이지를 클릭하고 메뉴에서
ServiceMeshControlPlane
을 설치한 네임스페이스 (예:istio-system
)를 선택합니다.- 필요한 경우 유휴 노드 표시를 클릭합니다.
- 그래프 페이지에 대해 자세히 알아보려면 그래프 둘러보기 링크를 클릭합니다.
- 메시 토폴로지를 보려면 네임스페이스 메뉴에서 서비스 메시 멤버 롤에서 하나 이상의 추가 네임스페이스를 선택합니다.
istio-system
네임스페이스에서 애플리케이션 목록을 보려면 애플리케이션 페이지를 클릭합니다. Kiali는 애플리케이션의 상태를 표시합니다.- 정보 아이콘 위에 마우스를 올려 놓으면 세부 정보 열에 언급된 추가 정보를 볼 수 있습니다.
istio-system
네임스페이스에서 워크로드 목록을 보려면 워크로드 페이지를 클릭합니다. Kiali는 워크로드 상태를 표시합니다.- 정보 아이콘 위에 마우스를 올려 놓으면 세부 정보 열에 언급된 추가 정보를 볼 수 있습니다.
istio-system
네임스페이스에서 서비스 목록을 보려면 서비스 페이지를 클릭합니다. Kiali는 서비스 및 구성의 상태를 표시합니다.- 정보 아이콘 위에 마우스를 올려 놓으면 세부 정보 열에 언급된 추가 정보를 볼 수 있습니다.
istio-system
네임스페이스에서 Istio Configuration 오브젝트 목록을 보려면 Istio Config 페이지를 클릭합니다. Kiali는 구성 상태를 표시합니다.- 구성 오류가 있는 경우 행을 클릭하고 Kiali는 오류가 강조 표시된 구성 파일을 엽니다.
1.8.5. 다음 단계 링크 복사링크가 클립보드에 복사되었습니다!
- 애플리케이션을 사용할 수 있도록 서비스 메시에 프로젝트를 추가합니다. 자세한 내용은 서비스 메시에 서비스 추가를 참조하십시오.