目录
6. 安装 kubeadm, kubelet and kubectl,【这里指定版本,不指定的话会安装最新版本,国内镜像对最新版本的支持没那么及时】
环境:
1. VMware14
2. Ubuntu16.04
1. 关闭 swap
sudo sed -i '/ swap / s/^/#/' /etc/fstab
sudo swapoff -a
2. 更新国内(阿里)的源
# 完备份
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
# 更新 sources.list
sudo tee /etc/apt/sources.list <<-'EOF'
deb http://mirrors.aliyun.com/ubuntu/ xenial main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security universe
EOF
3. 安装 docker
# 安装必要的一些系统工具
sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
# 安装GPG证书
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# 写入软件源信息
sudo add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
#更新并安装Docker-CE
sudo apt-get -y update
#sudo apt-get -y install docker-ce
# 如果不指定版本的话,会安装最新版本,而国内的阿里云镜像对最新版本,不一定支持,会导致后面安装k8s失败,这里选择安装的是17.*版本
sudo apt-get install docker-ce=17.03.1~ce-0~ubuntu-xenial
# 验证是否安装成功
docker version
4. docker 加速器及 cgroup 配置。
cgroup 改成 systemd, 要不然安装 kubernetes 时会有警告。
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"storage-driver": "overlay2",
"registry-mirrors": [
"https://dockerhub.azk8s.cn",
"https://hub-mirror.c.163.com"
]
}
EOF
# 重启服务
sudo systemctl daemon-reload
sudo systemctl restart docker
5. 关闭 dnsmasq 服务
# 打开配置文件
sudo vi /etc/NetworkManager/NetworkManager.conf
[main]
plugins=ifupdown,keyfile,ofono
#dns=dnsmasq # 这行注释
# 重启服务
sudo systemctl restart network-manager
dnsmasq服务会创建一个DNS服务,会向 /etc/resov.conf 写入一条 nameserver 127.0.1.1 的记录。最终导致在安装 kubernetes 的 CoreDNS 服务启动失败
6. 安装 kubeadm, kubelet and kubectl,【这里指定版本,不指定的话会安装最新版本,国内镜像对最新版本的支持没那么及时】
sudo apt install -y kubelet=1.14.* kubeadm=1.14.* kubectl=1.14.*
7. 初始化
sudo kubeadm init --pod-network-cidr=10.244.0.0/16 --kubernetes-version=v1.15.2 --image-repository=registry.aliyuncs.com/google_containers --ignore-preflight-errors=Swap