kubeadm 安装 kubernetes 原生集群

3 篇文章 0 订阅
1 篇文章 0 订阅

0.参考

注意: 从一、二、三所有节点都执行,四master节点执行master操作,node节点执行添加节点操作。

一、前置设置
  1. 最好升级下yum package
    yum upgrade -y

  2. 设置hostname

    hostnamectl set-hostname k8s-master  
    hostnamectl set-hostname k8s-node   
    hostnamectl --static #查看设置结果
    
  3. 关闭swap分区

    swapoff -a
    
  4. 关闭防火墙

    systemctl stop firewalld && systemctl disable firewalld
    
  5. 禁用SELINUX

    vi /etc/selinux/config
    SELINUX=disabled
    
  6. 修改网络参数

    cat <<EOF >  /etc/sysctl.d/k8s.conf
    vm.swappiness = 0
    net.bridge.bridge-nf-call-ip6tables = 1
    net.bridge.bridge-nf-call-iptables = 1
    net.ipv4.ip_forward = 1
    EOF
    

    使设置生效:

    sysctl --system
    
  7. Node节点开启ipvs

    cat > /etc/sysconfig/modules/ipvs.modules <<EOF
    #!/bin/bash
    modprobe -- ip_vs
    modprobe -- ip_vs_rr
    modprobe -- ip_vs_wrr
    modprobe -- ip_vs_sh
    modprobe -- nf_conntrack_ipv4
    EOF
    
    使设置生效:
    
    chmod 755 /etc/sysconfig/modules/ipvs.modules && bash /etc/sysconfig/modules/ipvs.modules && lsmod | grep -e ip_vs -e nf_conntrack_ipv4
    
二、安装docker
  1. 添加yum源

    yum install -y yum-utils device-mapper-persistent-data lvm2  && \
    yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo && \
    yum makecache fast
    
  2. 选择版本并安装

    yum list docker-ce.x86_64  --showduplicates |sort -r
    

    选择docker版本

    yum install -y --setopt=obsoletes=0 docker-ce-18.09.7-3.el7 
    
  3. 配置并启动

    tee /etc/docker/daemon.json <<-'EOF'
    {
    	"exec-opts": ["native.cgroupdriver=systemd"]
    }
    EOF
    

    启动:

    systemctl daemon-reload && \
    systemctl restart docker &&\
    systemctl enable docker &&\
    systemctl status docker.service
    
三、安装kubeadm等相关组件
  1. 添加阿里kubernetes源

    cat <<EOF > /etc/yum.repos.d/kubernetes.repo
    [kubernetes]
    name=Kubernetes
    baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
    enabled=1
    gpgcheck=1
    repo_gpgcheck=1
    gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
    EOF
    
  2. 安装
    – 查看版本

    yum list -y kubeadm.x86_64  --showduplicates
    

    在这里插入图片描述
    – 安装想要的版本

    yum -y install kubectl-1.18.2-0 kubelet-1.18.2-0 kubeadm-1.18.2-0  
    
四、启动master
  1. 安装master1

    kubeadm init --kubernetes-version=1.18.2 --image-repository registry.aliyuncs.com/google_containers --service-cidr=10.10.0.0/16 --pod-network-cidr=10.244.0.0/16 --apiserver-advertise-address=机器内网IP
    
  2. 为master节点添加config 文件
    在这里插入图片描述

    mkdir -p $HOME/.kube
    sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
    sudo chown $(id -u):$(id -g) $HOME/.kube/config
    

    查看健康性:

    kubectl get cs
    

    在这里插入图片描述

  3. 打包/etc/kubernetes

    cd /etc && tar -czf kubernetes.tar.gz kubernetes
    

    在这里插入图片描述

  4. 传送包到其他master节点

    scp kubernetes.tar.gz root@49.232.93.201:/etc
    

在这里插入图片描述

	cd /etc && \
	tar -zvxf kubernetes.tar.gz  && \
	cd kubernetes && \
	rm -rf  rm -rf manifests/ &&\
	cd pki && \
	rm -rf  apiserver*  front-proxy-client.*  && \
	rm -rf ectd/healthcheck.*  etcd/peer.*  etcd/server.* 
[root@VM-64-91-centos kubernetes]# tree
.
|-- admin.conf
|-- controller-manager.conf
|-- kubelet.conf
|-- pki
|   |-- ca.crt
|   |-- ca.key
|   |-- etcd
|   |   |-- ca.crt
|   |   `-- ca.key
|   |-- front-proxy-ca.crt
|   |-- front-proxy-ca.key
|   |-- sa.key
|   `-- sa.pub
`-- scheduler.conf

在这里插入图片描述

[root@VM-64-91-centos pki]# tree
.
|-- ca.crt
|-- ca.key
|-- etcd
|   |-- ca.crt
|   `-- ca.key
|-- front-proxy-ca.crt
|-- front-proxy-ca.key
|-- sa.key
`-- sa.pub
  1. 按安装完后的提示添加节点

    kubeadm join 172.21.64.129:6443 --token gxeb8n.iorpmceaazseoxjk \
    --discovery-token-ca-cert-hash sha256:65a0a4c88a6e22d1183ba9d69c5db809c108b4e9f643fe4c374f77623900
    
  2. 查看pod和node
    在这里插入图片描述

  3. 安装flannel 网络插件

    上文中有两个pod处于pending是没有安装相应的网络插件

    kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
    

    安装后如下:
    在这里插入图片描述
    或者安装calico k8s网络插件,功能更和flannel 等效

	kubectl apply -f  https://docs.projectcalico.org/manifests/calico.yaml
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值