-
Notifications
You must be signed in to change notification settings - Fork 68
🌱 Change the experimental-e2e to use a two-node kind cluster #2382
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
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,45 @@ | ||
| apiVersion: kind.x-k8s.io/v1alpha4 | ||
| kind: Cluster | ||
| nodes: | ||
| - role: control-plane | ||
| extraPortMappings: | ||
| # e2e image registry service's NodePort | ||
| - containerPort: 30000 | ||
| hostPort: 30000 | ||
| listenAddress: "127.0.0.1" | ||
| protocol: tcp | ||
| # prometheus metrics service's NodePort | ||
| - containerPort: 30900 | ||
| hostPort: 30900 | ||
| listenAddress: "127.0.0.1" | ||
| protocol: tcp | ||
| kubeadmConfigPatches: | ||
| - | | ||
| kind: ClusterConfiguration | ||
| apiServer: | ||
| extraArgs: | ||
| enable-admission-plugins: OwnerReferencesPermissionEnforcement | ||
| - | | ||
| kind: InitConfiguration | ||
| nodeRegistration: | ||
| kubeletExtraArgs: | ||
| node-labels: "ingress-ready=true" | ||
| taints: [] | ||
| extraMounts: | ||
| - hostPath: ./hack/kind-config/containerd/certs.d | ||
| containerPath: /etc/containerd/certs.d | ||
| - role: control-plane | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. we do not need another control-plane node, a worker node could be just fine. Furthermore, each control plane node runs a copy of control plane pods (etcd, apiserver, scheduler, controller-manager) doubling the resources consumed by kind. Additional worker node keeps the resource usage on previous level.
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This is on purpose,. operator-controller and catalogd are supposed to run only on control-plane nodes; not worker nodes. It's part of what we want to test. This is also only for the experimental-e2e, so it's not used for normal run-time.
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Do we assert it during e2e tests on what nodes we run?
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Not yet, that was something that #2371 will be trying to do when they add 2 replicas. |
||
| kubeadmConfigPatches: | ||
| - | | ||
| kind: JoinConfiguration | ||
| nodeRegistration: | ||
| kubeletExtraArgs: | ||
| node-labels: "ingress-ready=true" | ||
| taints: [] | ||
| extraMounts: | ||
| - hostPath: ./hack/kind-config/containerd/certs.d | ||
| containerPath: /etc/containerd/certs.d | ||
| containerdConfigPatches: | ||
| - |- | ||
| [plugins."io.containerd.grpc.v1.cri".registry] | ||
| config_path = "/etc/containerd/certs.d" | ||
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.
nit:
kind-config-experimental.yamlsounds to me like some sort of experimental kind config, but actually it is just a two-node config. Perhaps we could reflect that in the filename?BTW, does this file need to be in the project root?
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.
It's the same location as the other kind config; keep similar files together.
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.
Now that there are multiple kind config files at play, it makes sense to me to bury this in a subdirectory somewhere.
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.
That's fair, and easy.