2.20.


2.20.1.

2.20.2.

2.20.3.

2.20.4.

2.20.5.

2.20.6.

    • 참고

2.20.7.

2.20.7.1.

2.20.7.2.

2.20.7.3.

2.20.7.4.

2.20.7.5.

2.20.8.

2.20.9.

apiVersion: maistra.io/v2
kind: ServiceMeshControlPlane
metadata:
  name: red-mesh
  namespace: red-mesh-system
spec:
  version: v2.6
  runtime:
    defaults:
      container:
        imagePullPolicy: Always
  gateways:
    additionalEgress:
      egress-green-mesh:
        enabled: true
        requestedNetworkView:
        - green-network
        service:
          metadata:
            labels:
              federation.maistra.io/egress-for: egress-green-mesh
          ports:
          - port: 15443
            name: tls
          - port: 8188
            name: http-discovery  #note HTTP here
      egress-blue-mesh:
        enabled: true
        requestedNetworkView:
        - blue-network
        service:
          metadata:
            labels:
              federation.maistra.io/egress-for: egress-blue-mesh
          ports:
          - port: 15443
            name: tls
          - port: 8188
            name: http-discovery  #note HTTP here
    additionalIngress:
      ingress-green-mesh:
        enabled: true
        service:
          type: LoadBalancer
          metadata:
            labels:
              federation.maistra.io/ingress-for: ingress-green-mesh
          ports:
          - port: 15443
            name: tls
          - port: 8188
            name: https-discovery  #note HTTPS here
      ingress-blue-mesh:
        enabled: true
        service:
          type: LoadBalancer
          metadata:
            labels:
              federation.maistra.io/ingress-for: ingress-blue-mesh
          ports:
          - port: 15443
            name: tls
          - port: 8188
            name: https-discovery  #note HTTPS here
  security:
    trust:
      domain: red-mesh.local
Copy to Clipboard Toggle word wrap

Expand
표 2.6.
    
spec:
  cluster:
    name:
Copy to Clipboard Toggle word wrap

spec:
  cluster:
    network:
Copy to Clipboard Toggle word wrap

2.20.9.1.

Expand
표 2.7.
    
spec:
  gateways:
    additionalEgress:
      <egress_name>:
Copy to Clipboard Toggle word wrap

  
spec:
  gateways:
    additionalEgress:
      <egress_name>:
        enabled:
Copy to Clipboard Toggle word wrap

spec:
  gateways:
    additionalEgress:
      <egress_name>:
        requestedNetworkView:
Copy to Clipboard Toggle word wrap

 
spec:
  gateways:
    additionalEgress:
      <egress_name>:
        service:
          metadata:
            labels:
              federation.maistra.io/egress-for:
Copy to Clipboard Toggle word wrap

  
spec:
  gateways:
    additionalEgress:
      <egress_name>:
        service:
          ports:
Copy to Clipboard Toggle word wrap

 
spec:
  gateways:
    additionalIngress:
Copy to Clipboard Toggle word wrap

  
spec:
  gateways:
    additionalIgress:
      <ingress_name>:
        enabled:
Copy to Clipboard Toggle word wrap

spec:
  gateways:
    additionalIngress:
      <ingress_name>:
        service:
          type:
Copy to Clipboard Toggle word wrap

 
spec:
  gateways:
    additionalIngress:
      <ingress_name>:
        service:
          type:
Copy to Clipboard Toggle word wrap

 
spec:
  gateways:
    additionalIngress:
      <ingress_name>:
        service:
          metadata:
            labels:
              federation.maistra.io/ingress-for:
Copy to Clipboard Toggle word wrap

  
spec:
  gateways:
    additionalIngress:
      <ingress_name>:
        service:
          ports:
Copy to Clipboard Toggle word wrap

 
spec:
  gateways:
    additionalIngress:
      <ingress_name>:
        service:
          ports:
            nodePort:
Copy to Clipboard Toggle word wrap

 

apiVersion: maistra.io/v2
kind: ServiceMeshControlPlane
metadata:
  name: green-mesh
  namespace: green-mesh-system
spec:
# ...
  gateways:
     additionalIngress:
      ingress-green-mesh:
        enabled: true
        service:
          type: NodePort
          metadata:
            labels:
              federation.maistra.io/ingress-for: ingress-green-mesh
          ports:
          - port: 15443
            nodePort: 30510
            name: tls
          - port: 8188
            nodePort: 32359
            name: https-discovery
Copy to Clipboard Toggle word wrap

2.20.9.2.

kind: ServiceMeshControlPlane
metadata:
  name: red-mesh
  namespace: red-mesh-system
spec:
  security:
    trust:
      domain: red-mesh.local
Copy to Clipboard Toggle word wrap
Expand
표 2.8.
    
spec:
  security:
    trust:
      domain:
Copy to Clipboard Toggle word wrap

  1. $ oc login --username=<NAMEOFUSER> https://<HOSTNAME>:6443
    Copy to Clipboard Toggle word wrap
  2. $ oc project red-mesh-system
    Copy to Clipboard Toggle word wrap
  3. $ oc edit -n red-mesh-system smcp red-mesh
    Copy to Clipboard Toggle word wrap
  4. $ oc get smcp -n red-mesh-system
    Copy to Clipboard Toggle word wrap

    NAME       READY   STATUS            PROFILES      VERSION   AGE
    red-mesh   10/10   ComponentsReady   ["default"]   2.1.0     4m25s
    Copy to Clipboard Toggle word wrap

2.20.10.

kind: ServiceMeshPeer
apiVersion: federation.maistra.io/v1
metadata:
  name: green-mesh
  namespace: red-mesh-system
spec:
  remote:
    addresses:
    - ingress-red-mesh.green-mesh-system.apps.domain.com
  gateways:
    ingress:
      name: ingress-green-mesh
    egress:
      name: egress-green-mesh
  security:
    trustDomain: green-mesh.local
    clientID: green-mesh.local/ns/green-mesh-system/sa/egress-red-mesh-service-account
    certificateChain:
      kind: ConfigMap
      name: green-mesh-ca-root-cert
Copy to Clipboard Toggle word wrap

Expand
표 2.9.
   
metadata:
  name:
Copy to Clipboard Toggle word wrap

metadata:
  namespace:
Copy to Clipboard Toggle word wrap

spec:
  remote:
    addresses:
Copy to Clipboard Toggle word wrap

 
spec:
  remote:
    discoveryPort:
Copy to Clipboard Toggle word wrap

spec:
  remote:
    servicePort:
Copy to Clipboard Toggle word wrap

spec:
  gateways:
    ingress:
      name:
Copy to Clipboard Toggle word wrap

 
spec:
  gateways:
    egress:
      name:
Copy to Clipboard Toggle word wrap

 
spec:
  security:
    trustDomain:
Copy to Clipboard Toggle word wrap

spec:
  security:
    clientID:
Copy to Clipboard Toggle word wrap

spec:
  security:
    certificateChain:
      kind: ConfigMap
      name:
Copy to Clipboard Toggle word wrap

2.20.10.1.

  1. $ oc login --username=<NAMEOFUSER> <API token> https://<HOSTNAME>:6443
    Copy to Clipboard Toggle word wrap
  2. $ oc project red-mesh-system
    Copy to Clipboard Toggle word wrap
  3. kind: ServiceMeshPeer
    apiVersion: federation.maistra.io/v1
    metadata:
      name: green-mesh
      namespace: red-mesh-system
    spec:
      remote:
        addresses:
        - ingress-red-mesh.green-mesh-system.apps.domain.com
      gateways:
        ingress:
          name: ingress-green-mesh
        egress:
          name: egress-green-mesh
      security:
        trustDomain: green-mesh.local
        clientID: green-mesh.local/ns/green-mesh-system/sa/egress-red-mesh-service-account
        certificateChain:
          kind: ConfigMap
          name: green-mesh-ca-root-cert
    Copy to Clipboard Toggle word wrap

  4. $ oc create -n red-mesh-system -f servicemeshpeer.yaml
    Copy to Clipboard Toggle word wrap
  5. $ oc -n red-mesh-system get servicemeshpeer green-mesh -o yaml
    Copy to Clipboard Toggle word wrap

    status:
      discoveryStatus:
        active:
        - pod: istiod-red-mesh-b65457658-9wq5j
          remotes:
          - connected: true
            lastConnected: "2021-10-05T13:02:25Z"
            lastFullSync: "2021-10-05T13:02:25Z"
            source: 10.128.2.149
          watch:
            connected: true
            lastConnected: "2021-10-05T13:02:55Z"
            lastDisconnectStatus: 503 Service Unavailable
            lastFullSync: "2021-10-05T13:05:43Z"
    Copy to Clipboard Toggle word wrap

2.20.11.

kind: ExportedServiceSet
apiVersion: federation.maistra.io/v1
metadata:
  name: green-mesh
  namespace: red-mesh-system
spec:
  exportRules:
  # export ratings.mesh-x-info as ratings.bookinfo
  - type: NameSelector
    nameSelector:
      namespace: red-mesh-info
      name: red-ratings
      alias:
        namespace: info
        name: ratings
  # export any service in red-mesh-info namespace with label export-service=true
  - type: LabelSelector
    labelSelector:
      namespace: red-mesh-info
      selector:
        matchLabels:
          export-service: "true"
      aliases: # export all matching services as if they were in the info namespace
      - namespace: "*"
        name: "*"
        alias:
          namespace: info
Copy to Clipboard Toggle word wrap

Expand
표 2.10.
   
metadata:
  name:
Copy to Clipboard Toggle word wrap

metadata:
  namespace:
Copy to Clipboard Toggle word wrap

 
spec:
  exportRules:
  - type:
Copy to Clipboard Toggle word wrap

spec:
  exportRules:
  - type: NameSelector
    nameSelector:
      namespace:
      name:
Copy to Clipboard Toggle word wrap

 
spec:
  exportRules:
  - type: NameSelector
    nameSelector:
      alias:
        namespace:
        name:
Copy to Clipboard Toggle word wrap

 
spec:
  exportRules:
  - type: LabelSelector
    labelSelector:
      namespace: <exportingMesh>
      selector:
        matchLabels:
          <labelKey>: <labelValue>
Copy to Clipboard Toggle word wrap

 
spec:
  exportRules:
  - type: LabelSelector
    labelSelector:
      namespace: <exportingMesh>
      selector:
        matchLabels:
          <labelKey>: <labelValue>
      aliases:
      - namespace:
        name:
        alias:
          namespace:
          name:
Copy to Clipboard Toggle word wrap

 

kind: ExportedServiceSet
apiVersion: federation.maistra.io/v1
metadata:
  name: blue-mesh
  namespace: red-mesh-system
spec:
  exportRules:
  - type: NameSelector
    nameSelector:
      namespace: "*"
      name: ratings
Copy to Clipboard Toggle word wrap

kind: ExportedServiceSet
apiVersion: federation.maistra.io/v1
metadata:
  name: green-mesh
  namespace: red-mesh-system
spec:
  exportRules:
  - type: NameSelector
    nameSelector:
      namespace: west-data-center
      name: "*"
Copy to Clipboard Toggle word wrap

2.20.11.1.

참고

참고

  1. $ oc login --username=<NAMEOFUSER> <API token> https://<HOSTNAME>:6443
    Copy to Clipboard Toggle word wrap
  2. $ oc project red-mesh-system
    Copy to Clipboard Toggle word wrap
  3. apiVersion: federation.maistra.io/v1
    kind: ExportedServiceSet
    metadata:
      name: green-mesh
      namespace: red-mesh-system
    spec:
      exportRules:
      - type: NameSelector
        nameSelector:
          namespace: red-mesh-info
          name: ratings
          alias:
            namespace: info
            name: red-ratings
      - type: NameSelector
        nameSelector:
          namespace: red-mesh-info
          name: reviews
    Copy to Clipboard Toggle word wrap

  4. $ oc create -n <ControlPlaneNamespace> -f <ExportedServiceSet.yaml>
    Copy to Clipboard Toggle word wrap

    $ oc create -n red-mesh-system -f export-to-green-mesh.yaml
    Copy to Clipboard Toggle word wrap

  • $ oc get exportedserviceset <PeerMeshExportedTo> -o yaml
    Copy to Clipboard Toggle word wrap

    $ oc -n red-mesh-system get exportedserviceset green-mesh -o yaml
    Copy to Clipboard Toggle word wrap

      status:
        exportedServices:
        - exportedName: red-ratings.info.svc.green-mesh-exports.local
          localService:
            hostname: ratings.red-mesh-info.svc.cluster.local
            name: ratings
            namespace: red-mesh-info
        - exportedName: reviews.red-mesh-info.svc.green-mesh-exports.local
          localService:
            hostname: reviews.red-mesh-info.svc.cluster.local
            name: reviews
            namespace: red-mesh-info
    Copy to Clipboard Toggle word wrap

2.20.12.

kind: ImportedServiceSet
apiVersion: federation.maistra.io/v1
metadata:
  name: red-mesh #name of mesh that exported the service
  namespace: green-mesh-system #mesh namespace that service is being imported into
spec:
  importRules: # first matching rule is used
  # import ratings.info as ratings.bookinfo
  - type: NameSelector
    importAsLocal: false
    nameSelector:
      namespace: info
      name: ratings
      alias:
        # service will be imported as ratings.info.svc.red-mesh-imports.local
        namespace: info
        name: ratings
Copy to Clipboard Toggle word wrap

Expand
표 2.11.
   
metadata:
  name:
Copy to Clipboard Toggle word wrap

 
metadata:
  namespace:
Copy to Clipboard Toggle word wrap

 
spec:
  importRules:
  - type:
Copy to Clipboard Toggle word wrap

spec:
  importRules:
  - type: NameSelector
    nameSelector:
      namespace:
      name:
Copy to Clipboard Toggle word wrap

 
spec:
  importRules:
  - type: NameSelector
    importAsLocal:
Copy to Clipboard Toggle word wrap

spec:
  importRules:
  - type: NameSelector
    nameSelector:
      namespace:
      name:
      alias:
        namespace:
        name:
Copy to Clipboard Toggle word wrap

 

