当我使用亚马逊云服务建好的centos7服务时,发现docker版本太旧了,而目前kubernetes不支持docker-ce,
这里主要讲一下在安装docker-1.13.1及启动须要修改的一些配置文件. linux
sudo yum remove -y docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-selinux \ docker-engine-selinux \ docker-engine
sudo yum install -y yum-utils device-mapper-persistent-data lvm2 sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo yum install docker -y
修改/etc/sysconfig/docker文件docker
# 将--selinux-enabled设置为false,否则可能会因为selinux服务不能用致使docker启动失败 OPTIONS='--selinux-enabled=false --log-driver=json-file --signature-verification=false'
修改systemd启动参数json
# 这个启动参数是centos7自带的docker1.11.1版本须要的,会致使docker1.13.1启动失败 mv /etc/systemd/system/docker.service.d/execstart.conf /etc/systemd/system/docker.service.d/execstart.conf.cp systemctl daemon-reload systemctl enable docker && systemctl start docker
cat <<EOF > /etc/yum.repos.d/kubernetes.repo [kubernetes] name=Kubernetes baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64 enabled=1 gpgcheck=1 repo_gpgcheck=1 gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg EOF yum install -y kubelet-1.9.5 kubeadm-1.9.5 kubectl-1.9.5
官网文档上写一些用户在RHEL/Centos7系统上安装时,因为iptables被绕过致使路由错误,须要在
sysctl的config文件中将net.bridge.bridge-nf-call-iptables设置为1.centos
cat <<EOF > /etc/sysctl.d/k8s.conf net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 EOF sysctl --system
systemctl enable kubelet && systemctl start kubelet