Skip to content

Welcome kinder! #1446

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

Merged
merged 1 commit into from
Mar 13, 2019
Merged

Conversation

fabriziopandini
Copy link
Member

kinder is an example of kind used as a library, designed for simplifying kubeadm development/local testing

This PR introduces the kinder roadmap/readme file, for collecting the first round of feedback about goals/high-level features before adding the actual kinder code

/kind documentation
/priority important-longterm

/assign @timothysc
/assign @BenTheElder
/assign @neolit123

/cc @kubernetes/sig-cluster-lifecycle-pr-reviews

@k8s-ci-robot k8s-ci-robot added sig/cluster-lifecycle Categorizes an issue or PR as relevant to SIG Cluster Lifecycle. kind/documentation Categorizes issue or PR as related to documentation. priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. approved Indicates a PR has been approved by an approver from all required OWNERS files. size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Mar 12, 2019
Copy link
Member

@neolit123 neolit123 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i think @fabriziopandini did great exposing the potential of the kind backend and this is a superior replacement for the kubeadm playground (vagrant).

it also follows an original suggestion from the #kind maintainers, where the backend should be vendored for complicated developer use cases.

waiting on feedback from the others.
thanks.

Copy link
Member

@timothysc timothysc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm
/approve

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Mar 13, 2019
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: fabriziopandini, timothysc

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:
  • OWNERS [fabriziopandini,timothysc]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot merged commit 72914ba into kubernetes:master Mar 13, 2019
@fabriziopandini fabriziopandini deleted the welcome-kinder branch March 13, 2019 13:27
@fabriziopandini fabriziopandini mentioned this pull request Mar 13, 2019
Copy link
Member

@BenTheElder BenTheElder left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for this, this is really cool to see! 😄

Added some specific notes / comments about some of the details 🙏

/lgtm

- [x] Add worker node
- [x] Add control plane node (and reconfigure load balancer)
- [x] Provide smoke test action
- [ ] Provide E2E run action(s)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

some of these test things would be nice to consider doing in kubetest2, FWIW

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agreed. The idea is to provide something to use to the developer, but use kubetest/kubetest2 behind the scenes (don't reinvent the wheel, only provide an UX wrapper)
But still need to investigate details

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

awesome, yeah kubetest2 is also still extremely MVP and could be changed as necessary, if not even using the whole tool it would be good to take a look at sharing some of the effort around the packages for this kind of work 😅

- [x] external etcd
- [x] kube-dns
- [x] Provide "topology aware" wrappers for `docker exec` and `docker cp`
- [x] Provide a way to add nodes to an existing cluster
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

after prototyping here this probably makes sense to try to add to kind eventually 😅, +1 to building under kinder

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agreed. Contributing back to kind is definitely in the radar

- [x] init and join with automatic copy certs
- [x] Provide pre built “developer” workflow for kubeadm upgrades
- [x] reset
- [x] Allow build of node-image variants
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would include adding additional debugging tools xref kubernetes-sigs/kind#339

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1

High level goals for kinder v0.1 include:

- [ ] Provide a local test environment for kubeadm development
- [x] Allow creation of nodes "ready for installing Kubernetes"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this one / phases will also hopefully land upstream O(soon), been prototyping various options for this in kind 😅

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great! I'm happy to nuke this in kinder as soon as possible!


### kinder cp

`kinder cp` provide a topology aware wrapper on docker `docker cp` . Following feature are supported:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

some variant of this would also be pretty sweet upstream, but I'm generally +1 on develop ASAP here for kubeadm testing and filter back something like it based on what we learn from usage, if you're up for that 😅

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm definitely up for that!

- [x] join and join with phases
- [x] init and join with automatic copy certs
- [x] Provide pre built “developer” workflow for kubeadm upgrades
- [x] reset
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

huge +1 for doing this in kinder 🙃

Copy link
Member

@neolit123 neolit123 Mar 14, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we should think about making kinder plugable in prow / kubetest(2) / test-infra.
reset is definitely something we want to e2e eventually. the other day we fixed a panic that was uncaught, because we don't have signal. :\

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/documentation Categorizes issue or PR as related to documentation. lgtm "Looks good to me", indicates that a PR is ready to be merged. priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. sig/cluster-lifecycle Categorizes an issue or PR as relevant to SIG Cluster Lifecycle. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants