Aggiunta di più gateway in entrata a Cloud Service Mesh installato dal cliente

Questa procedura descrive l'aggiunta di altri gateway Cloud Service Mesh all'installazione ibrida di Apigee.

Installazione di gateway Cloud Service Mesh aggiuntivi

Nel file overlay.yaml di Cloud Service Mesh puoi aggiungere altri gateway di ingresso seguendo un pattern simile a quello riportato di seguito. Tieni presente che gli elementi spec.components[].label e spec.components[].k8s.service.selector ti consentono di associare un gateway di ingresso denominato a un host virtuale specifico, come spiegato in Scegliere come target un ingresso per un host virtuale.

  apiVersion: install.istio.io/v1alpha1
  kind: IstioOperator
  spec:
    profile: asm-gcp
    # hub: gcr.io/gke-release/asm # {"$ref":"#/definitions/io.k8s.cli.setters.anthos.servicemesh.hub"}
    components:
      ingressGateways:
      - name: istio-ingressgateway-dairy
        enabled: true
        label:
          app: istio-ingressgateway
          ingress_name: dairy
        k8s:
          service:
            selector:
              app: istio-ingressgateway
              ingress_name: dairy
            type: LoadBalancer
            ports:
            - name: status-port
              port: 15021
            - name: http2
              port: 80
              targetPort: 8080
            - name: https
              port: 443
              targetPort: 8443
          hpaSpec:
            minReplicas: 1
            maxReplicas: 10
      - name: istio-ingressgateway-vegetables
        enabled: true
        label:
          app: istio-ingressgateway
          ingress_name: vegetables
        k8s:
          service:
            selector:
              app: istio-ingressgateway
              ingress_name: vegetables
            ports:
            - name: http2
              port: 80
              targetPort: 8080
            - name: status-port
              port: 15020
            - name: https
              port: 443
              targetPort: 8443
          hpaSpec:
            minReplicas: 1
            maxReplicas: 10
          resources:
            requests:
              cpu: 300m
              memory: 128Mi
  

Per applicare le modifiche, segui la documentazione di Cloud Service Mesh per la tua piattaforma.

Scegliere un host virtuale come target di un traffico Cloud Service Mesh/istio in entrata

Puoi scegliere come target un gateway in entrata Cloud Service Mesh/istio etichettato a un host virtuale specifico nel file di override. Questa configurazione specifica il gateway in entrata in cui Apigee applicherà la configurazione dell'host virtuale. Nel seguente esempio, il traffico all'host virtuale milk-vh viene indirizzato tramite l'ingresso etichettato dairy e il traffico verso gli altri due host virtuali passa tramite l'ingresso vegetables. Gli Ingress devono essere etichettati correttamente, come spiegato Installazione di gateway gateway in entrata Apigee aggiuntivi.

virtualhosts:
  - name: milk-vh
    sslCertPath: cert-milk.crt
    sslKeyPath: cert-milk.key
    selector:
      app: istio-ingressgateway
      ingress_name: dairy

  - name: carrots-vh
    sslCertPath: cert-carrots.crt
    sslKeyPath: cert-carrots.key
    selector:
      app: istio-ingressgateway
      ingress_name: vegetables

  - name: ginger-vh
    sslCertPath: cert-ginger.crt
    sslKeyPath: cert-ginger.key
    selector:
      app: apigee-ingressgateway
      ingress_name: vegetables