-
Notifications
You must be signed in to change notification settings - Fork 14.5k
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
Updated Fedora guides to use kubeadm and kube 1.10 #9188
Conversation
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: Assign the PR to them by writing 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 |
Deploy preview for kubernetes-io-master-staging ready! Built with commit f3593c2 https://deploy-preview-9188--kubernetes-io-master-staging.netlify.com |
/assign @heckj |
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.
we already have documentation that covers this:
https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/
that same documentation for kubeadm is being refactored, restructured and improved.
on Wednesday (20th June) SIG-Cluster-lifecycle and SIG-Docs spent time talking about some of the issue at hand here. one problem is that we have a lot of duplicate information about kubeadm all over the place that has to be maintained and eats time from both SIGs.
IMO, the request in #7302, #7278 is misleading given the recent discussions.
consolidation and improving the navigation and structure is a must!
the only specifics i see here are related to Fedora package managers and package names. possibly some disto network specifics too. other than that this page should pretty much link to the kubeadm guide in question and same applies to other distro pages.
/cc @kubernetes/sig-cluster-lifecycle-pr-reviews
/cc @Bradamant3
|
||
# etcd url location. Point this to the server where etcd runs | ||
FLANNEL_ETCD="http://fed-master:2379" | ||
**IMPORTANT**: You may need the **--ignore-preflight-errors=all** option. |
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.
ignoring all preflight errors is not recommended to the end user of kubeadm.
individual errors have to be dealt with.
|
||
To try out Kubernetes on Fedora, you have a few choices: | ||
|
||
* **kubeadm** - The kubeadm command provides a toolkit to bootstrap a Kubernetes cluster that is reasonable secure, extensible, and upgradable. See this document for details on using kubeadm with flannel networking to set up Kubernetes in Fedora (either as a single-node or multi-node configuration). |
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.
kubeadm is a tookit for bootstrapping a Kubernetes cluster that is reasonably secure, extensible and upgradable.
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.
Is this paragraph missing a link? I'd expect "See this document" to link somewhere
@chrisnegus sorry to pile on here, but in addition to sorting out just which technical content should go in, we need to move these files (the /fedora subdirectory) to the /setup directory. Their current location is orphaned in the docs build. See PR #8937 for an example of what we're trying to do. If you would't mind moving them while you're working on the content, sig-docs would be most grateful. For the future: we might want to think about how to manage the OS-specific getting started content, as well as the cloud provider content. Just a thought for now. cc @steveperry-53 who's been working on de-orphaning. |
|
||
* **oc cluster up** - A quick way to directly set up an OpenShift cluster on Fedora is to install a few required packages, then run **oc cluster up**, as described in [Start a local OpenShift all-in-one cluster](https://developer.fedoraproject.org/deployment/openshift/about.html). | ||
|
||
* **openshift-ansible** - Use ansible playbooks to set up OpenShift in a single-node cluster directly on a Fedora system. Ansible playbooks for running OpenShift are available from the [Kubespray](https://github.com/kubernetes-incubator/kubespray) Github site. |
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.
This starts with talking about openshift-ansible and then ends with Kubespray
To try out Kubernetes on Fedora, you have a few choices: | ||
|
||
* **kubeadm** - The kubeadm command provides a toolkit to bootstrap a Kubernetes cluster that is reasonable secure, extensible, and upgradable. See this document for details on using kubeadm with flannel networking to set up Kubernetes in Fedora (either as a single-node or multi-node configuration). | ||
* **minikube** - With minikube, you run a single-node Kubernetes cluster in a virtual machine on your laptop or desktop system. See [Running Kubernetes Locally via Minikube](https://kubernetes.io/docs/getting-started-guides/minikube/) for details. See [Alternative Container Runtimes](https://kubernetes.io/docs/getting-started-guides/minikube/#alternative-container-runtimes) to replace Docker with CRI-O or rkt runtimes for minikube. |
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.
Minikube runs a single-node ...
|
||
* **openshift-ansible** - Use ansible playbooks to set up OpenShift in a single-node cluster directly on a Fedora system. Ansible playbooks for running OpenShift are available from the [Kubespray](https://github.com/kubernetes-incubator/kubespray) Github site. | ||
|
||
The description here for running Kubernetes using kubeadm has been tested on Fedora and Fedora Atomic distributions. The resulting Kubernetes configuration has these attributes: |
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.
This guide has been tested on ...
|
||
The Kubernetes package provides a few services: kube-apiserver, kube-scheduler, kube-controller-manager, kubelet, kube-proxy. These services are managed by systemd and the configuration resides in a central location: `/etc/kubernetes`. We will break the services up between the hosts. The first host, fed-master, will be the Kubernetes master. This host will run the kube-apiserver, kube-controller-manager, and kube-scheduler. In addition, the master will also run _etcd_ (not needed if _etcd_ runs on a different host but this guide assumes that _etcd_ and Kubernetes master run on the same host). The remaining host, fed-node will be the node and run kubelet, proxy and docker. | ||
<pre><tt># <b>atomic host upgrade</b> |
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.
code fences would be more in line with the rest of the repo, but totally up to you
systemctl status $SERVICES | ||
done | ||
``` | ||
4. Create a .kube directory in your home directory, add a configuration file, and change ownership (to be able to use kubectl later as a regular user, login as that user and append sudo to the cp and chown commands here): |
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.
these instructions are part of the kubeadm init
output, might be able to get away with mentioning that instead of copying commands here?
FWIW I don't think this belongs in the main docs anymore but is here out of legacy. I think it makes far more sense to link out to different provider hosted websites that want to outline their options. Upstream k8s recommends and supports kubeadm, everything else is a docs maintenance burden b/c as solutions and people come and go the docs eventually rot. |
That's at the top of my stack for Q3/Q4, working with @kubernetes/sig-cloud-provider. |
@chrisnegus This PR requires significant work before it can be approved, mostly focused on scaling back the documentation footprint. Here's a summary of feedback so far:
Also please use code fences in Markdown rather than HTML tags for code samples. |
My goal was to simply replace old Kubernetes on Fedora instructions with new ones. Although not in the new nav, those docs are still referenced from Picking the Right Solution. Perhaps you should just cut the links and I could drop this PR. As to whether we need to document Kubernetes setup for different operating systems , I'd be glad to participate in that discussion. I attended a meeting of the sig-cloud-provider you mentioned and they felt this was outside their scope. |
/cc @cody-clark closing in favor of Cody's rework of Picking the Right Solution. |
This is a re-submission of changes to two guides for installing Kubernetes on Fedora using kubeadm. My original pull request (8009) was rejected because it was too close to the overhaul of the Kubernetes docs.
As I stated in the earlier pull request:
The two Fedora kube single-node and multi-node getting started guides were outdated. These two issues suggested the two docs be updated to use kubeadm:
#7302
#7278
I totally rewrote both of those documents to use kubeadm (as well as to reflect how the procedures work for Kubernetes 1.10).