-
Notifications
You must be signed in to change notification settings - Fork 99
KinD plugin and device #2997
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: dev
Are you sure you want to change the base?
KinD plugin and device #2997
Conversation
|
@wnagele -- the "kind" plugin (documentation included in PR) successfully starts a single-node or multi-node KinD cluster, including attachments to LAN or P2P links. The configuration of the cluster nodes (IP addresses and static routes) is still missing, but I think I know how I'll handle that. A few more days... |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR adds a new "kind" plugin that implements Kubernetes in Docker (KinD) cluster deployments for containerlab. The plugin creates multi-node Kubernetes clusters from a single node definition, automatically expanding it into control-plane and worker nodes with appropriate networking.
Changes:
- Adds kind plugin with pre_node_transform hook to expand kind device nodes into KinD clusters
- Adds kind and kind-node daemon definitions with Linux parent configuration
- Extends clab provider with cp_sh mode for copying and executing scripts in containers
- Adds comprehensive documentation for the plugin
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| netsim/providers/clab.py | Adds cp_sh mode for copying files into containers before executing them |
| netsim/extra/kind/plugin.py | Core plugin logic to expand kind nodes into control-plane and worker nodes with link replication |
| netsim/extra/kind/defaults.yml | Device definitions for kind and kind-node daemons |
| netsim/daemons/kind/initial.j2 | KinD cluster configuration template |
| docs/plugins/kind.md | Plugin documentation with usage examples |
| docs/plugins.md | Adds kind plugin to documentation index |
| docs/platforms.md | Updates platform support tables and adds daemon-related notes |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
Copilot reviewed 7 out of 7 changed files in this pull request and generated no new comments.
|
@wnagele -- This should be it. The cluster comes up and IP addresses and static routes are configured on cluster nodes. Would love to hear your feedback before merging it. Thank you! |
|
Will change the way "kind" device is defined and tied to the "kind" plugin based on the kind remark by @jbemmel |
The "kind" plugin implements Kubernetes in Docker (KinD) cluster for containerlab deployments