Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsBlogPro
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges
  • Chrome Extension
  • Skill Manager

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Rancher

DSecurity

Expert coverage of SUSE Rancher multi-cluster Kubernetes management: RKE2, K3s, Fleet GitOps, Harvester HCI, multi-cluster RBAC, and Provisioning v2. Use for \"Rancher\", \"RKE2\", \"K3s\", \"Fleet GitOps\", \"Harvester\", \"multi-cluster management\", \"cattle.io\", \"SUSE Kubernetes\".

4 stars
0 votes
0 copies
0 views
Added 9/24/2026
devopsgobashsqlnodekubernetesawsgcpazuregitapi

Works with

cliapi

Security Analysis

D59/100
criticalPipes output to a shell interpreter
mediumUses curl or wget to download content
criticalModifies startup scripts or system services for persistence
criticalDownloads and executes remote scripts — classic supply chain attack

Pro scans all 2 files and shows the line behind each finding

Scanned 9/24/2026

$npx -y skills add chrishuffman5/domain-expert --skill rancher --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Rancher?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Rancher
[![Security: D — Skills Directory](https://www.skillsdirectory.com/api/skills/chrishuffman5-rancher/badge)](https://www.skillsdirectory.com/skills/chrishuffman5-rancher)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
Files
SKILL.md
---
name: rancher
description: "Expert coverage of SUSE Rancher multi-cluster Kubernetes management: RKE2, K3s, Fleet GitOps, Harvester HCI, multi-cluster RBAC, and Provisioning v2. Use for \"Rancher\", \"RKE2\", \"K3s\", \"Fleet GitOps\", \"Harvester\", \"multi-cluster management\", \"cattle.io\", \"SUSE Kubernetes\"."
license: MIT
---

# SUSE Rancher

This skill covers SUSE Rancher, the multi-cluster Kubernetes management platform, including:

- Rancher server architecture (management cluster, downstream clusters)
- RKE2 (enterprise-grade Kubernetes distribution, CIS hardened)
- K3s (lightweight Kubernetes for edge and IoT)
- Fleet GitOps (multi-cluster continuous delivery)
- Harvester HCI (hyperconverged infrastructure on Kubernetes)
- Provisioning v2 (CAPI-based cluster lifecycle management)
- Multi-cluster RBAC and project-based multi-tenancy
- Authentication integration (AD, LDAP, SAML, OIDC)
- Monitoring and alerting (per-cluster Prometheus/Grafana stacks)
- CIS Benchmark scanning

## How to Approach Tasks

1. **Classify** the request:
   - **Architecture** -- Load `references/architecture.md` for management cluster, RKE2, K3s, Fleet, Harvester
   - **Cluster provisioning** -- RKE2/K3s provisioning via Rancher, imported clusters, cloud-hosted clusters
   - **GitOps** -- Fleet configuration, GitRepo, BundleDeployment, multi-cluster targeting
   - **Multi-cluster** -- RBAC, Projects, cluster grouping, centralized monitoring
   - **Troubleshooting** -- Agent connectivity, cluster import issues, Fleet sync failures

2. **Identify context** -- Which distribution (RKE2, K3s, imported EKS/AKS/GKE)? On-prem or cloud? How many clusters? Ask if unclear.

3. **Load context** -- Read the reference file for deep technical detail.

4. **Apply** -- Provide Rancher UI paths, kubectl/Fleet YAML, RKE2/K3s CLI commands as appropriate.

5. **Validate** -- Suggest Rancher UI cluster status, `kubectl get clusters.management.cattle.io`, Fleet bundle status.

## Rancher Architecture Overview

```
Rancher Management Cluster (RKE2 or K3s)
  ├── Rancher Server (Helm chart deployment)
  │     ├── Authentication (AD, LDAP, SAML, GitHub, Google, Keycloak)
  │     ├── RBAC (global roles, cluster roles, project roles)
  │     ├── Cluster management (provision, import, monitor)
  │     └── App catalog (Helm charts, Fleet GitOps)
  ├── Fleet Controller
  │     ├── GitRepo watchers
  │     └── BundleDeployment reconcilers
  └── Rancher Agent (deployed to each managed cluster)
        ├── Cluster agent (deployment in cattle-system)
        └── Node agent (DaemonSet for node operations)
```

**Communication model**: downstream clusters run a Rancher agent that connects outbound to the Rancher server via WebSocket. No inbound firewall rules needed on downstream clusters.

## Kubernetes Distributions

### RKE2

Enterprise-grade Kubernetes distribution, FIPS 140-2 compliant, CIS hardened by default:

```bash
# Install RKE2 server (control plane)
curl -sfL https://get.rke2.io | sh -
systemctl enable rke2-server
systemctl start rke2-server

# Get kubeconfig
export KUBECONFIG=/etc/rancher/rke2/rke2.yaml

# Install RKE2 agent (worker)
curl -sfL https://get.rke2.io | INSTALL_RKE2_TYPE="agent" sh -
# Configure /etc/rancher/rke2/config.yaml:
# server: https://<server-ip>:9345
# token: <node-token>
systemctl enable rke2-agent
systemctl start rke2-agent
```

**RKE2 features**:
- Built-in etcd (embedded, no external dependency)
- CIS Kubernetes Benchmark hardened by default
- FIPS 140-2 validated cryptographic modules
- Canal CNI (Calico for policy + Flannel for networking) by default; Cilium and Calico also supported
- containerd runtime
- Integrated audit logging
- Automatic certificate rotation

**Configuration** (`/etc/rancher/rke2/config.yaml`):
```yaml
token: my-shared-secret
tls-san:
  - my-cluster.example.com
  - 10.0.0.10
cni: cilium                          # canal (default), calico, cilium
profile: cis                         # CIS hardening profile
etcd-snapshot-schedule-cron: "0 */6 * * *"
etcd-snapshot-retention: 10
node-taint:
  - "CriticalAddonsOnly=true:NoExecute"   # for control plane nodes
```

### K3s

Lightweight Kubernetes for edge, IoT, and development:

```bash
# Install K3s server
curl -sfL https://get.k3s.io | sh -

# Install K3s agent
curl -sfL https://get.k3s.io | K3S_URL=https://<server>:6443 K3S_TOKEN=<token> sh -

# Get kubeconfig
export KUBECONFIG=/etc/rancher/k3s/k3s.yaml
```

**K3s features**:
- Single binary (<100MB), runs on ARM and x86_64
- Embedded SQLite (single server) or embedded etcd (HA)
- External datastore support: MySQL, PostgreSQL, etcd
- Built-in: containerd, Flannel, CoreDNS, Traefik ingress, local-path-provisioner, metrics-server
- Fully CNCF conformant
- Suitable for Raspberry Pi to production edge

**HA K3s** (embedded etcd):
```bash
# First server
curl -sfL https://get.k3s.io | K3S_TOKEN=mysecret sh -s - server --cluster-init

# Additional servers
curl -sfL https://get.k3s.io | K3S_TOKEN=mysecret sh -s - server \
  --server https://<first-server>:6443
```

**K3s vs RKE2**:

| Aspect | K3s | RKE2 |
|--------|-----|------|
| Target | Edge, IoT, dev | Enterprise production |
| Size | <100MB | ~220MB |
| Default CNI | Flannel | Canal |
| CIS hardening | Manual | Built-in |
| FIPS compliance | No | Yes |
| Default storage | SQLite | etcd |
| Ingress | Traefik | NGINX |

## Fleet GitOps

Fleet is Rancher's built-in GitOps engine for deploying to multiple clusters simultaneously:

### GitRepo

```yaml
apiVersion: fleet.cattle.io/v1alpha1
kind: GitRepo
metadata:
  name: myapp-config
  namespace: fleet-default
spec:
  repo: https://github.com/myorg/fleet-config
  branch: main
  paths:
  - apps/myapp
  targets:
  - name: production
    clusterSelector:
      matchLabels:
        env: production
  - name: staging
    clusterSelector:
      matchLabels:
        env: staging
  pollingInterval: 30s
```

### fleet.yaml

Per-directory configuration for Fleet:

```yaml
# fleet.yaml in the Git repository
defaultNamespace: production
helm:
  chart: ./charts/myapp
  releaseName: myapp
  values:
    replicaCount: 3
    image:
      tag: v2.0
  valuesFiles:
  - values-common.yaml
targetCustomizations:
- name: production
  clusterSelector:
    matchLabels:
      env: production
  helm:
    values:
      replicaCount: 5
      resources:
        requests:
          cpu: "500m"
          memory: "512Mi"
- name: staging
  clusterSelector:
    matchLabels:
      env: staging
  helm:
    values:
      replicaCount: 1
```

### Fleet Concepts

| Resource | Purpose |
|----------|---------|
| GitRepo | Defines a Git repository Fleet monitors |
| Bundle | Generated by Fleet from GitRepo content |
| BundleDeployment | Bundle applied to a specific cluster |
| Cluster | Represents a managed cluster (auto-created by Rancher) |
| ClusterGroup | Logical grouping of clusters for targeting |

### Fleet at Scale

Fleet is designed for hundreds to thousands of clusters:
- Batch deployments with configurable parallelism
- Drift detection and auto-remediation
- Per-cluster customization via `targetCustomizations`
- Support for Helm charts, Kustomize, and raw YAML
- OCI registry support for chart sources

## Cluster Provisioning (v2)

Provisioning v2 uses Cluster API (CAPI) under the hood:

```yaml
apiVersion: provisioning.cattle.io/v1
kind: Cluster
metadata:
  name: prod-rke2
  namespace: fleet-default
spec:
  kubernetesVersion: v1.35.x+rke2r1
  rkeConfig:
    machineGlobalConfig:
      cni: cilium
      profile: cis
    machinePools:
    - name: control-plane
      controlPlaneRole: true
      etcdRole: true
      quantity: 3
      machineConfigRef:
        kind: VmwarevsphereConfig
        name: cp-config
    - name: workers
      workerRole: true
      quantity: 5
      machineConfigRef:
        kind: VmwarevsphereConfig
        name: worker-config
```

**Supported infrastructure providers**: vSphere, AWS, Azure, GCP, DigitalOcean, Linode, Harvester.

## Multi-Cluster RBAC

### Role Hierarchy

```
Global Roles (cluster-independent)
  ├── Admin (full access to everything)
  ├── Restricted Admin (manage all clusters but not Rancher settings)
  └── Standard User (create clusters, manage own resources)

Cluster Roles (per-cluster)
  ├── Cluster Owner
  ├── Cluster Member
  └── Custom roles

Project Roles (per-project within a cluster)
  ├── Project Owner
  ├── Project Member
  ├── Read Only
  └── Custom roles
```

**Projects**: Rancher's concept for grouping namespaces within a cluster. Projects provide:
- Shared RBAC (one role binding applies to all namespaces in the project)
- Resource quotas (project-level resource limits)
- Network isolation (project-level NetworkPolicy)

## Monitoring

Rancher deploys per-cluster monitoring stacks via the Monitoring app (Helm chart):

```bash
# Install monitoring on a cluster via Rancher UI or CLI
helm install rancher-monitoring rancher-monitoring \
  --namespace cattle-monitoring-system \
  --create-namespace \
  --version <version>
```

Components deployed:
- Prometheus (metrics collection)
- Grafana (dashboards)
- Alertmanager (alert routing)
- Node Exporter (node metrics)
- kube-state-metrics (K8s object metrics)

Pre-built dashboards for: cluster overview, node metrics, workload metrics, etcd, API server.

## Harvester HCI

Hyperconverged infrastructure built on Kubernetes:

```
Harvester Cluster (RKE2-based)
  ├── KubeVirt (VM management as K8s resources)
  ├── Longhorn (distributed block storage)
  ├── Multus (multi-network support for VMs)
  └── Rancher integration (provision K8s clusters on Harvester VMs)
```

**Use case**: replace VMware vSphere with an open-source HCI platform that manages both VMs and containers from a single Kubernetes-based control plane.

```yaml
# VM in Harvester
apiVersion: kubevirt.io/v1
kind: VirtualMachine
metadata:
  name: ubuntu-vm
spec:
  running: true
  template:
    spec:
      domain:
        resources:
          requests:
            memory: 4Gi
            cpu: "2"
        devices:
          disks:
          - name: rootdisk
            disk:
              bus: virtio
          interfaces:
          - name: default
            masquerade: {}
      networks:
      - name: default
        pod: {}
      volumes:
      - name: rootdisk
        persistentVolumeClaim:
          claimName: ubuntu-rootdisk
```

## Common Patterns

### Management Cluster Sizing

| Managed Clusters | Rancher Server Resources |
|-----------------|-------------------------|
| 1-10 | 4 vCPU, 8 GB RAM |
| 10-50 | 8 vCPU, 16 GB RAM |
| 50-100 | 16 vCPU, 32 GB RAM |
| 100+ | 32 vCPU, 64 GB RAM |

**Recommendation**: run Rancher server on a dedicated RKE2 cluster with 3 control plane nodes for HA.

### Edge Deployment Pattern

```
Central Rancher Server
    ↓ (Fleet GitOps)
Edge K3s clusters (100s-1000s)
    ├── Connected mode: agent maintains WebSocket connection
    └── Disconnected mode: Fleet pre-stages configs, periodic sync
```

## Reference Files

- `references/architecture.md` -- Multi-cluster management internals, RKE2/K3s architecture, Fleet engine details, Harvester deep dive, authentication integration, CIS scanning. Read for architecture and design questions.

Attribution

chrishuffman5chrishuffman5
View sourceSee grades on GitHubMore from chrishuffman5 →
SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Related Skills

Terraform Module Library

Build reusable Terraform modules for AWS, Azure, and GCP infrastructure following infrastructure-as-code best practices. Use when creating infrastructure modules, standardizing cloud provisioning, or implementing reusable IaC components.

401991 votes

sematext-otel

Wire a service's OpenTelemetry output to Sematext Cloud. Walks through region, App-type, instrumentation flow (managed OTLP endpoint vs Sematext Agent), and signal selection (traces/metrics/logs), then produces the exact env-var block and points at a runnable reference example in this repo. Invoke when instrumenting a new app for Sematext.

01 votes

Deployment Patterns

Deployment workflows, CI/CD pipeline patterns, Docker containerization, health checks, rollback strategies, and production readiness checklists for web applications. Use when setting up deployment infrastructure or planning releases.

2699140 votes

Babysit

Watch a pull request or review cycle until it is ready to merge. Use when asked to babysit, monitor, or keep checking PR comments, reviews, and CI until all actionable issues are resolved.

971540 votes

V7 Roster

Interact with the Paperclip control plane API for task coordination and governance. Use when checking assignments, updating issue status, posting comments, delegating work, managing routines, or calling Paperclip API endpoints.

953190 votes
View all in devops →