Skip to content

Instantly share code, notes, and snippets.

View flrichar's full-sized avatar
Gitops Platform Curation

Fred Richards flrichar

Gitops Platform Curation
  • SUSE Rancher
  • New York
View GitHub Profile
@flrichar
flrichar / mini-gwapi-istio.md
Created August 20, 2025 19:58
Mini GwAPI Istio

Mini GwAPI

Control-plane only Istio for gateway api, installing latest 1.3.0 CRDs.

kubectl kustomize "github.com/kubernetes-sigs/gateway-api/config/crd?ref=v1.3.0" | kubectl apply -f -;

helm install -n istio-system upstream-istio istio/istiod --set gateway.enabled=true --set istiod.profile=minimal --version 1.27.0 --create-namespace

@flrichar
flrichar / leapmicro-ml.md
Last active August 20, 2025 17:10
leap-micro mainline kernel

Mainline Testing Kernel

transactional-update shell

zypper ar -f http://download.opensuse.org/repositories/Kernel:/HEAD/standard/ kernel-repo
zypper ref
zypper dist-upgrade --allow-vendor-change --from kernel-repo

# zypper dup
@flrichar
flrichar / fleet-metrics.md
Created July 10, 2025 14:36
fleet metrics

Some Fleet Metrics

  • would prefer curl, but okay
k exec -it -n cattle-fleet-local-system fleet-agent-0 -- wget -qO - monitoring-fleet-controller.cattle-fleet-system.svc.cluster.local:8080/metrics

k exec -it -n cattle-fleet-local-system fleet-agent-0 -- wget -qO - monitoring-gitjob.cattle-fleet-system.svc.cluster.local:8081/metrics

@flrichar
flrichar / fleet-bundle-lint.md
Last active June 26, 2025 14:30
Lint Fleet Bundles

Lint Fleet.yaml Bundle Definitions

  • nctl command is a local alias for nervctl with options/flags
nctl run -v $(pwd):/tmp/pwd --rm rancher/fleet:v0.11.9 -- /usr/bin/fleet apply BUNDLE100 /tmp/pwd/ -o -

### or ...

podman run -v $(pwd):/tmp/pwd --rm docker.io/rancher/fleet:v0.11.9 /usr/bin/fleet apply BUNDLE100 /tmp/pwd/ -o -
@flrichar
flrichar / rancher-proxy-jwt.md
Last active May 30, 2025 19:25
rancher jwt proxy

Proxy the Entire Path

Example

kubectl get --raw /k8s/clusters/c-m-abc123xyz456/.well-known/openid-configuration
kubectl get --raw /k8s/clusters/c-m-abc123xyz456/openid/v1/jwks

...


@flrichar
flrichar / ingress-nightmare.yaml
Created March 25, 2025 13:47
Ingress Nightmare Mitigation
---
apiVersion: helm.cattle.io/v1
kind: HelmChartConfig
metadata:
name: rke2-ingress-nginx
namespace: kube-system
spec:
valuesContent: |-
controller:
admissionWebhooks:
@flrichar
flrichar / rancher-product-note.md
Last active March 13, 2025 15:51
Rancher Product Notes
Product Name Alternative Names GitHub Repository Description
Rancher SUSE Rancher Prime, Rancher Manager rancher/rancher Enterprise Kubernetes management platform that enables organizations to run and manage Kubernetes clusters across any infrastructure.
RKE Rancher Kubernetes Engine rancher/rke An extremely simple, lightning fast Kubernetes distribution that runs entirely within containers.
RKE2 RKE Government rancher/rke2 A Kubernetes distribution focused on security and compliance for government agencies.
K3s Lightweight Kubernetes, k3OS k3s-io/k3s Purpose-built, lightweight Kubernetes distribution for edge and IoT use cases, fully managed by Kubernetes.
Longhorn SUSE Storage longhorn/longhorn Cloud-nativ
@flrichar
flrichar / jobs-logs-saver.md
Created March 13, 2025 12:52
Save Jobs Logs

Save Logs from Jobs

Append all to a filename.

kubectl -n kube-system get pods -n kube-system --template '{{range.items}}{{.metadata.name}}{{"\n"}}{{end}}' --field-selector="status.phase==Succeeded" | xargs -I{} kubectl -n kube-system logs {} >> all-jobs-logs-$(date +%YJ%j).txt
@flrichar
flrichar / fleet-cluster-label.md
Last active March 3, 2025 16:29
Fleet Cluster Labels
kubectl get cluster.fleet.cattle.io/cluster-xxx765123 -n clusters -o jsonpath='{.metadata.labels}' | jq
{
  "env": "opm-lab",
  "fleet.cattle.io/cluster": "cluster-xxx765123",
  "fleet.cattle.io/created-by-agent-pod": "fleet-agent-0",
  "management.cattle.io/cluster-display-name": "r12700.F"
}
@flrichar
flrichar / debian-taskgetter.md
Last active February 21, 2025 14:46
Debain Task Fetcher

Fetch Debian Task

curl -SLO https://github.com/go-task/task/releases/download/$(curl https://api.github.com/repos/go-task/task/releases | jq -r ".[0].name")/task_linux_amd64.deb

sudo dpkg -i ./task_linux_amd64.deb && rm ./task_linux_amd64.deb

# use with caution
export TASK_X_REMOTE_TASKFILES=1