kind: ImportedServiceSet
apiVersion: federation.maistra.io/v1
metadata:
  name: red-mesh
  namespace: blue-mesh-system
spec:
  importRules:
  - type: NameSelector
    importAsLocal: false
    nameSelector:
      namespace: info
      name: ratings
Copy to Clipboard Toggle word wrap

kind: ImportedServiceSet
apiVersion: federation.maistra.io/v1
metadata:
  name: red-mesh
  namespace: green-mesh-system
spec:
  importRules:
  - type: NameSelector
    importAsLocal: false
    nameSelector:
      namespace: west-data-center
      name: "*"
Copy to Clipboard Toggle word wrap

2.20.12.1.

참고

  1. $ oc login --username=<NAMEOFUSER> <API token> https://<HOSTNAME>:6443
    Copy to Clipboard Toggle word wrap
  2. $ oc project green-mesh-system
    Copy to Clipboard Toggle word wrap
  3. kind: ImportedServiceSet
    apiVersion: federation.maistra.io/v1
    metadata:
      name: red-mesh
      namespace: green-mesh-system
    spec:
      importRules:
      - type: NameSelector
        importAsLocal: false
        nameSelector:
          namespace: info
          name: red-ratings
          alias:
            namespace: info
            name: ratings
    Copy to Clipboard Toggle word wrap

  4. $ oc create -n <ControlPlaneNamespace> -f <ImportedServiceSet.yaml>
    Copy to Clipboard Toggle word wrap

    $ oc create -n green-mesh-system -f import-from-red-mesh.yaml
    Copy to Clipboard Toggle word wrap

  • $ oc get importedserviceset <PeerMeshImportedInto> -o yaml
    Copy to Clipboard Toggle word wrap

    $ oc -n green-mesh-system get importedserviceset/red-mesh -o yaml
    Copy to Clipboard Toggle word wrap

    status:
      importedServices:
      - exportedName: red-ratings.info.svc.green-mesh-exports.local
        localService:
          hostname: ratings.info.svc.red-mesh-imports.local
          name: ratings
          namespace: info
      - exportedName: reviews.red-mesh-info.svc.green-mesh-exports.local
        localService:
          hostname: ""
          name: ""
          namespace: ""
    Copy to Clipboard Toggle word wrap

2.20.13.

2.20.13.1.

kind: ImportedServiceSet
apiVersion: federation.maistra.io/v1
metadata:
  name: red-mesh #name of mesh that exported the service
  namespace: green-mesh-system #mesh namespace that service is being imported into
spec:
  importRules: # first matching rule is used
  # import ratings.info as ratings.bookinfo
  - type: NameSelector
    importAsLocal: true
    nameSelector:
      namespace: info
      name: ratings
      alias:
        # service will be imported as ratings.info.svc.red-mesh-imports.local
        namespace: info
        name: ratings
  #Locality within which imported services should be associated.
  locality:
    region: us-west
Copy to Clipboard Toggle word wrap

Expand
표 2.12.
   

  1. $ oc login --username=<NAMEOFUSER> <API token> https://<HOSTNAME>:6443
    Copy to Clipboard Toggle word wrap
  2. $ oc project <smcp-system>
    Copy to Clipboard Toggle word wrap

    $ oc project green-mesh-system
    Copy to Clipboard Toggle word wrap
  3. $ oc edit -n <smcp-system> -f <ImportedServiceSet.yaml>
    Copy to Clipboard Toggle word wrap

    $ oc edit -n green-mesh-system -f import-from-red-mesh.yaml
    Copy to Clipboard Toggle word wrap

2.20.13.2.

  1. $ oc login --username=<NAMEOFUSER> <API token> https://<HOSTNAME>:6443
    Copy to Clipboard Toggle word wrap
  2. $ oc project <smcp-system>
    Copy to Clipboard Toggle word wrap

    $ oc project green-mesh-system
    Copy to Clipboard Toggle word wrap
  3. apiVersion: networking.istio.io/v1beta1
    kind: DestinationRule
    metadata:
      name: default-failover
      namespace: info
    spec:
      host: "ratings.info.svc.cluster.local"
      trafficPolicy:
        loadBalancer:
          localityLbSetting:
            enabled: true
            failover:
              - from: us-east
                to: us-west
        outlierDetection:
          consecutive5xxErrors: 3
          interval: 10s
          baseEjectionTime: 1m
    Copy to Clipboard Toggle word wrap

  4. $ oc create -n <application namespace> -f <DestinationRule.yaml>
    Copy to Clipboard Toggle word wrap

    $ oc create -n info -f green-mesh-us-west-DestinationRule.yaml
    Copy to Clipboard Toggle word wrap

2.20.14.

2.20.14.1.

2.20.14.2.

2.20.15.

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

Theme

© 2025 Red Hat