centos上使用kubeadm安装k8s(Kubernetes v1.19.3)遇到的问题

1:安装文档
https://kubernetes.io/zh/docs/setup/production-environment/tools/kubeadm/install-kubeadm/
注意先安装docker,启动docker服务,然后再安装kubeadm
2:上面的安装文档对于国内用户不是完美的,至少Google的很多服务访问不通,所以我们要用aliyun来替换,所以执行一下两个不走再安装docker和kubeadm
添加阿里云docker软件源

sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

docker的安装看:https://developer.aliyun.com/article/110806

添加k8s软件源为阿里云的,这样安装kubeadm和kubectl、kubelet会快一些

cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF

3: 在centos安装kubeadm的童鞋需要注意一些点,iptables 和 swap 分区都需要管理
配置iptables,文档中有,不要忘记执行,

cat <<EOF >  /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
sysctl --system

关闭swap分区很重要,k8s不支持交换分区,这个百度一下往上很多文档。

修改docker使用systemd

cat << EOF > /etc/docker/daemon.json
{
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "storage-driver": "overlay2",
  "storage-opts": [
    "overlay2.override_kernel_check=true"
  ],
  "registry-mirrors": ["https://25f3mo5n.mirror.aliyuncs.com"]
}
EOF

安装完kubeamd之后需要设置开机启动,systemctl enable --now kubelet
但是第一次启动时启动不起来的,原因是kubeadm需要先初始化,否则kubelet会不断尝试重启。

执行以下命令初始化k8s节点

kubeadm init --image-repository registry.aliyuncs.com/google_containers
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容