222
apt-get update && apt-get install -y apt-transport-https curl
cat <<EOF >/etc/apt/sources.list.d/kubernetes.list
> deb http://mirrors.ustc.edu.cn/kubernetes/apt kubernetes-xenial main
> EOF
apt-get update
W: GPG 错误:http://mirrors.ustc.edu.cn/kubernetes/apt kubernetes-xenial InRelease: 由于没有公钥,无法验证下列签名: NO_PUBKEY 6A030B21BA07F4FB
gpg --keyserver keyserver.ubuntu.com --recv-keys BA07F4FB
gpg -a --export 6A030B21BA07F4FB | sudo apt-key add -
sudo apt-get install -y kubelet kubeadm kubectl
关闭swap分区:
如果不关闭kubernetes 运行会出现错误,及时安装成功了,node 重启后也会出现kubernetes server 运行错误。
swapoff -a #暂时关闭
vim /etc/fstab,注释掉swap那一行,#永久禁用swap分区
禁用防火墙
禁用防火墙并不是安全的做法,如果在真实的环境中请查看k8s文档开放指定的端口。
我这里简单粗暴直接禁用防火墙:
ufw disable
配置cgroup驱动类型
docker中有两种cgroup驱动类型:cgroupfs,systemd
1. 查看docker使用的驱动类型:`docker info|grep -i cgroup`
2. 修改/etc/systemd/system/kubelet.service.d/10-kubeadm.conf 配置文件中的cgroup类型与上一步执行结果对应
//假如该文件中有如下这一行
Environment="KUBELET_CGROUP_ARGS=--cgroup-driver=systemd"
//如果没有上面这行,需要添加,并修改cgroup-driver为docker使用的类型,我的安装环境正确的配置如下:
Environment="KUBELET_CGROUP_ARGS=--cgroup-driver=cgroupfs"
3. 使上一步配置生效
systemctl daemon-reload
systemctl restart kubelet
kubeadm config images list
#! /bin/bash
images=(
kube-apiserver:v1.13.4
kube-controller-manager:v1.13.4
kube-scheduler:v1.13.4
kube-proxy:v1.13.4
pause:3.1
etcd:3.2.24
coredns:1.2.6
)
for imageName in ${images[@]} ; do
docker pull mirrorgooglecontainers/$imageName
docker tag mirrorgooglecontainers/$imageName k8s.gcr.io/$imageName
done
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
export KUBECONFIG=/etc/kubernetes/admin.conf
相关阅读