码迷,mamicode.com
首页 > Web开发 > 详细

kubernetes集群搭建

时间:2019-11-25 20:56:19      阅读:107      评论:0      收藏:0      [点我收藏+]

标签:manager   x86   disable   api   efault   docker   完成   参考   swap   

1. 使用kubeadm安装k8s
    vim /etc/yum.repos.d/k8s.repo
    [kubernetes]
    name=Kubernetes Ropesitory
    baseurl=http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
    enabled=1
    gpgcheck=0  #可直接跳到第8步安装

    2. 安装kubeadm工具
    yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes

3. 安装docker
    yum remove docker  docker-common docker-selinux docker-engine
    安装需要的软件包, yum-util 提供yum-config-manager功能
    设置yum源:
    yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    查看所有仓库中所有docker版本,并选择特定版本安装
    yum list docker-ce --showduplicates | sort -r
    yum install docker-ce.x86_64-3:18.09.9-3.el7    #官网推荐配置
    systemctl enable docker && systemctl start docker
    此时启动kubectl会报错,暂时先不启动

4. 生成配置文件
    kubeadm config print init-defaults > init.default.yaml
    vim init-config.yaml
    apiVersion: kubeadm.k8s.io/v1beta1
    kind: ClusterConfiguration
    imageRepository: docker.io/dustise
    kubernetesVersion: v1.14.0
    networking: 
       podSubnet: "192.168.0.0/16"

5. 修改docker配置文件,获取国内镜像托管站点加速
    echo ‘{"registry-mirrors":["https://registry.docker-cn.com"]}‘ > /etc/docker/daemon.json
    重启docker
    systemctl daemon-reload && systemctl restart docker

6. 下载镜像
    kubeadm config images pull --config=init-config.yaml   #报错如下

技术图片

7. 解决下载镜像报错问题
    卸载kubeadm
    grep -qa | grep kubeadm
    rpm -e  kubeadm-1.16.3-0.x86_64

8. 安装kubeadm-1.14版本
    vim /etc/yum.repos.d/k8s.repo
    [kubernetes]
    name=Kubernetes
    baseurl=http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
    enabled=1
    gpgcheck=0
    repo_gpgcheck=0
    gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
    http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
    yum makecache fast && yum install -y kubelet-1.14.1-0 kubeadm-1.14.1-0 kubectl-1.14.1-0 
    kubeadm config images pull --config=init-config.yaml

技术图片    

9. 运行kubeadm init命令安装Master
    开始之前注意:kubeadm安装过程不涉及网络插件初始化,所以kubeadm初步安装完成的
集群不具备网络功能,任何Pod包括自带的CoreDNS都无法正常工作,网络插件安装对
kubeadm init命令参数有要求,比如安装Calico插件需要指定--pod-network-cidr=192.168.0.0/16,
具体参考https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/#pod-network
    kubeadm init --config=init-config.yaml

技术图片  

10. 处理上述报错
    swapoff -a
    vim /etc/fstab  #注释以下行
    #/dev/mapper/centos-swap swap                    swap    defaults        0 0
    再执行kubeadm init --config=init-config.yaml   #显示以下即Master安装成功

技术图片  

11. 根据提示执行以下命令
    mkdir -p $HOME/.kube
    cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
    chown $(id -u):$(id -g) $HOME/.kube/config
    Master安装成功后,集群内没有可用工作的node,并缺少对容器网络的配置
    需要注意执行kubeadm init命令完成后的最后几行信息,包含加入节点的指令(kubeadm join)和所需的Token
    验证kubectl命令ConfigMap如下图
    kubectl get -n kube-system configmap

技术图片  

  

kubernetes集群搭建

标签:manager   x86   disable   api   efault   docker   完成   参考   swap   

原文地址:https://www.cnblogs.com/The-day-of-the-wind/p/11930042.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!