Skip to content
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

Package fixes for enabling br_netfilter & ip_forward with kubeadm #68624

Merged
merged 1 commit into from Sep 26, 2018

Conversation

sysrich
Copy link
Contributor

@sysrich sysrich commented Sep 13, 2018

What this PR does / why we need it:
For any rpm distribution using our reference .spec files it will include the appropriate configuration to probe the br_netfilter module automatically and enable IP forwarding.

These are mandatory by kubeadm (it fails fatally if this is not configured), but only the Docker CRI runtime satisfies this requirement automatically.

As they're mandatory in kubeadm, they can and should be configured automatically as part of the installation of kubeadm. This will improve kubeadms support for any CRI runtime besides Docker (eg. CRI-O)

The is the upstream aligned variation of openSUSE's equivalent changes here: https://build.opensuse.org/package/rdiff/devel:kubic/kubernetes?linkrev=base&rev=9

Which issue(s) this PR fixes
Fixes kubernetes/kubeadm#1062

Release note:

NONE

@k8s-ci-robot k8s-ci-robot added release-note-none Denotes a PR that doesn't merit a release note. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. needs-kind Indicates a PR lacks a `kind/foo` label and requires one. labels Sep 13, 2018
@k8s-ci-robot k8s-ci-robot added needs-sig Indicates an issue or PR lacks a `sig/foo` label and requires one. needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Sep 13, 2018
@sysrich
Copy link
Contributor Author

sysrich commented Sep 13, 2018

/assign @mikedanese

@sysrich
Copy link
Contributor Author

sysrich commented Sep 13, 2018

/sig cluster-lifecycle

@k8s-ci-robot k8s-ci-robot added sig/cluster-lifecycle Categorizes an issue or PR as relevant to SIG Cluster Lifecycle. and removed needs-sig Indicates an issue or PR lacks a `sig/foo` label and requires one. labels Sep 13, 2018
@sysrich
Copy link
Contributor Author

sysrich commented Sep 13, 2018

/kind bug

@k8s-ci-robot k8s-ci-robot added kind/bug Categorizes issue or PR as related to a bug. and removed needs-kind Indicates a PR lacks a `kind/foo` label and requires one. labels Sep 13, 2018
@timothysc
Copy link
Member

/cc @chuckha @detiber
/ok-to-test
/assign @ixdy

@k8s-ci-robot k8s-ci-robot removed the needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. label Sep 13, 2018
@timothysc
Copy link
Member

@sysrich - Just an FYI but these are not the canonical rpms/debs for the release.

Copy link
Contributor

@chuckha chuckha 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 this is divergent from the actual release repo, however they have been slowly drifting apart.

I wonder if we need a discussion about the future of maintaining these bazel builds.

That being said, if you're using bazel artifacts, these are good changes.

@k8s-ci-robot k8s-ci-robot added size/S Denotes a PR that changes 10-29 lines, ignoring generated files. and removed size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. labels Sep 13, 2018
@mikedanese
Copy link
Member

Can we give the conf files more intuitive names?

@sysrich
Copy link
Contributor Author

sysrich commented Sep 17, 2018

/test pull-kubernetes-verify

@sysrich
Copy link
Contributor Author

sysrich commented Sep 17, 2018

@mikedanese what would you consider as more intuitive?

I followed the naming convention you typically see in the folders in question, in the case of modules-load.d you typically see the conf file named after the "reason this config file exists". In sysctl.d you typically see the conf file named similarly, with a priority version in front of it, with 50- being typical for things provided by distribution packages

That said, I get the names look weird outside of the context of the installed system.
We could call the files something different in git/packaging and then using the spec to install them with the above naming convention.
To do that, I'd be more comfortable with that if we used a more verbose, openSUSE-style of spec file, where we explicitly list additional files in SourceXXX: declarations, and then reference those as %{SourceX} when installing/renaming them.

Which is a route I'd be perfectly happy to submit - will be less simple and straightforward than the current specfiles and their implicit %{Filename} approach, but less work for me to rebase with what I'm doing in openSUSE.

@rosti
Copy link
Contributor

rosti commented Sep 19, 2018

I like this, although strictly speaking, this should probably be done by the CRI packages (Docker does it for instance).
On the other hand, having this here certainly improves kubeadm UX with non-Docker CRIs.

/area kubeadm

@mikedanese
Copy link
Member

Whatever is reasonable.

/lgtm

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

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: mikedanese, sysrich

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:

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 added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Sep 19, 2018
@k8s-ci-robot k8s-ci-robot merged commit 8c4d37e into kubernetes:master Sep 26, 2018
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. area/kubeadm cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/bug Categorizes issue or PR as related to a bug. lgtm "Looks good to me", indicates that a PR is ready to be merged. release-note-none Denotes a PR that doesn't merit a release note. sig/cluster-lifecycle Categorizes an issue or PR as relevant to SIG Cluster Lifecycle. size/S Denotes a PR that changes 10-29 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

kubeadm complains about bridge-nf-call and ip_forward if not using docker runtime
7 participants