The Microsoft Azure Container Networking staff is happy to announce Retina, a cloud-native container networking observability platform that permits Kubernetes customers, admins, and builders to visualise, observe, debug, and analyze Kubernetes’ workload visitors no matter Container Network Interface (CNI), working system (OS), and cloud. We are excited to launch Retina as an open-source repository that helps with DevOps and SecOps associated networking circumstances to your Kubernetes clusters and we invite the open-source neighborhood to innovate together with us.
![Photagraphy depicts Microsoft AI technology that predicts probability of a student dropping out of school to proactive assist educators.](https://azure.microsoft.com/en-us/blog/wp-content/uploads/2023/12/MS_AI_Education-featured.jpg)
Retina
A cloud-native container networking observability platform
Embracing and advancing open-source software program
Cloud native applied sciences like Kubernetes have made constructing functions that may run anyplace, simpler. At the identical time, many functions have change into extra complicated, and managing them within the cloud is more and more troublesome. As corporations construct cloud-native functions composed of interconnected companies after which deploy them to a number of public clouds in addition to their personal infrastructure, community associated observability, troubleshooting, and debugging has change into more and more troublesome.
With the ability of prolonged Berkley Packet Filter (eBPF), it’s now attainable to supply actionable community insights together with how containerized micro-services work together and achieve this in non-intrusive methods with none change within the functions itself—that’s precisely what Retina units out to realize. Retina will assist democratize community observability and troubleshooting by bringing new focus to the expertise of utility builders. Retina supplies builders with easy methods to look at and troubleshoot their functions for points resembling packet drops and latency with out worrying concerning the complexities of the underlying community infrastructure and transformations.
Based on our optimistic expertise locally with eBPF and Cilium, we’re excited to construct on this relationship and have interaction each extra intently and with extra communities. We imagine that by opening Retina to the neighborhood, we are able to profit from knowledgeable suggestions, modern concepts, and collaborative efforts that can assist improve and broaden Retina’s capabilities.
Retina options and capabilities
Drawing from our intensive expertise managing a number of container networking companies for the Azure Kubernetes Service (AKS), we recognized vital gaps in community monitoring, the gathering of community metrics and traces from Kubernetes clusters. Retina is a cutting-edge resolution that closes these gaps and is designed to deal with the complicated challenges of managing and supporting Kubernetes networks offering infrastructure- and site-reliability engineers complete insights into cluster networking. Retina additionally supplies deep visitors evaluation with Kubernetes-specific context, translating metrics into both industry-standard Prometheus or community move logs.
Existing open-source options are sometimes tightly coupled with particular CNI’s, OS, or knowledge planes, thereby limiting their versatility and use. For this motive, Retina has been designed and developed to be a extremely versatile, adaptable, and extensible framework of plugins able to working seamlessly with any CNI, OS, or cloud supplier—making it a worthwhile addition to any current toolset. Retina helps each Linux and Windows knowledge planes, guaranteeing it meets the varied wants of infrastructure- and site-reliability engineers, whereas sustaining a minimal reminiscence and CPU footprint on the cluster—this stays true even at scale. Retina’s pluggability design ethos helps us simply lengthen and adapt to handle new use circumstances with out relying on any particular CNI, OS, or knowledge aircraft.
![Architecture Overview of Retina link to diagram.](https://azure.microsoft.com/en-us/blog/wp-content/uploads/2024/03/Retina.webp)
One of Retina’s key options supplies deep community visitors insights that embody Layer 4 (L4) metrics, Domain Name System (DNS) metrics, and distributed packet captures. It seamlessly integrates the Kubernetes app mannequin providing pod-level metrics with detailed context. It emits actionable networking observability knowledge into industry-standard Prometheus metrics offering node-level metrics (for instance, ahead, drop, Transmission Control Protocol (TCP), User Datagram Protocol (UDP), and Linux utility) and pod-level metrics (resembling primary metrics, DNS, and API server latency.)
Retina’s distributed packet captures are label-driven—permitting customers to specify what, the place, and who to seize packets from. Additionally, it supplies historic context of community move logs and superior debugging capabilities that improve community troubleshooting and efficiency optimization.
Our imaginative and prescient for Retina
Many enterprises are multi-cloud and need options that work properly not simply on Microsoft Azure, however on different clouds in addition to on-premises. Retina is open-source and multi-cloud from day one. By open-sourcing Retina, we intention to share our information and imaginative and prescient for Kubernetes networking observability with the broader cloud-native ecosystem. Our hope is that Retina will evolve and develop by way of collaboration with different builders and organizations who share related experiences and objectives on this discipline.
In phrases of structure, extensibility was key from the outset and can stay going ahead. Retina presents extensibility in knowledge assortment—permitting customers to simply add new metrics and insights. It additionally presents extensibility in exporters—enabling customers to combine with different monitoring techniques and instruments. This flexibility ensures that Retina can adapt to completely different use circumstances and environments, making it a flexible and highly effective platform for Kubernetes networking observability. In conclusion, we envision Retina as a platform permitting anybody to contribute, lengthen, and innovate on finally creating a strong, purpose-built, and complete resolution for Kubernetes networking observability.
Getting began
We hope this weblog submit has given you an outline of Retina, its options, and advantages. Retina is a venture that we’re very enthusiastic about, and we welcome your suggestions, strategies, and contributions. Whether you’re a community engineer, a DevOps engineer, a web site reliability engineer, or a cloud-native fanatic, we invite you to check out Retina and see the way it may also help you achieve deeper visibility into your Kubernetes networks.