Create the Cloud NATx with the gateway name mcs-euw1-npr-gw, which refers to the EU W3 region. For each region, we have to create a new gateway.
Select the previously created VPC network
Create a new G Cloud Router to exchange the routes with the VPC network: mcs-euw1-npr-router.
Keep the automatic IP allocation ON. If you prefer manual: add one or more NAT IPs (1 or more IPs in multiple of '2' to be used by the NAT gateway. These IPs have to be reserved static IP addresses. In automatic mode, we don’t have full control of IPs and they can change over time and it’s impossible to maintain in a firewall. The main drawback is that we have to monitor that we have enough public IPs associated with the service.
4. GCP cluster creation
As of now (before 2022Q2), GKE Autopilot cluster cannot be used as a config cluster in the hub. So, the cluster to host the Gateway must be GKE standard.
Ensure, that CIDR and other ranges are not taken by other clusters.
For GKE Autopilot clusters, VPC-native traffic routing is enabled by default and cannot be overridden, so --enable-ip-alias is not needed as well as --workload-pool=mcspocbdcc-ef6a.svc.id.goog
After all three clusters have successfully been created, you will need to register these clusters with the GKE Hub. This will map each cluster to the project's fleet, which is the resource that encompasses the GKE clusters targeted by a multi-cluster Gateway.
Created a new membership [projects/mcspocbdcc-ef6a/locations/global/memberships/mcs-aus1-npr-gke-auto] for the cluster [mcs-aus1-npr-gke-auto]
Generating the Connect Agent manifest...
Deploying the Connect Agent on cluster [mcs-aus1-npr-gke-auto] in namespace [gke-connect]...
Deployed the Connect Agent on cluster [mcs-aus1-npr-gke-auto] in namespace [gke-connect].
Finished registering the cluster [mcs-aus1-npr-gke-auto] with the Fleet.
Confirm that the clusters have successfully registered with the GKE Hub:
gcloud container hub memberships list --project=mcspocbdcc-ef6a
Enable multi-cluster Services in your fleet for the registered clusters. This enables the MCS controller for the three clusters that are registered to Hub so that it can start listening to and exporting Services.
Ingress is used when configuring L7 LB, but has the following challenges:
When a namespace is assigned to each microservice that should be isolated from other services, , it is not possible to have one Ingress (L7LB and its VIP) as a representative.
Limited LB functionality supported
For example, Header based routing of External / Internal HTTP (S) LB cannot be configured via Ingress. (At least
3. One resource is called Ingress, and covers protocols, IP addresses, port numbers, TLS certificates, and URL path routing, and it is difficult for people without infrastructure knowledge to operate it.
The Gateway API consists of multiple resources such as:
Enable the multi-cluster GKE Gateway controller and specify your config cluster. Note that you can always update the config cluster at a later time. This example specifies mcs-euw1-npr-gke-auto as the