K3s
Lightweight single-binary Kubernetes distribution with an embedded datastore and built-in network policy controller.
- Provider
- default
- Category
- Compute
- Official docs
- https://docs.k3s.io/networking/basic-network-options
| property | type | values | required | kind default | this component |
|---|---|---|---|---|---|
| autoscaling | boolean | — | no | false | ▸ false |
| cniPlugin | enum | flannel | calico | cilium | none | no | flannel | inherited |
| datastore | enum | sqlite | embedded-etcd | external | no | sqlite | inherited |
| ingressController | boolean | — | no | true | inherited |
| managed | boolean | — | no | false | ▸ false |
| networkPolicy | boolean | — | no | — | ▸ true |
| nodeCount | integer | — | no | — | inherited |
| privateControlPlane | boolean | — | no | — | inherited |
| rbac | boolean | — | no | — | ▸ true |
| serviceLoadBalancer | boolean | — | no | true | inherited |
| version | string | — | no | — | inherited |
Every rule whose selector covers this component's kind or its category. Whether a rule fires depends on the design: its properties, its edges and its groups.
stateful-node-without-zone-redundancy
A stateful compute node pinned to exactly one availability zone disappears with that zone, and its state goes with it. Nodes inside a cell are exempt, because there the cell is deliberately single-zone and redundancy comes from the other cells.
- — all of these hold:
- — the node's `stateless` is false
- — the node sits inside exactly 1 availability-zone group
- — this does not hold:
- — the node sits inside at least one cell group
nodes:
- { id: "k3s", component: "k3s" }Container Service for Kubernetesalibaba-ackAmazon Elastic Container Serviceaws-ecsAmazon Elastic Kubernetes Serviceaws-eksRed Hat OpenShift Service on AWSaws-rosaAzure Kubernetes Serviceazure-aksAzure Kubernetes Fleet Managerazure-kubernetes-fleet-managerAzure Red Hat OpenShiftazure-red-hat-openshiftAzure Service Fabricazure-service-fabricCloudflare Containerscloudflare-containersGeneric container orchestratorcontainer-orchestratorCoreWeavecoreweaveDocker Swarmdocker-swarmk0sk0sKarmadakarmadaKuberneteskubernetesMicroK8smicrok8sHashiCorp NomadnomadRed Hat OpenShiftopenshiftRancherrancherDigitalOcean Kubernetesdigitalocean-kubernetesGoogle Distributed Cloud (software only) for bare metalgoogle-distributed-cloud-bare-metalGoogle Distributed Cloud (software only) for VMwaregoogle-distributed-cloud-vmwareGoogle Kubernetes Enginegoogle-gkeGKE Autopilotgoogle-gke-autopilotGKE Enterprise fleetgoogle-gke-enterpriseGKE Multi-Cloudgoogle-gke-multi-cloudCluster Services for OpenShiftgoogle-openshift-cluster-servicesIBM Cloud Kubernetes Serviceibm-kubernetes-serviceRed Hat OpenShift on IBM Cloudibm-openshiftIBM Cloud Satelliteibm-satelliteOCI Kubernetes Engineoci-kubernetes-engineOKE Virtual Node Pooloci-oke-virtual-node-poolOpenStack Magnumopenstack-magnumOpenStack Zunopenstack-zunOUTSCALE Kubernetes as a Serviceoutscale-oks
# yaml-language-server: $schema=../../schema/component.schema.json # K3s, Rancher's single-binary Kubernetes distribution. Per the "CIS Self Assessment Guide" the API server # runs with --authorization-mode=Node,RBAC, per "Basic Network Options" the default CNI is Flannel with a # built-in network policy controller (--disable-network-policy turns it off), and SQLite is the default datastore. schemaVersion: "1" type: "component" id: "k3s" kind: "container-orchestrator" provider: "default" docs: "https://docs.k3s.io/networking/basic-network-options" defaults: managed: false autoscaling: false rbac: true networkPolicy: true properties: datastore: type: "enum" values: ["sqlite", "embedded-etcd", "external"] default: "sqlite" cniPlugin: type: "enum" values: ["flannel", "calico", "cilium", "none"] default: "flannel" serviceLoadBalancer: type: "boolean" default: true ingressController: type: "boolean" default: true