zoukankan      html  css  js  c++  java
  • 搭建单master、单workNode节点k8s集群。

    参考链接:https://blog.csdn.net/networken/article/details/84991940

    本文完全根据  https://blog.csdn.net/networken/article/details/84991940进行操作,文字基本来源于原文,图片部门来自本人搭建过程中的实验过程。

    选取自己的masterNode1和node1结点,作为实验过程中的机器。

    1、删除原有的集群结点

    kubectl drain node1 --delete-local-data --force --ignore-daemonsets

    kubectl delete node node1

    2、更改主机名、更改hosts文件

    3、关闭防火墙和selinux
    systemctl stop firewalld && systemctl disable firewalld
    sed -i 's/^SELINUX=enforcing$/SELINUX=disabled/' /etc/selinux/config && setenforce 0
    4、关闭swap

    swapoff -a

    yes | cp /etc/fstab /etc/fstab_bak

    cat /etc/fstab_bak |grep -v swap > /etc/fstab

    5、配置时间同步

    6、修改iptables相关参数

    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
    执行命令使得配置生效

    modprobe br_netfilter

    sysctl -p /etc/sysctl.d/k8s.conf

    7、加载ipvs相关模块

    由于ipvs已经加入到了内核的主干,所以为kube-proxy开启ipvs的前提需要加载以下的内核模块:
    在所有的Kubernetes节点执行以下脚本:

    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

    上面脚本创建了/etc/sysconfig/modules/ipvs.modules文件,保证在节点重启后能自动加载所需模块。 使用lsmod | grep -e ip_vs -e nf_conntrack_ipv4命令查看是否已经正确加载所需的内核模块。
    接下来还需要确保各个节点上已经安装了ipset软件包。 为了便于查看ipvs的代理规则,最好安装一下管理工具ipvsadm。

    # yum install ipset ipvsadm -y

    8、安装docker(之前的帖子已经安装了,在此不做赘述)

    9、安装kubeadm、kubelet、kubectl

    官方安装文档可以参考:
    https://kubernetes.io/docs/setup/independent/install-kubeadm/

    kubelet 在群集中所有节点上运行的核心组件, 用来执行如启动pods和containers等操作。
    kubeadm 引导启动k8s集群的命令行工具,用于初始化 Cluster。
    kubectl 是 Kubernetes 命令行工具。通过 kubectl 可以部署和管理应用,查看各种资源,创建、删除和更新各种组件。

    #配置kubernetes.repo的源,由于官方源国内无法访问,这里使用阿里云yum源
    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

    #在所有节点上安装kubelet、kubeadm 和 kubectl
    yum install -y kubelet kubeadm kubectl
    #安装指定版本
    #yum list --showduplicates kubeadm --disableexcludes=kubernetes

    #启动kubelet服务
    systemctl enable kubelet && systemctl start kubelet

    10、部署master结点。

    Master节点执行初始化:注意这里执行初始化用到了- -image-repository选项,指定初始化需要的镜像源从阿里云镜像仓库拉取。

    kubeadm init --apiserver-advertise-address=192.168.92.56 image-repository registry.aliyuncs.com/google_containers
        --kubernetes-version v1.13.1
        --pod-network-cidr=10.244.0.0/16
    初始化命令说明:



  • 相关阅读:
    容斥原理
    泰勒展开
    初等微积分
    粒子群优化(微粒群算法)
    生成函数
    FFT例题
    图论例题
    线段求交
    期望小小结
    [Violet]天使玩偶/SJY摆棋子
  • 原文地址:https://www.cnblogs.com/maowuyu-xb/p/11889918.html
Copyright © 2011-2022 走看看