栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

kubernetes(k8s)命令安装

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

kubernetes(k8s)命令安装

首先安装docker环境,前两篇文章中以给出步骤

1:基础环境安装

        1:集群中各节点时间必须一致,使用chronyd服务从网络同步时间

                systemctl start chronyd 启动服务

                systemctl enable chronyd 设置开机自启

                date 查看时间的命令

        2:修改hostname

                cat /etc/hostname 查看主机名

                hostnamectl set-hostname ** 修改主机名

                reboot 重启服务

                vim /etc/hosts

                IP hostname 增加 ip和对应的主机名称,所有节点添加主节点信息

        3:将 SELinux 设置为 permissive 模式(相当于将其禁用)

                sudo setenforce 0

                sudo sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config

        4:关闭swap 交换区

                swapoff -a  

                sed -ri 's/.*swap.*/#&/' /etc/fstab

                可通过 free -m查看swap的状态

        5:允许 iptables 检查桥接流量

                cat <

                br_netfilter

                EOF

                cat <

                net.bridge.bridge-nf-call-ip6tables = 1

                net.bridge.bridge-nf-call-iptables = 1

                EOF

                sudo sysctl --system

        6:配置镜像加速地址

                sudo mkdir -p /etc/docker

                sudo tee /etc/docker/daemon.json <<-'EOF'

                {

                  "registry-mirrors": ["https://r3hj12jo.mirror.aliyuncs.com"]

                }

                EOF

                sudo systemctl daemon-reload

                sudo systemctl restart docker

        7:关闭防火墙

                systemctl stop firewalld.service                         停止firewall

                systemctl disable firewalld.service                   禁止firewall开机启动

2:安装kubelet、kubeadm、kubectl

        1:设置yum源 如果无法访问官方的yum源,可以使用国内的yum源

                cat <

                [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

                exclude=kubelet kubeadm kubectl

                EOF

        2:安装指定版本

          yum install -y kubelet-1.20.9 kubeadm-1.20.9 kubectl-1.20.9 --disableexcludes=kubernetes

        3:设置开机自启

                systemctl enable --now kubelet

3:下载各个机器需要的镜像

        sudo tee ./images.sh <<-'EOF'

         #!/bin/bash

        images=(

                kube-apiserver:v1.20.9

                kube-proxy:v1.20.9

                kube-controller-manager:v1.20.9

                kube-scheduler:v1.20.9

                coredns:1.7.0

                etcd:3.4.13-0

                pause:3.2

        )

        for imageName in ${images[@]} ; do

        docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/$imageName

        done

        EOF

        chmod +x ./images.sh && ./images.sh 授权并执行

    所有节点都要执行,虽然子节点不需要下载这么多插件,但为了后期不报错,统一安装相同插件

4:初始化master节点

        1:主节点初始化

                kubeadm init

                --apiserver-advertise-address=10.10.23.100

                --control-plane-endpoint=master

                --image-repository registry.cn-hangzhou.aliyuncs.com/google_containers

                --kubernetes-version v1.20.9

                --service-cidr=10.96.0.0/16

                --pod-network-cidr=192.168.0.0/16

        参数说明:

                --apiserver-advertise-address 集群通告地址,主节点id

                --control-plane-endpoint 主节点的主机名

                --image-repository  由于默认拉取镜像地址k8s.gcr.io国内无法访问,这里指定阿里云镜像仓库地址

                --kubernetes-version K8s版本,与上面安装的一致

                --service-cidr 集群内部虚拟网络,Pod统一访问入口

                --pod-network-cidr Pod网络,与下面部署的CNI网络组件yaml中保持一致

        第一个红框内容表示初始化成功

        第二个红框内容表示要想使用集群,还需要做的操作

        第三个表示添加节点的令牌

        第四个表示添加子节点的令牌(24小时有效期,过期再去获取令牌即可)

                重新获取令牌 kubeadm token create --print-join-command

        执行第二个红框中的内容

                mkdir -p $HOME/.kube

                sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config

                sudo chown $(id -u):$(id -g) $HOME/.kube/config

      然后按步骤安装网络组件

5:安装calico网络组件

        网络插件有很多,此处采用calico网络插件        

        安装最新版本的组件

                curl https://docs.projectcalico.org/manifests/calico.yaml -O

        安装指定版本的组件

                curl https://docs.projectcalico.org/archive/v3.20/manifests/calico.yaml -O

        kubectl apply -f calico.yaml                                        执行安装命令

        kubectl delete -f  calico.yaml                                      执行卸载命令

calico和kubernetes是有版本对应关系的,当前文档中给的版本是兼容的,若调整版本可以查看官方文档

System requirementsReview requirements before installing Calico to ensure success.https://projectcalico.docs.tigera.io/archive/v3.20/getting-started/kubernetes/requirements

安装完网络插件以后,在子节点执行加入集群的命令

执行完成在主节点通过 kubectl get nodes 查看节点信息,

至此,k8s集群环境安装成功!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/962510.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号