-
Notifications
You must be signed in to change notification settings - Fork 39.2k
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
openstack: Implement the Routes
provider API
#32663
Conversation
78bb87b
to
9745099
Compare
Probably someone better than me to review this @kubernetes/sig-openstack |
In the light of kubernetes/enhancements#88, would it be already possible to implement this functionality as an add-on without making any changes to KCM? / cc @kubernetes/sig-cluster-lifecycle @kubernetes/sig-network |
@anguslees my previous comment doesn't relate to your work here. However, I can see you are proposing changes to |
@errordeveloper: I'm happy to drop the cluster/ changes from this PR, if you think we're organisationally unable to reach a conclusion on that portion. |
9745099
to
824ed9d
Compare
GCE e2e build/test passed for commit 824ed9dd8af3229ba72961d84c0ce7db8d662b4c. |
824ed9d
to
b85953c
Compare
@dagnello: can you review this? |
Jenkins Kubemark GCE e2e failed for commit b85953cd48ff88b7244153f744c95fbe04c67ad7. Full PR test history. The magic incantation to run this job again is |
@k8s-bot kubemark e2e test this |
I don't think making cloudprovider functionality optional should impact merging this. This looks like good code that adds a valuable feature for OpenStack users, and we don't want it to bitrot to the point where we lose it. I believe the most-recent plan I've heard for kubernetes/enhancements#88 is to create a separate kcm per cloudprovider, and then just require a kcm-core and a kcm-openstack. Having a few more controllers is not going to be the tricky bit there, I don't think: getting the first one out is the hard one; the rest are then easy. |
ping @dagnello for openstack review |
777c7d0
to
b674b00
Compare
Jenkins GCE e2e failed for commit b674b0041a5fe10db5460c38c84c5934c7230a88. Full PR test history. The magic incantation to run this job again is |
@k8s-bot cvm gce e2e test this |
b674b00
to
7c0ea7a
Compare
@mikedanese for re-lgtm following bazel-induced rebase |
face327
to
c7a9d52
Compare
@mikedanese / @smarterclayton : quick, re-apply your lgtm label before another CI bot breaks! |
Import github.com/rackspace/gophercloud/openstack/networking/v2/extensions/layer3/routers/
c7a9d52
to
ffaf8f7
Compare
Jenkins GCE etcd3 e2e failed for commit ffaf8f710d6bf03628114dbe68fb894205be78d0. Full PR test history. The magic incantation to run this job again is |
@mikedanese / @smarterclayton: too late, the CI bots are all broken again :( |
This change implements the Routes API using Neutron's "extraroute" extension. To use, this requires all the nodes to be on the same Neutron network and the UUID of the Neutron router on that network. Required cloud provider config section: [Route] router-id = <UUID of Neutron router> Ensure kube-controllermanager is started with (non-default) `--allocate-node-cidrs=true` and set `--cluster-cidr` to the POD super-subnet (a private /16 would be reasonable). Based on an earlier version by @timbyr (kubernetes#19473)
ffaf8f7
to
29fadb3
Compare
Jenkins verification failed for commit ffaf8f710d6bf03628114dbe68fb894205be78d0. Full PR test history. The magic incantation to run this job again is |
@k8s-bot kops aws e2e test this |
@anguslees AWS kops bots are hitting rate limits so my understanding is that they are non-blocking until we work around / get higher limits. |
Jenkins kops AWS e2e failed for commit 29fadb3. Full PR test history. The magic incantation to run this job again is |
@k8s-bot test this [submit-queue is verifying that this PR is safe to merge] |
Automatic merge from submit-queue |
Automatic merge from submit-queue openstack: Implement the `Routes` provider API ``` release-note Implement the Routes provider API for OpenStack using Neutron extraroute extension. This removes the need for flannel/etc where supported. To use, ensure all your nodes are on the same Neutron (private) network and specify the router ID in new `[Route]` section of provider config: [Route] router-id = <router UUID> ```
This change is![Reviewable](https://camo.githubusercontent.com/bdad2d5a4be7a00dc3b2426ea57eabd73ef84d8ed5ee05653b2f1501b6ea93ab/68747470733a2f2f72657669657761626c652e6b756265726e657465732e696f2f7265766965775f627574746f6e2e737667)