1.4. 검색 선택기를 사용하여 서비스 메시의 범위 지정


서비스 메시에는 다음 기준을 충족하는 워크로드가 포함됩니다.

  • 컨트롤 플레인에서 워크로드를 검색했습니다.
  • 워크로드에 Envoy 프록시 사이드카가 삽입되어 있습니다.

기본적으로 컨트롤 플레인은 다음과 같은 결과를 통해 클러스터의 모든 네임스페이스에서 워크로드를 검색합니다.

  • 각 프록시 인스턴스는 메시에 등록되지 않은 워크로드를 포함하여 모든 네임스페이스에 대한 구성을 받습니다.
  • 적절한 Pod 또는 네임스페이스 삽입 레이블이 있는 모든 워크로드는 프록시 사이드카를 수신합니다.

공유 클러스터에서는 서비스 메시의 범위를 특정 네임스페이스로만 제한할 수 있습니다. 이 접근 방식은 여러 서비스 메시가 동일한 클러스터에서 실행되는 경우 특히 유용합니다.

1.4.1. 검색 선택기 정보

검색 선택기를 사용하면 메시 관리자는 컨트롤 플레인에서 액세스할 수 있는 네임스페이스를 제어할 수 있습니다. 관리자는 Kubernetes 라벨 선택기를 사용하여 지정된 기준과 일치하지 않는 네임스페이스를 제외하고 컨트롤 플레인에 표시되는 네임스페이스에 대한 기준을 설정합니다.

참고

Istiod는 모든 네임스페이스에 대해 항상 OpenShift에 대한 감시를 엽니다. 그러나 검색 선택기는 처리 초기에 선택되지 않은 오브젝트를 무시하여 비용을 최소화합니다.

discoverySelectors 필드는 네임스페이스의 라벨에 적용되는 Kubernetes 선택기 배열을 허용합니다. 다양한 사용 사례에 대해 각 선택기를 구성할 수 있습니다.

  • 사용자 정의 레이블 이름 및 값. 예를 들어 istio-discovery=enabled 레이블이 있는 모든 네임스페이스를 구성합니다.
  • OR 논리와 함께 세트 기반 선택기를 사용하여 네임스페이스 레이블 목록입니다. 예를 들어 istio-discovery=enabled OR region=us-east1 을 사용하여 네임스페이스를 구성합니다.
  • 네임스페이스 포함 및 제외. 예를 들어 istio-discovery=enabledapp=helloworld 레이블을 사용하여 네임스페이스를 구성합니다.
참고

검색 선택기는 보안 경계가 아닙니다. Istiod는 discoverySelector 필드를 구성한 경우에도 모든 네임스페이스에 계속 액세스할 수 있습니다.

1.4.2. 검색 선택기를 사용하여 서비스 메시의 범위 지정

Service Mesh에 포함할 네임스페이스를 알고 있는 경우 Istio 리소스의 meshConfig. discoverySelectors 섹션에 필요한 선택기를 추가하여 설치 중 또는 설치 후 discoverySelectors를 구성합니다. 예를 들어 istio-discovery=enabled 라는 레이블이 지정된 네임스페이스만 검색하도록 Istio를 구성합니다.

사전 요구 사항

  • OpenShift Service Mesh Operator가 설치되어 있습니다.
  • Istio CNI 리소스가 생성됩니다.

프로세스

  1. Istio 컨트롤 플레인이 포함된 네임스페이스에 레이블을 추가합니다(예: istio-system 시스템 네임스페이스).

    $ oc label namespace istio-system istio-discovery=enabled
  2. 동일한 레이블이 있는 discoverySelectors 섹션을 포함하도록 Istio 컨트롤 플레인 리소스를 수정합니다.

    kind: Istio
    apiVersion: sailoperator.io/v1alpha1
    metadata:
      name: default
    spec:
      namespace: istio-system
      values:
        meshConfig:
          discoverySelectors:
            - matchLabels:
                istio-discovery: enabled
  3. Istio CR을 적용합니다.

    $ oc apply -f istio.yaml
  4. 서비스 메시의 일부가 될 워크로드가 포함된 모든 네임스페이스에 discoverySelector 레이블과 필요한 경우 적절한 Istio injection 라벨이 있어야 합니다.
참고

검색 선택기는 단일 서비스 메시의 범위를 제한할 수 있으며 단일 클러스터에 여러 Istio 컨트롤 플레인을 배포할 때 컨트롤 플레인 범위를 제한하는 데 필수적입니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.