Posts
Adding a Windows Node to Kubernetes
· β˜• 7 min read
Here a Windows node is used mainly as a Worker, while the Master control plane stays on Linux. 1. System Configuration 1.1 Kubernetes Control Plane Since version 1.14, Kubernetes has added production-grade support for Windows nodes. Because Microsoft’s official documentation mainly covers installing the flannel network plugin, it is recommended here that Kubernetes also use the flannel plugin.

Incomplete Data When Using Base64 to Decode JWT Playload
· β˜• 2 min read
When Base64-decoding a JWT, I found that the JSON data was incomplete. This article mainly introduces the relevant knowledge and solves this problem. 1. Introduction to JWT JWT passes authentication by setting Authorization: Bearer <token> in the Header. A JWT Token is a Base64-encoded string joined by dots, something like

Kubernetes Batch Operation Commands
· β˜• 1 min read
1. Delete Pods in the Evicted State in Bulk 1 kubectl get pods --all-namespaces -o wide | grep Evicted | awk '{print $1,$2}' | xargs -L1 kubectl delete pod -n 2. Delete Pods in a Given State in a Given Namespace in Bulk Using field-selectors, you can delete Pods in a given state in a given namespace.

Why Use Remote Builds
· β˜• 3 min read
1. Raise the Level of Automation Remote builds usually need the help of some CI tool, such as GitHub Actions, Travis CI, and so on. In an intranet environment, you can use GitLab CI and add a CI node for automated builds β€” see my GitLab documentation. The benefits of automation go without saying: it standardizes processes, saves a great deal of time, and delivers clear returns.

Affinity in the Kubernetes Scheduler
· β˜• 2 min read
1. The Scheduler in Kubernetes kube-scheduler is the component in Kubernetes that decides which Node a Pending Pod runs on; it is called the scheduler. Kubernetes ships with a large number of built-in scheduling policies and also provides some advanced scheduling policies (nodeAffinity, podAffinity, and so on) for users, which