Tag

kubernetes

Azure, C#, Debugging

When Redis times out in an application but Redis is fine: The .NET Edition

Did you read When Redis times out in an application but Redis is fine: Lessons from a Real-World investigation and think, “Great story, but we’re a .NET shop”? Fair enough! This is the companion piece. The investigation happened on the Java side, with the Lettuce client, but the lessons travel well, and most of them map neatly to StackExchange.Redis, the main Redis client library for .NET. A quick recap, in case you haven’t read it. An application running on Kubernetes saw intermittent client-side Redis timeouts while Redis itself looked healthy. The clearest cause was freshly started pods, where connections to each shard were opened on first use just as CPU throttling slowed everything down. Two other patterns showed up too,…

Read more
Azure, Debugging

When Redis times out in an application but Redis is fine: Lessons from a Real-World investigation

This post is a friendly recap of a real Azure Managed Redis investigation Some incidents teach you more than any documentation page ever could. This one started with a few intermittent Redis timeouts. This grew into a deep investigation that touched Kubernetes CPU limits, Java client internals, cluster topology, and even the limits of what you can simulate on a managed service. One symptom, three very different stories. The customer stays anonymous, because the lessons matter more than the logo. What’s left is the part you can reuse: what happened, what we learned, and tips and tricks for testing. Along the way, we try to showcase how you can look beyond the error message. Settle in, because this one has…

Read more
Kubernetes

Configuring X509 and Azure AD authentication in the Kubernetes cluster

I am continuing my quest to configure my homelab’s Kubernetes cluster. As for now I’ve done: Setup the cluster using vSphere/vCenter Configuring HAProxy as the load balancer for the masters Today, I want to configure authentication so that I can login to the cluster from my computer and not from one of the masters directly. There are plenty of authentication mechanisms in Kubernetes, but I want 2 focus on 2 techniques that are discussed in the documentation: x509 client certificates and OpenId Connect. For the OpenId Connect provider, I will use Azure Active Directory. Authentication using X509 client certificates The documentation describes pretty well how to create a certificate for a normal user. First, I need to generate a private/public…

Read more
Docker, Kubernetes, Server administration

Installing a Kubernetes cluster on VMware vSphere and what I’ve learned

The topic of containers has been a hot topic for some time now. As a developer and architect, I want to be able to include them in my development SDLC for the various reasons you guys know. I won’t go in detail about them in this article, because after all you came to see how it was done right? :-). After having some container images waiting in a registry and awaiting to be used, I asked myself, how do I manage the deployment, management, scaling, and networking of these images when they will be spanned in containers? Using an orchestrator of course! Kubernetes (k8s) has become one of the widely used orchestrator for the management of the lifecycle of containers….

Read more