This procedure describes adding additional Anthos Service Mesh (ASM) gateways to your Apigee hybrid
installation.
Installing additional Anthos Service Mesh gateways
In the ASM overlay.yaml file you can add more ingress gateways by
following a similar pattern as the one below. Note that the
spec.components[].label and spec.components[].k8s.service.selector
elements allow you to associate a named ingress gateway with a specific virtual host, as
explained in Targeting an ingress to a virtual host.
Follow the Anthos Service Mesh documentation for your platform to apply the changes.
Targeting an ASM/istio ingress to a virtual host
You can target a labeled ASM/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 host milk-vh is directed through
the ingress labeled dairy and traffic to the other two virtual hosts goes through
the vegetables ingress. The ingresses must be properly labeled, as explained in
Installing 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-08-29 UTC."],[[["\u003cp\u003eThis document details the process of adding supplementary Anthos Service Mesh (ASM) gateways to an Apigee hybrid setup.\u003c/p\u003e\n"],["\u003cp\u003eStarting with Apigee hybrid version 1.8, the Apigee ingress gateway has been used to provide an ingress gateway for the hybrid installation.\u003c/p\u003e\n"],["\u003cp\u003eAdditional ingress gateways can be defined within the ASM \u003ccode\u003eoverlay.yaml\u003c/code\u003e file using a specific format that allows named ingress gateways to be associated with specific virtual hosts.\u003c/p\u003e\n"],["\u003cp\u003eYou can target a specific ASM/istio ingress gateway to a particular virtual host in your overrides file, which will direct traffic to that virtual host through the specified gateway.\u003c/p\u003e\n"],["\u003cp\u003eTo apply the changes, you will need to refer to the Anthos Service Mesh documentation relevant to your platform.\u003c/p\u003e\n"]]],[],null,["# Adding multiple ingress gateways to customer-installed Anthos Service Mesh\n\n| You are currently viewing version 1.10 of the Apigee hybrid documentation. **This version is end of life.** You should upgrade to a newer version. For more information, see [Supported versions](/apigee/docs/hybrid/supported-platforms#supported-versions).\n\n\nThis procedure describes adding additional Anthos Service Mesh (ASM) 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.10/managing-ingress#installing-additional-apigee-ingress-gateway-gateways).\n\nInstalling additional Anthos Service Mesh gateways\n--------------------------------------------------\n\n\nIn the ASM `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 Anthos Service Mesh documentation for your platform to apply the changes.\n\nTargeting an ASM/istio ingress to a virtual host\n------------------------------------------------\n\nYou can target a labeled ASM/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```"]]