Sometimes pods get stuck in the Terminating
state due to node issues, kubelet problems, or blocking finalizers.
This guide shows how to force delete them both individually and across all namespaces.
When scaling your ASP.NET Core Razor app to multiple instances (pods, containers, etc.), authentication can become problematic. This is particularly true for cookie-based authentication, where each instance of your app needs to be able to encrypt and decrypt cookies using the same encryption keys.
By default, ASP.NET Core stores its data protection keys locally within the app (e.g., in /root/.aspnet/DataProtection-Keys
). This approach works well in single-instance scenarios, but when you scale horizontally, each instance of your app has its own set of encryption keys. As a result, cookies encrypted by one instance cannot be decrypted by another, causing authentication failures.
- Users are redirected to the login page when they switch between different instances (pods).
MicroK8s provides an easy way to create lightweight Kubernetes clusters. This guide explains how to join a new node as a worker in an existing MicroK8s cluster using the --worker
flag.
Run the following command to generate a join token:
Nodes in the Kubernetes cluster may remain in an "Unhealthy" state on the control plane/master node after they are restarted.
This problem occurs because the nf_conntrack
module, which is essential for network connection tracking, is not automatically loaded on reboot.
To ensure nodes reconnect properly after a restart, you need to make sure the nf_conntrack
module is loaded at boot on all workers nodes thought this command;