Multi-Cluster Virtual Application Network Project with Skupper
This project involves the implementation of a Virtual Application Network in an Azure cloud environment. The capabilities of Skupper to perform gRPC will be tested. The different services of the example application will be connected between various clusters and namespaces, allowing observation of how these services can interact and communicate with each other securely, despite the distributed nature of the setup.
1. Initial Environment Findings
For this project, two AKS clusters were utilized primarily for cost management purposes. Additionally, three namespaces were created across these two clusters to effectively demonstrate the proper functioning of Skupper.
During the initial phase of the project, a significant challenge was to comprehend the precise functionalities and capabilities of Skupper. Consequently, a considerable portion of time in the project's early stages was allocated to reviewing the available documentation, ensuring comprehensive readiness to commence the implementation process.
Initially, encountering obstacles while attempting to install the Skupper tools proved to be a considerable hurdle. However, following a meeting with Derrick, I successfully navigated through the installation process, overcoming the challenges previously faced.
Subsequently, I proceeded to deploy all the requisite services of the application across the 3 different namespaces, distributed across multiple clusters. By employing the Skupper commands, interconnecting these services, enabling seamless and coordinated functionality within the application.
In the final phase, a critical step involved conducting thorough testing to verify the proper functioning of the implemented solution. This entailed accessing the application via the external IP specifically assigned to the frontend-service within its designated cluster, ensuring that the application could be accessed and operated as intended.
My main concern is the fact that I think that working on a Windows-based computer could limit me at some point. But for now, working with the WSL will be just fine.
2. Areas of improvement
In my particular case, I believe that improving my proficiency in utilizing Kubectl commands is key to obtaining the necessary information precisely when needed and effectively debugging any encountered issues through the terminal. Currently, I often find myself relying on assistance from my colleagues during such situations, but my ultimate goal is to become self-sufficient in handling these tasks.
Furthermore, I recognize the importance of studying additional concepts to enhance my understanding and gain a broader overview of the tasks at hand. Throughout this project, I encountered various scenarios where I had to rely on extensive online research to comprehend the intricacies of the processes. Despite this, I must note that my first experience with Azure was relatively seamless, as their platform proved to be exceptionally user-friendly, minimizing any difficulties I might have faced during my work.
Besides having problems with installing the skupper tool, I didn't encounter any more problems while working on this project. But it was really helpful just to get my hands dirty and gain some experience and muscle memory.
3. Capability Gaps
kubectl commands, I have encountered difficulties in maximizing its potential as I am only familiar with the basics. Therefore, I may require further guidance or training to become proficient in utilizing its advanced functionalities.
Working with Azure for the first time, I found it necessary to dedicate a few additional hours to familiarize myself with this Cloud Service. It is crucial for me to explore the platform thoroughly, gaining a comprehensive understanding of each button's functionality, ensuring complete confidence in performing tasks on the platform.
Concerning Skupper, being a new tool, I initially felt a bit overwhelmed and uncertain about its capabilities. However, upon closer examination, I found Skupper to be user-friendly and easy to comprehend, which eased my learning process.
This section will serve to organize important links and diagrams referenced throughout this document.
Contact us to learn how we might be able to help.