<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Kubernetes on Richard Lintern</title><link>https://lintech.uk/tags/kubernetes/</link><description>Recent content in Kubernetes on Richard Lintern</description><generator>Hugo -- gohugo.io</generator><language>en-GB</language><copyright>Copyright © 2026 Richard Lintern</copyright><lastBuildDate>Tue, 08 Sep 2026 19:23:00 +0100</lastBuildDate><atom:link href="https://lintech.uk/tags/kubernetes/index.xml" rel="self" type="application/rss+xml"/><item><title>Developing the Lintech Local AI Platform</title><link>https://lintech.uk/projects/lintech-local-ai-platform/</link><pubDate>Tue, 08 Sep 2026 09:00:00 +0100</pubDate><guid>https://lintech.uk/projects/lintech-local-ai-platform/</guid><description>Building a local-first AI platform that begins with a proven open model while establishing the data, architecture, training and evaluation foundations for an original Lintech language model.</description></item><item><title>Flux Controller Health Checks</title><link>https://lintech.uk/lab-notes/gitops/flux-controller-health/</link><pubDate>Mon, 31 Aug 2026 00:00:00 +0000</pubDate><guid>https://lintech.uk/lab-notes/gitops/flux-controller-health/</guid><description>&lt;blockquote&gt;&lt;p&gt;&lt;strong&gt;Time guide&lt;/strong&gt;&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Basic controller health check: approximately 5 to 10 minutes&lt;/li&gt;&#10;&lt;li&gt;Source or reconciliation investigation: approximately 15 to 30 minutes&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/blockquote&gt;&#10;&lt;h2 class="relative group"&gt;Purpose&#10; &lt;div id="purpose" class="anchor"&gt;&lt;/div&gt;&#10; &#10; &lt;span&#10; class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;&#10; &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#purpose" aria-label="Anchor"&gt;#&lt;/a&gt;&#10; &lt;/span&gt;&#10; &#10;&lt;/h2&gt;&#10;&lt;p&gt;Use this entry when Flux resources are not reconciling, a source is stale, or one of the controllers appears unhealthy.&lt;/p&gt;</description></item><item><title>Flux Kustomization Troubleshooting</title><link>https://lintech.uk/lab-notes/gitops/kustomization-troubleshooting/</link><pubDate>Mon, 31 Aug 2026 00:00:00 +0000</pubDate><guid>https://lintech.uk/lab-notes/gitops/kustomization-troubleshooting/</guid><description>&lt;blockquote&gt;&lt;p&gt;&lt;strong&gt;Time guide&lt;/strong&gt;&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Initial Kustomization checks: approximately 5 to 10 minutes&lt;/li&gt;&#10;&lt;li&gt;Build or dependency investigation: approximately 15 to 30 minutes&lt;/li&gt;&#10;&lt;li&gt;Render, dry-run and reconciliation validation: approximately 20 to 45 minutes&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/blockquote&gt;&#10;&lt;h2 class="relative group"&gt;Purpose&#10; &lt;div id="purpose" class="anchor"&gt;&lt;/div&gt;&#10; &#10; &lt;span&#10; class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;&#10; &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#purpose" aria-label="Anchor"&gt;#&lt;/a&gt;&#10; &lt;/span&gt;&#10; &#10;&lt;/h2&gt;&#10;&lt;p&gt;Use this entry when a Flux Kustomization is not ready, reports a build failure, waits on a dependency, or applies an unexpected revision.&lt;/p&gt;</description></item><item><title>Flux Reconciliation Commands</title><link>https://lintech.uk/lab-notes/gitops/flux-reconciliation/</link><pubDate>Mon, 31 Aug 2026 00:00:00 +0000</pubDate><guid>https://lintech.uk/lab-notes/gitops/flux-reconciliation/</guid><description>&lt;blockquote&gt;&lt;p&gt;&lt;strong&gt;Time guide&lt;/strong&gt;&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Basic Flux health check: approximately 5 to 10 minutes&lt;/li&gt;&#10;&lt;li&gt;Failed reconciliation investigation: approximately 10 to 30 minutes&lt;/li&gt;&#10;&lt;li&gt;Render, dry-run, reconciliation and validation: approximately 15 to 45 minutes&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;The actual duration depends on repository size, deployment dependencies, controller health and the cause of any reconciliation failure.&lt;/p&gt;</description></item><item><title>GitOps Repository Structure</title><link>https://lintech.uk/lab-notes/gitops/gitops-repository-structure/</link><pubDate>Mon, 31 Aug 2026 00:00:00 +0000</pubDate><guid>https://lintech.uk/lab-notes/gitops/gitops-repository-structure/</guid><description>&lt;blockquote&gt;&lt;p&gt;&lt;strong&gt;Time guide&lt;/strong&gt;&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Repository orientation: approximately 5 to 10 minutes&lt;/li&gt;&#10;&lt;li&gt;Planning a new component: approximately 15 to 30 minutes&lt;/li&gt;&#10;&lt;li&gt;Reviewing an existing layout: approximately 20 to 45 minutes&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/blockquote&gt;&#10;&lt;h2 class="relative group"&gt;Purpose&#10; &lt;div id="purpose" class="anchor"&gt;&lt;/div&gt;&#10; &#10; &lt;span&#10; class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;&#10; &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#purpose" aria-label="Anchor"&gt;#&lt;/a&gt;&#10; &lt;/span&gt;&#10; &#10;&lt;/h2&gt;&#10;&lt;p&gt;This entry describes a practical GitOps repository structure that separates desired state, cluster registration, operational documentation and historical evidence.&lt;/p&gt;</description></item><item><title>Kubernetes Node Health and Resource Pressure</title><link>https://lintech.uk/lab-notes/kubernetes/node-health-resource-pressure/</link><pubDate>Mon, 31 Aug 2026 00:00:00 +0000</pubDate><guid>https://lintech.uk/lab-notes/kubernetes/node-health-resource-pressure/</guid><description>&lt;blockquote&gt;&lt;p&gt;&lt;strong&gt;Time guide&lt;/strong&gt;&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Initial node triage: approximately 5 to 10 minutes&lt;/li&gt;&#10;&lt;li&gt;Resource-pressure investigation: approximately 15 to 30 minutes&lt;/li&gt;&#10;&lt;li&gt;Host-level investigation: approximately 20 to 45 minutes&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/blockquote&gt;&#10;&lt;h2 class="relative group"&gt;Purpose&#10; &lt;div id="purpose" class="anchor"&gt;&lt;/div&gt;&#10; &#10; &lt;span&#10; class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;&#10; &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#purpose" aria-label="Anchor"&gt;#&lt;/a&gt;&#10; &lt;/span&gt;&#10; &#10;&lt;/h2&gt;&#10;&lt;p&gt;Use this entry when a node is &lt;code&gt;NotReady&lt;/code&gt;, workloads cannot schedule, resource pressure is suspected, or platform capacity needs review.&lt;/p&gt;</description></item><item><title>Kubernetes Persistent Volume Checks</title><link>https://lintech.uk/lab-notes/kubernetes/persistent-volume-checks/</link><pubDate>Mon, 31 Aug 2026 00:00:00 +0000</pubDate><guid>https://lintech.uk/lab-notes/kubernetes/persistent-volume-checks/</guid><description>&lt;blockquote&gt;&lt;p&gt;&lt;strong&gt;Time guide&lt;/strong&gt;&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Initial checks: approximately 10 to 20 minutes&lt;/li&gt;&#10;&lt;li&gt;Detailed investigation: approximately 20 to 60 minutes&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/blockquote&gt;&#10;&lt;h2 class="relative group"&gt;Purpose&#10; &lt;div id="purpose" class="anchor"&gt;&lt;/div&gt;&#10; &#10; &lt;span&#10; class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;&#10; &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#purpose" aria-label="Anchor"&gt;#&lt;/a&gt;&#10; &lt;/span&gt;&#10; &#10;&lt;/h2&gt;&#10;&lt;p&gt;Investigate PersistentVolumes, claims, storage classes, attachments and mount failures.&lt;/p&gt;</description></item><item><title>Kubernetes Pod and Workload Troubleshooting</title><link>https://lintech.uk/lab-notes/kubernetes/pod-workload-troubleshooting/</link><pubDate>Mon, 31 Aug 2026 00:00:00 +0000</pubDate><guid>https://lintech.uk/lab-notes/kubernetes/pod-workload-troubleshooting/</guid><description>&lt;blockquote&gt;&lt;p&gt;&lt;strong&gt;Time guide&lt;/strong&gt;&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Initial pod triage: approximately 5 to 10 minutes&lt;/li&gt;&#10;&lt;li&gt;Restart or scheduling investigation: approximately 15 to 30 minutes&lt;/li&gt;&#10;&lt;li&gt;Dependency or storage investigation: approximately 30 to 60 minutes&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/blockquote&gt;&#10;&lt;h2 class="relative group"&gt;Purpose&#10; &lt;div id="purpose" class="anchor"&gt;&lt;/div&gt;&#10; &#10; &lt;span&#10; class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;&#10; &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#purpose" aria-label="Anchor"&gt;#&lt;/a&gt;&#10; &lt;/span&gt;&#10; &#10;&lt;/h2&gt;&#10;&lt;p&gt;Use this entry to investigate pods in &lt;code&gt;Pending&lt;/code&gt;, &lt;code&gt;Failed&lt;/code&gt;, &lt;code&gt;Unknown&lt;/code&gt;, &lt;code&gt;CrashLoopBackOff&lt;/code&gt;, &lt;code&gt;ImagePullBackOff&lt;/code&gt; or repeated restart states.&lt;/p&gt;</description></item><item><title>Kubernetes Resource Requests and Limits</title><link>https://lintech.uk/lab-notes/kubernetes/resource-requests-limits/</link><pubDate>Mon, 31 Aug 2026 00:00:00 +0000</pubDate><guid>https://lintech.uk/lab-notes/kubernetes/resource-requests-limits/</guid><description>&lt;blockquote&gt;&lt;p&gt;&lt;strong&gt;Time guide&lt;/strong&gt;&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Initial checks: approximately 10 to 20 minutes&lt;/li&gt;&#10;&lt;li&gt;Detailed investigation: approximately 20 to 60 minutes&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/blockquote&gt;&#10;&lt;h2 class="relative group"&gt;Purpose&#10; &lt;div id="purpose" class="anchor"&gt;&lt;/div&gt;&#10; &#10; &lt;span&#10; class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;&#10; &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#purpose" aria-label="Anchor"&gt;#&lt;/a&gt;&#10; &lt;/span&gt;&#10; &#10;&lt;/h2&gt;&#10;&lt;p&gt;Review Kubernetes CPU and memory requests, limits, live usage and scheduling impact.&lt;/p&gt;</description></item><item><title>Longhorn Storage Health Checks</title><link>https://lintech.uk/lab-notes/kubernetes/longhorn-storage-health/</link><pubDate>Mon, 31 Aug 2026 00:00:00 +0000</pubDate><guid>https://lintech.uk/lab-notes/kubernetes/longhorn-storage-health/</guid><description>&lt;blockquote&gt;&lt;p&gt;&lt;strong&gt;Time guide&lt;/strong&gt;&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Initial checks: approximately 10 to 20 minutes&lt;/li&gt;&#10;&lt;li&gt;Detailed investigation: approximately 20 to 60 minutes&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/blockquote&gt;&#10;&lt;h2 class="relative group"&gt;Purpose&#10; &lt;div id="purpose" class="anchor"&gt;&lt;/div&gt;&#10; &#10; &lt;span&#10; class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;&#10; &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#purpose" aria-label="Anchor"&gt;#&lt;/a&gt;&#10; &lt;/span&gt;&#10; &#10;&lt;/h2&gt;&#10;&lt;p&gt;Check Longhorn workloads, volumes, replicas, nodes, capacity and warning events.&lt;/p&gt;</description></item><item><title>SOPS and age Secret Workflow</title><link>https://lintech.uk/lab-notes/gitops/sops-age-workflow/</link><pubDate>Mon, 31 Aug 2026 00:00:00 +0000</pubDate><guid>https://lintech.uk/lab-notes/gitops/sops-age-workflow/</guid><description>&lt;blockquote&gt;&lt;p&gt;&lt;strong&gt;Time guide&lt;/strong&gt;&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Validate an existing encrypted Secret: approximately 5 to 10 minutes&lt;/li&gt;&#10;&lt;li&gt;Create and reconcile a new encrypted Secret: approximately 15 to 30 minutes&lt;/li&gt;&#10;&lt;li&gt;Investigate a decryption fault: approximately 20 to 45 minutes&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/blockquote&gt;&#10;&lt;h2 class="relative group"&gt;Purpose&#10; &lt;div id="purpose" class="anchor"&gt;&lt;/div&gt;&#10; &#10; &lt;span&#10; class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;&#10; &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#purpose" aria-label="Anchor"&gt;#&lt;/a&gt;&#10; &lt;/span&gt;&#10; &#10;&lt;/h2&gt;&#10;&lt;p&gt;This entry describes a safe workflow for storing encrypted Kubernetes Secret manifests in Git using SOPS and age, with Flux performing decryption during reconciliation.&lt;/p&gt;</description></item><item><title>Kubernetes Cluster Health Checks</title><link>https://lintech.uk/lab-notes/kubernetes/cluster-health-checks/</link><pubDate>Sun, 30 Aug 2026 00:00:00 +0000</pubDate><guid>https://lintech.uk/lab-notes/kubernetes/cluster-health-checks/</guid><description>&lt;blockquote&gt;&lt;p&gt;&lt;strong&gt;Time guide&lt;/strong&gt;&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Initial cluster triage: approximately 10 to 20 minutes&lt;/li&gt;&#10;&lt;li&gt;Standard health review: approximately 30 minutes&lt;/li&gt;&#10;&lt;li&gt;Full platform, storage and host review: approximately 30 to 60 minutes&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;The actual duration depends on cluster size, access availability and whether any checks identify faults that need further investigation.&lt;/p&gt;</description></item><item><title>Hardening Public Services with Cloudflare Zero Trust</title><link>https://lintech.uk/projects/cloudflare-edge-hardening/</link><pubDate>Fri, 28 Aug 2026 09:00:00 +0100</pubDate><guid>https://lintech.uk/projects/cloudflare-edge-hardening/</guid><description>A tunnel-based public access design with two cloudflared replicas, selective edge controls and CrowdSec-informed enforcement.</description></item><item><title>Building the Lintech Intelligence Platform</title><link>https://lintech.uk/projects/observability-platform/</link><pubDate>Mon, 24 Aug 2026 09:00:00 +0100</pubDate><guid>https://lintech.uk/projects/observability-platform/</guid><description>A website-like internal operations portal that unifies live telemetry from eleven validated APIs without replacing authoritative tools.</description></item><item><title>Designing Layered Kubernetes Backup and Recovery</title><link>https://lintech.uk/projects/longhorn-storage-recovery/</link><pubDate>Fri, 21 Aug 2026 09:00:00 +0100</pubDate><guid>https://lintech.uk/projects/longhorn-storage-recovery/</guid><description>A layered recovery system combining Longhorn replication, daily snapshots, weekly QNAP backups and Veeam tape archival.</description></item><item><title>Securing GitOps Secrets with SOPS and age</title><link>https://lintech.uk/projects/sops-age-secret-management/</link><pubDate>Tue, 18 Aug 2026 09:00:00 +0100</pubDate><guid>https://lintech.uk/projects/sops-age-secret-management/</guid><description>Encryption and recovery controls for 31 Git-managed Kubernetes Secret manifests using SOPS, age and Flux.</description></item><item><title>Implementing GitOps Delivery with Flux</title><link>https://lintech.uk/projects/flux-gitops-platform/</link><pubDate>Sun, 09 Aug 2026 09:00:00 +0100</pubDate><guid>https://lintech.uk/projects/flux-gitops-platform/</guid><description>A declarative delivery system using Flux, Kustomize, Helm, image automation and encrypted Git-managed secrets.</description></item><item><title>Building a Four-Node ARM64 Kubernetes Platform</title><link>https://lintech.uk/projects/k3s-cluster/</link><pubDate>Sun, 12 Jul 2026 09:00:00 +0100</pubDate><guid>https://lintech.uk/projects/k3s-cluster/</guid><description>A power-efficient, highly available four-node Kubernetes platform built with Raspberry Pi 5 hardware, k3s, Longhorn and GitOps.</description></item></channel></rss>