This procedure describes adding additional Cloud Service Mesh gateways to your Apigee hybrid
installation.
Installing additional Cloud Service Mesh gateways
In the Cloud Service Meshoverlay.yamlfile you can add more ingress gateways by
following a similar pattern as the one below. Note that thespec.components[].labelandspec.components[].k8s.service.selectorelements allow you to associate a named ingress gateway with a specific virtual host, as
explained inTargeting an ingress to a virtual host.
Follow the Cloud Service Mesh documentation for your platform to apply the changes.
Targeting an Cloud Service Mesh/istio ingress to a virtual host
You can target a labeled Cloud Service Mesh/istio ingress gateway to a specific virtual host in your overrides file.
This configuration specifies the ingress gateway where Apigee will apply the virtual host's configuration. In
the following example, traffic to virtual hostmilk-vhis directed through
the ingress labeleddairyand traffic to the other two virtual hosts goes through
thevegetablesingress. The ingresses must be properly labeled, as explained inInstalling additional Apigee ingress gateway gateways.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[[["\u003cp\u003eThis document outlines the process for adding multiple Cloud Service Mesh ingress gateways to an Apigee hybrid installation, starting from version 1.8 which uses Apigee ingress gateway.\u003c/p\u003e\n"],["\u003cp\u003eAdditional ingress gateways can be configured in the \u003ccode\u003eoverlay.yaml\u003c/code\u003e file by defining them under the \u003ccode\u003eingressGateways\u003c/code\u003e section, similar to the example provided.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003elabel\u003c/code\u003e and \u003ccode\u003eselector\u003c/code\u003e elements within the \u003ccode\u003eoverlay.yaml\u003c/code\u003e configuration allow the association of specific named ingress gateways with virtual hosts.\u003c/p\u003e\n"],["\u003cp\u003eSpecific virtual hosts can be targeted to route their traffic through labeled ingress gateways by specifying the desired gateway's \u003ccode\u003elabel\u003c/code\u003e within the virtual host's configuration.\u003c/p\u003e\n"],["\u003cp\u003eVirtual host configurations can specify the target Cloud Service Mesh ingress gateway through which traffic should be directed by making use of the selector key.\u003c/p\u003e\n"]]],[],null,["# Adding multiple ingress gateways to customer-installed Cloud Service Mesh\n\n| You are currently viewing version 1.14 of the Apigee hybrid documentation. For more information, see [Supported versions](/apigee/docs/hybrid/supported-platforms#supported-versions).\n\n\nThis procedure describes adding additional Cloud Service Mesh gateways to your Apigee hybrid\ninstallation.\n| **Note:** Starting with Apigee hybrid version 1.8, Apigee hybrid uses Apigee ingress gateway to provide an ingress gateway for your hybrid installation. To configure multiple Apigee ingress gateways, see [Managing Apigee ingress gateway](/apigee/docs/hybrid/v1.14/managing-ingress#installing-additional-apigee-ingress-gateway-gateways).\n\nInstalling additional Cloud Service Mesh gateways\n-------------------------------------------------\n\n\nIn the Cloud Service Mesh `overlay.yaml` file you can add more ingress gateways by\nfollowing a similar pattern as the one below. Note that the\n`spec.components[].label` and `spec.components[].k8s.service.selector`\nelements allow you to associate a named ingress gateway with a specific virtual host, as\nexplained in [Targeting an ingress to a virtual host](#targetvh). \n\n```\n apiVersion: install.istio.io/v1alpha1\n kind: IstioOperator\n spec:\n profile: asm-gcp\n # hub: gcr.io/gke-release/asm # {\"$ref\":\"#/definitions/io.k8s.cli.setters.anthos.servicemesh.hub\"}\n components:\n ingressGateways:\n - name: istio-ingressgateway-dairy\n enabled: true\n label:\n app: istio-ingressgateway\n ingress_name: dairy\n k8s:\n service:\n selector:\n app: istio-ingressgateway\n ingress_name: dairy\n type: LoadBalancer\n ports:\n - name: status-port\n port: 15021\n - name: http2\n port: 80\n targetPort: 8080\n - name: https\n port: 443\n targetPort: 8443\n hpaSpec:\n minReplicas: 1\n maxReplicas: 10\n - name: istio-ingressgateway-vegetables\n enabled: true\n label:\n app: istio-ingressgateway\n ingress_name: vegetables\n k8s:\n service:\n selector:\n app: istio-ingressgateway\n ingress_name: vegetables\n ports:\n - name: http2\n port: 80\n targetPort: 8080\n - name: status-port\n port: 15020\n - name: https\n port: 443\n targetPort: 8443\n hpaSpec:\n minReplicas: 1\n maxReplicas: 10\n resources:\n requests:\n cpu: 300m\n memory: 128Mi\n \n```\n\n\nFollow the Cloud Service Mesh documentation for your platform to apply the changes.\n\nTargeting an Cloud Service Mesh/istio ingress to a virtual host\n---------------------------------------------------------------\n\nYou can target a labeled Cloud Service Mesh/istio ingress gateway to a specific virtual host in your overrides file.\nThis configuration specifies the ingress gateway where Apigee will apply the virtual host's configuration. In\nthe following example, traffic to virtual host `milk-vh` is directed through\nthe ingress labeled `dairy` and traffic to the other two virtual hosts goes through\nthe `vegetables` ingress. The ingresses must be properly labeled, as explained in\n[Installing additional Apigee ingress gateway gateways](#installing).\n\n\n```\nvirtualhosts:\n - name: milk-vh\n sslCertPath: cert-milk.crt\n sslKeyPath: cert-milk.key\n selector:\n app: istio-ingressgateway\n ingress_name: dairy\n\n - name: carrots-vh\n sslCertPath: cert-carrots.crt\n sslKeyPath: cert-carrots.key\n selector:\n app: istio-ingressgateway\n ingress_name: vegetables\n\n - name: ginger-vh\n sslCertPath: cert-ginger.crt\n sslKeyPath: cert-ginger.key\n selector:\n app: apigee-ingressgateway\n ingress_name: vegetables\n \n```"]]