美文网首页
1、二进制安装K8s 之 环境准备

1、二进制安装K8s 之 环境准备

作者: 小兔几白又白 | 来源:发表于2021-08-13 03:40 被阅读0次

    二进制安装K8s 之 环境准备

    1、系统&软件
    序号 设备\系统 版本
    1 宿主机 MacBook Pro 11.4
    2 系统 Centos 7.8
    3 虚拟机 Parallels Desktop 16 for Mac

    二、规划和软件版本

    1、IP规划
    序号 角色 IP 备注
    1 master01 192.168.100.170 etcd、kube-apiserver、kube-controller-manager、kube-scheduler、kubelet、kube-proxy(即使k8s master也是k8s node、etcd)
    2 master02 192.168.100.171 etcd、kube-apiserver、kube-controller-manager、kube-scheduler、kubelet、kube-proxy (即使k8s master也是k8s node、etcd)
    3 node1 192.168.100.172 etcd、kubelet、kube-proxy (k8s node、etcd)
    4 node2 192.168.100.173 kubelet、kube-proxy (k8s node)
    5 registry 192.168.100.174 harbor (docker image 私有仓库)
    6 gitlab 192.168.100.175 gitlab (代码仓库)
    7 LB01 192.168.100.176 nginx、lvs (负载均衡master)
    8 LB02 192.168.100.177 nginx、lvs (负载均衡master)
    9 虚拟ip 192.168.100.178 lvs 虚拟ip
    2、软件版本

    软件版本不同,操作也会有所不同,一定要注意版本

    序号 软件 版本
    1 kubeenetes v1.20.9
    2 docker v20.10.7
    3 docker-compos v1.29.2
    4 helm v3.6.3
    5 etcd v3.4.15
    6 harbor v2.3.1
    7 gitlab v14.1.2
    9 jenkins v2.289.3

    三、内核升级【非必需升级,但是要满足docker、k8s需求】

    uname -sr
    
    rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
    rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
    
    yum clean all && yum -y update
    
    yum -y --enablerepo=elrepo-kernel install kernel-ml
    
    awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
    #关键步骤,选择开机启动的默认内核
    grub2-set-default 
    
    

    四、虚拟机需要检查product_uuid ,因为虚拟机使用的clone镜像,所以基本都样,如果你使用是mac + PD,请看我另一篇文章,修改UUID。

    1、uuid 一样会导致k8s集群出问题,如果一样需要自行修改,你可以使用命令 ip link 或 ifconfig -a 来获取网络接口的 MAC 地址

    #查看网卡的uuid,每一台都要检测
    
    ifconfg
    
    #对 product_uuid 校验,每一台都要检测
    cat /sys/class/dmi/id/product_uuid 
    
    

    2、修改主机名

    # 根据自己需要设置
    hostnamectl  set-hostname k8s-master01
    
    

    3、关闭防火墙selinux和Swap

    systemctl stop firewalld
    systemctl disable firewalld
    #关闭selinux
     # 永久:
    sed -i 's/enforcing/disabled/' /etc/selinux/config
    
    #临时关闭
    setenforce 0 
    
    # 修改/etc/fstab永久关闭Swap
    cp -p /etc/fstab /etc/fstab.bak$(date '+%Y%m%d%H%M%S')
    
    
    # CentOS
    sed -i "s/\/dev\/mapper\/centos-swap/\#\/dev\/mapper\/centos-swap/g" /etc/fstab
    
    # 修改后重新挂载全部挂载点
    mount -a
    
    # 查看Swap
    free -m
    cat /proc/swaps
    

    4、修改hosts
    便于解析

    cat >> /etc/hosts << EOF
    192.168.100.170 k8s-master01
    192.168.100.171 k8s-master02
    192.168.100.172 k8s-node01
    192.168.100.173 k8s-node02
    192.168.100.174 k8s-registey
    192.168.100.174 registry.com
    192.168.100.175 gitlab.registry.com
    EOF
    

    5、部署calico网络需要
    将桥接的IPv4流量传递到iptables的链:

    cat > /etc/sysctl.d/k8s.conf << EOF
    net.bridge.bridge-nf-call-ip6tables = 1
    net.bridge.bridge-nf-call-iptables = 1
    EOF
    
    # 生效
    sysctl --system 
    
    
    时间同步:
    yum install ntpdate -y
    ntpdate time.windows.com
    
    
    6、安装docker
    • 安装docker 自由选择二进制安装或者yum安装
    yum install -y yum-utils
    yum-config-manager \
        --add-repo \
        https://download.docker.com/linux/centos/docker-ce.repo
    
    yum install -y docker-ce docker-ce-cli containerd.io
    
    • 创建docker 国内镜像仓库地址 配置文件
    cat > /etc/docker/daemon.json << EOF
    {
        "registry-mirrors": ["https://registry.docker-cn.com", "https://docker.mirrors.ustc.edu.cn"]
    }
    EOF
    
    • 启动并设置开机启动
    systemctl daemon-reload
    systemctl start docker
    systemctl enable docker
    
    7、创建 部署所需目录:k8s、docker 、calico、etcd、dockfile等
    mkdir /data/{docker/TSL/{etcd,k8s},etcd/{bin,config,ssl},k8s/{bin,config,ssl,logs,calico/{bin,config,ssl}}} -p
    mkdir /data/docker/{dockercompose,dockerfile,imagefile} -p
    
    #目录说明
    
    
    /data/etcd/
    ├── bin
    ├── config
    └── ssl
    
    /data/k8s/
    ├── bin
    ├── calico
    │   ├── bin
    │   ├── config
    │   └── ssl
    ├── config
    ├── deplotment
    ├── logs
    └── ssl
    
    /data/docker/
    ├── dockercompose
    ├── dockerfile
    └── TSL
        ├── etcd
        └── k8s
    
    

    相关文章

      网友评论

          本文标题:1、二进制安装K8s 之 环境准备

          本文链接:https://www.haomeiwen.com/subject/indsbltx.html