While cloud native architecture offers many benefits when it comes to application modernization, some challenges remain for customers. However, VMware Tanzu for Kubernetes Operations on Dell VxRail can improve application resiliency and the performance needed to quickly and securely build, deploy, and manage your multi-cloud environment. This post delves into some of the problems of cloud native architecture, as well as how Tanzu for Kubernetes Operations on Dell VxRail helps overcome these obstacles.
Cloud native benefits and challenges
The typical cloud native approach is to build and run applications that take advantage of the cloud computing delivery model. When companies build and operate applications using a cloud native architecture, they bring new ideas to market and respond to customer demands faster. Cloud native development is about how applications are created and deployed, and not where. With the e-commerce explosion in the last decade or so, application availability and performance has taken a central role in the design and deployment of these online applications; because simply, application downtime and sluggish websites amount to lost revenue.
Most cloud providers offer multi-availability zone (Multi-AZ) architecture for their subscribers that may provide application resiliency against downtime. This, however, is applicable only within the cloud provider’s network. A growing number of customers are subscribing to multiple cloud providers depending on their requirements, budgets, and to avoid single provider tie-in. Additionally, customers may also have an on-premises private cloud instance for development or hosting special applications. Therefore, providing application resiliency and performance across a true multi-cloud environment that fulfills the cloud native promise across deployments is not trivial.
Completing the cloud native story on-premises and beyond
A reference architecture developed jointly with Dell was launched at Dell Tech World 2022. This reference architecture provided an on-premises private cloud with complete lifecycle management and observability through VMware Tanzu Mission Control and Aria Operations for Apps. The updated version of this reference architecture presents a complete multi-cloud story and addresses the challenges with application resiliency and performance as well as multi-cloud manageability and governance.
Tanzu for Kubernetes Operations on VxRail multi-cloud architecture.
Note: This article discusses central pieces to the above reference architecture to address the challenges in multi-cloud modern application lifecycle.
Global server load balancing (GSLB)
Tanzu for Kubernetes Operations includes NSX Advanced Load Balancer (Avi) with a feature that provides domain name system (DNS) namespaces for applications. GSLB balances application load across multiple instances of the application regardless of the location. With NSX Advanced Load Balancer, GSLB is more than just load balancing application endpoints. It is also about providing resiliency through redundancy and delivering superior user experience by directing requests to applications that are the nearest instance to the user’s location.
- Performance – Passing user requests to the nearest servers minimizes network latency and network issues. GSLB ensures optimal website or service performance to clients in geographically distributed areas.
- Customized content – GSLB allows enterprises to host content on local servers that is customized for relevance in that geographic location and language.
- Disaster recovery – High application availability minimizes the impact of data center or network failures. For instance, if a power outage affects California, the load balancer will redirect client requests to other servers hosted in multiple sites that are spread apart geographically.
- Cloud bursting – If applications are hosted in hybrid clouds, the GSLB system can burst to a public cloud to absorb the unusually high load.
- Maintenance – Data center migrations and upgrades can be executed in a non-disruptive manner since the client requests can simply be redirected to servers elsewhere.
- Compliance – GSLB makes it easier to adhere to government regulations, especially if the website or services serve tightly regulated industries like defense, telecommunications, or healthcare. Local servers and GSLB-forwarding preferences can be customized to comply with country-specific regulations.
Load balancing can be performed based on the user’s geolocation or round-robin algorithms. With GSLB, each time a Kubernetes application is installed, a virtual service is created with the application’s URL. Users access the application using its URL and the user is directed to the appropriate site based on the algorithm and preference set by the GSLB administrator. The image below shows the GSLB workflow.
An example of GSLB load balancing.
In instances when an application or site is unavailable, the requests are serviced by the active sites. For our example reference architecture, the authoritative DNS server was in the on-premises data center. For redundancy, secondary DNS servers were also installed on the Equinix site. If desired, the corporate DNS server or DNS zones can also be hosted on Amazon Route53. The following image shows the workflow when a site is not available in the GSLB environment.
An example of GSLB site failure.
Note: Complete instructions on how GSLB can be configured in a multi-cloud environment using NSX Advanced Load Balancer can be found in the reference architecture.
The following video shows a real life example of this site failure scenario.
Distributed microservices via VMware Tanzu Service Mesh
VMware Tanzu Service Mesh is an enterprise-class service mesh solution that provides reliable control and security for microservices, end users, and data across all your clusters and clouds in the most demanding multi-cluster and multi-cloud environments.
To control application traffic, Tanzu Service Mesh provides fine-grained traffic management policies that give you complete control and visibility into how traffic and API calls flow between your services and across clusters and clouds. To secure communication between services and protect sensitive data, you can use Tanzu Service Mesh to implement a zero-trust security model for cloud-based applications.
You can measure application performance with a configurable service level objective (SLO) definition. For more information, see the SLOs set in the Tanzu Service Mesh documentation. As application demands change, you can auto-scale services to maintain SLOs using Tanzu Service Mesh Service Autoscaler. For more information, see the Service Autoscaling section of the Tanzu Service Mesh documentation.
Additionally, Tanzu Service Mesh supports cross-cluster and cross-cloud use cases with global namespaces (GNSs). With a GNS, you can securely deploy applications across clusters and clouds and have consistent traffic management policies, application continuity, and security policies across cloud silos and boundaries, regardless of where the applications are running. Each GNS can be considered to mark an application boundary and as such, provide strongly isolated environments for application teams and business units managing different applications and data.
The following image is an example of configuring a front-end service called shopping based on service CPU usage. The image depicts three clusters as part of the GNS with application services distributed across the three cloud instances. The catalog service is on an Amazon Elastic Kubernetes Service (EKS) cluster. There are two instances of the front-end shopping service, one on Azure Kubernetes Service (AKS), and one on an on-premises private cloud—which also holds the rest of the application services.
An example of a distributed application.
Note: The video below demonstrates distributed microservices functionality tested on the reference architecture. For complete instructions and Tanzu Service Mesh configuration, see the latest release of the reference architecture.
Learn more at Dell Technologies World 2023
Want to dive deeper into VMware Tanzu for Kubernetes Operations on Dell VxRail? Visit our interactive Dell Technologies and VMware booths at Dell Technologies World to talk with any of our experts. You can also attend our session Simplify & Streamline via VMware Tanzu for Kubernetes Operations on VxRail.