Skip to content

kubernetes-sigs/kwok

main
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
cmd
January 28, 2023 13:11
June 20, 2023 19:03
September 1, 2023 13:40
June 20, 2023 11:50
August 23, 2023 16:18
December 22, 2022 13:02
September 12, 2023 14:35
August 16, 2023 15:15
August 23, 2023 11:26
July 28, 2022 10:39
August 23, 2023 11:01
August 3, 2022 14:38
April 20, 2023 23:53
July 28, 2022 10:39
July 28, 2022 10:39
August 16, 2023 17:32
July 28, 2022 10:39
February 20, 2023 19:30

KWOK (Kubernetes WithOut Kubelet)

KWOK is pronounced as /kwɔk/.

KWOK is a toolkit that enables setting up a cluster of thousands of Nodes in seconds. Under the scene, all Nodes are simulated to behave like real ones, so the overall approach employs a pretty low resource footprint that you can easily play around on your laptop.

What is KWOK?

KWOK stands for Kubernetes WithOut Kubelet. So far, it provides two tools:

  • kwok is the cornerstone of this project, responsible for simulating the lifecycle of fake nodes, pods, and other Kubernetes API resources.
  • kwokctl is a CLI tool designed to streamline the creation and management of clusters, with nodes simulated by kwok.

Please see our website for more in-depth information.

Why KWOK?

  • Lightweight: You can simulate thousands of nodes on your laptop without significant consumption of CPU or memory resources. Currently, KWOK can reliably maintain 1k nodes and 100k pods easily.
  • Fast: You can create and delete clusters and nodes almost instantly, without waiting for boot or provisioning. Currently, KWOK can create 20 nodes or pods per second.
  • Compatibility: KWOK works with any tools or clients that are compliant with Kubernetes APIs, such as kubectl, helm, kui, etc.
  • Portability: KWOK has no specific hardware or software requirements. You can run it using pre-built images, once Docker or Nerdctl is installed. Alternatively, binaries are also available for all platforms and can be easily installed.
  • Flexibility: You can configure different node types, labels, taints, capacities, conditions, etc., and you can configure different pod behaviors, status, etc. to test different scenarios and edge cases.

Community

See our own contributor guide and the Kubernetes community page.

Getting Involved

If you're interested in participating in future discussions or development related to KWOK, there are several ways to get involved:

Code of conduct

Participation in the Kubernetes community is governed by the Kubernetes Code of Conduct.