kubeadm简介
kubeadm是一个工具包,可帮助您以简单,合理,安全和可扩展的方式安装Kubernetes群集。它还支持管理Bootstrap Tokens 和升/降级集群版本。
kubeadm默认情况下并不会安装一个网络解决方案,所以用kubeadm安装完之后 需要自己来安装一个网络的插件。一般的选用插件有Calico,Flannel,Romana, Weaves Net等。
环境
1.一台或多台运行deb / rpm兼容操作系统的机器,例如Ubuntu或CentOS
以下版本为官方所支持的版本:
- Ubuntu 16.04+
- Debian 9
- CentOS 7
- RHEL 7
- Fedora 25/26 (best-effort)
- HypriotOS v1.0.1+
- Container Linux (tested with 1576.4.0)
本人在Debian8上也成功安装了k8s,但是有几点需要注意,因为内核问题,在运行
kubeadm init
时出现missing cgroups: memory
,需要更新grub,在/etc/default/grub
添加GRUB_CMDLINE_LINUX_DEFAULT="cgroup_enable=memory swapaccount=1"
并执行update-grub && reboot
2.每台机器有2 GB或更多的内存
3.主站上有2个以上的CPU
4.集群中所有机器的公用或专用网络都是正常的
准备
本人在debian8和centos7都安装过k8s。此教程适用于以上两个系统及debian9,其他系统若有出入请自行修改。
1.关闭swap,执行swapoff -a
关闭swap分区
2.关闭selinux,在centos中执行setenforce 0
3.安装docker
Debian
#从Ubuntu 或者Debian仓库安装Docker:
$ apt-get update
$ apt-get install -y docker.io
#从Docker的Ubuntu或Debian仓库安装Docker CE 17.03
$ apt-get update
$ apt-get install -y \
apt-transport-https \
ca-certificates \
curl \
software-properties-common
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -
$ add-apt-repository \
"deb https://download.docker.com/linux/$(. /etc/os-release; echo "$ID") \
$(lsb_release -cs) \
stable"
$ apt-get update && apt-get install -y docker-ce=$(apt-cache madison docker-ce | grep 17.03 | head -1 | awk '{print $3}')
centos7
$ yum install -y docker
$ systemctl enable docker && systemctl start docker
因为Docker未被墙,所以这里不提供docker的离线安装包,更多相关信息请参见官方的Docker安装指南
在RHEL/CentOS 7 系统上可能会路由失败,我们需要设置一下:
$ cat <<EOF > /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables =