Use this procedure to migrate existing Apigee hybrid v1.8 installations from using Anthos Service Mesh for ingress to using Apigee ingress gateway.
Apigee ingress gateway in Apigee hybrid version 1.8
Starting in version 1.8, Apigee hybrid offers a new feature to manage the ingress gateway for your hybrid installation, Apigee ingress gateway. Anthos Service Mesh is no longer a prerequisite for hybrid installation and Apigee will stop supplying routing configuration to Anthos Service Mesh. After the upgrade, you have to migrate the traffic to the new Apigee ingress gateway gateway.
Two scenarios for migrating are:
- Multi-cluster or multi-region migration (recommended):
Before switching to a new Ingress for Apigee, drain all the traffic to another cluster or region from the cluster you are migrating. This will give you time to test if the new Apigee ingress gateway gateway is working as expected. Then shift the traffic back to the upgraded cluster.
- In-place upgrade (not recommended in production environments):
During the upgrade Apigee will bring up the new ingress gateway with a new IP address. You can then test if the new Apigee ingress gateway gateway is working as expected, and then shift traffic to the new ingress. There might be downtime during this upgrade.
Install Apigee ingress gateway
To install Apigee ingress gateway, you need to add the
ingressGatewaysproperty to your overrides file.
ingressGateways: - name: INGRESS_NAME replicaCountMin: REPLICAS_MIN replicaCountMax: REPLICAS_MAX resources: requests: cpu: CPU_COUNT_REQ memory: MEMORY_REQ limits: cpu: CPU_COUNT_LIMIT memory: MEMORY_LIMIT svcAnnotations: # optional. See Known issue 243599452. SVC_ANNOTATIONS_KEY: SVC_ANNOTATIONS_VALUE svcLoadBalancerIP: SVC_LOAD_BALANCER_IP # optional
ingressGateways: - name: prod1 replicaCountMin: 2 replicaCountMax: 100 resources: requests: cpu: 1 memory: 1Gi limits: cpu: 2 memory: 2Gi svcAnnotations: # optional. See Known issue 243599452. networking.gke.io/load-balancer-type: "Internal" svcLoadBalancerIP: 184.108.40.206
- INGRESS_NAME is the name of the ingress deployment. This can be any name
that meets the following requirements:
- Have a maximum length of 17 characters
- Contain only lowercase alphanumeric characters, '-' or '.'
- Start with an alphanumeric character
- End with an alphanumeric character
ingressGateways.namein the Configuration property reference.
- REPLICAS_MIN and REPLICAS_MAX are the minimum and maximum replica counts for
Apigee ingress gateway in your installation. For more information and default settings, see
ingressGateways.replicaCountMaxin the Configuration property reference.
- CPU_COUNT_REQ and MEMORY_REQ are the CPU and memory request for each replica of Apigee ingress gateway in your installation.
- CPU_COUNT_LIMIT and MEMORY_LIMIT Are the maximum CPU and memory limits for each replica of Apigee ingress gateway in your installation.
- SVC_ANNOTATIONS_KEY SVC_ANNOTATIONS_VALUE (optional):
This is a key-value pair that provides annotations for your default ingress service. Annotations are used by your cloud platform to help configure your hybrid installation, for example setting the loadbalancer type to either internal or external. For example:
ingressGateways: svcAnnotations: networking.gke.io/load-balancer-type: "Internal"
Annotations vary from platform to platform. Refer to your platform documentation for required and suggested annotations.See
ingressGateways.svcAnnotationsin the Configuration property reference.
- SVC_LOAD_BALANCER_IP (optional) Allows you to assign a static IP address for your
load balancer. On platforms that support specifying the load balancer IP address, the load
balancer will be created with this IP address. On platforms that do not allow you to specify the
load balancer IP address, this property is ignored.
If you do not have a static IP address allocated for your load balancer, leave this property out of your overrides file.See
ingressGateways.svcLoadBalancerIPin the Configuration property reference.
- INGRESS_NAME is the name of the ingress deployment. This can be any name that meets the following requirements:
- Apply the changes to install Apigee ingress gateway with the following commands:
$APIGEECTL_HOME/apigeectl apply -f overrides/overrides.yaml
Switch traffic to Apigee ingress gateway
To migrate traffic from Anthos Service Mesh to Apigee ingress gateway follow the steps in Switch traffic from Anthos Service Mesh to Apigee ingress gateway in the Upgrading to Apigee Hybrid v1.8 topic.