• kubeadm部署多节点master集群(一)


    https://blog.csdn.net/liver_life/article/details/81773339

    跟着https://www.jianshu.com/p/dba30d617a3f链接,进行安装。

    一:环境准备

    0.各个机器进行时间校对。

    1.修改各个主机名

    1、方法一使用hostnamectl命令
    [root@xlucas1 ~]# hostnamectl set-hostname xlucas2
     
    2、方法二:修改配置文件 /etc/hostname 保存退出
    [root@xlucas1 ~]# vi /etc/hostname
    xlucas2
    2.利用ssh实现各个机器之间的免密登陆。
    https://blog.csdn.net/yujia_666/article/details/83307968

    3.修改各个机器的hosts文件如下:(各个服务器之间都要进行配置)

    一台机器上修改好,用scp在各个机器之间进行传输:

    4、安装 kubeadm, kubelet 和 kubectl(所有结点都需要安装)

    (1)进到 /etc/yum.repos.d 文件夹 新建kubernetes.repo文件。

     (2)执行:

    [root@node1 ~]# wget https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg

    [root@node1 ~]# rpm --import rpm-package-key.gpg

    [root@node1 ~]# yum -y install kubelet kubeadm kubectl!

     5、配置系统相关参数(这里发现了一个新大陆,由于一共8台机器来回操作太麻烦。因此可以在SecureCRT窗口进行设置,一条命令可以发送至说个窗口,参考https://blog.csdn.net/q283614346/article/details/84900182)

    # 临时禁用selinux
    # 永久关闭 修改/etc/sysconfig/selinux文件设置
    sed -i 's/SELINUX=permissive/SELINUX=disabled/' /etc/sysconfig/selinux
    setenforce 0
     
    # 临时关闭swap
    # 永久关闭 注释/etc/fstab文件里swap相关的行
    swapoff -a
     
    # 开启forward
    # Docker从1.13版本开始调整了默认的防火墙规则
    # 禁用了iptables filter表中FOWARD链
    # 这样会引起Kubernetes集群中跨Node的Pod无法通信
     
    iptables -P FORWARD ACCEPT
     
    # 配置转发相关参数,否则可能会出错
    cat <<EOF >  /etc/sysctl.d/k8s.conf
    net.bridge.bridge-nf-call-ip6tables = 1
    net.bridge.bridge-nf-call-iptables = 1
    vm.swappiness=0
    EOF
    sysctl --system
     
    # 加载ipvs相关内核模块
    # 如果重新开机,需要重新加载
    modprobe ip_vs
    modprobe ip_vs_rr
    modprobe ip_vs_wrr
    modprobe ip_vs_sh
    modprobe nf_conntrack_ipv4
    lsmod | grep ip_vs

    6、配置haproxy代理和keepalived(此处只需要在三个master机器上操作即可)

    # 拉取haproxy镜像
    docker pull haproxy:1.7.8-alpine
    mkdir /etc/haproxy
    cat >/etc/haproxy/haproxy.cfg<<EOF
    global
      log 127.0.0.1 local0 err
      maxconn 50000
      uid 99
      gid 99
      #daemon
      nbproc 1
      pidfile haproxy.pid
     
    defaults
      mode http
      log 127.0.0.1 local0 err
      maxconn 50000
      retries 3
      timeout connect 5s
      timeout client 30s
      timeout server 30s
      timeout check 2s
     
    listen admin_stats
      mode http
      bind 0.0.0.0:1080
      log 127.0.0.1 local0 err
      stats refresh 30s
      stats uri     /haproxy-status
      stats realm   Haproxy Statistics
      stats auth    will:will
      stats hide-version
      stats admin if TRUE
     
    frontend k8s-https
      bind 0.0.0.0:8443
      mode tcp
      #maxconn 50000
      default_backend k8s-https
     
    backend k8s-https
      mode tcp
      balance roundrobin
      server lab1 11.11.11.111:6443 weight 1 maxconn 1000 check inter 2000 rise 2 fall 3
      server lab2 11.11.11.112:6443 weight 1 maxconn 1000 check inter 2000 rise 2 fall 3
      server lab3 11.11.11.113:6443 weight 1 maxconn 1000 check inter 2000 rise 2 fall 3
    EOF
     
    # 启动haproxy
    docker run -d --name my-haproxy
    -v /etc/haproxy:/usr/local/etc/haproxy:ro
    -p 8443:8443
    -p 1080:1080
    --restart always
    haproxy:1.7.8-alpine

    备注(master1的我始终没有成功。)

     # 查看日志

    docker logs my-haproxy
    # 浏览器查看状态
    http://172.16.12.217:1080/haproxy-status
    http://172.16.12.218:1080/haproxy-status
     
    4、拉取keepalived镜像(我这里有点问题)
    docker pull osixia/keepalived:1.4.4
    启动、载入内核。
    lsmod | grep ip_vs
    modprobe ip_vs
    启动keepalived
    搭建集群用到的命令:
    docker run --net=host --cap-add=NET_ADMIN
    -e KEEPALIVED_INTERFACE=eth1 (暂未执行)
    -e KEEPALIVED_VIRTUAL_IPS="#PYTHON2BASH:['172.16.12.217']"
    -e KEEPALIVED_UNICAST_PEERS="#PYTHON2BASH:['172.16.12.217','172.16.12.218','172.16.12.219']"
    -e KEEPALIVED_PASSWORD=hello
    --name k8s-keepalived
    --restart always
    -d osixia/keepalived:1.4.4

    5、配置启动kubelet

    6、配置master结点。
  • 相关阅读:
    挂载磁盘不成功显示mount: /mnt: wrong fs type, bad option, bad superblock..............
    Linux如何查看文件的创建、修改时间?
    Linux,Centos下 Tomcat8 修改jvm内存配置的新方法
    ActiveMQ问题分析和解决
    centos如何删除文件夹
    CentOS 几种重启方式的区别
    CentOS查看文件夹大小
    挂在光盘出现写保护mount: block device /dev/sr0 is writeprotected, mounting readonly
    centos7安装activeMq
    Rust中的workspace
  • 原文地址:https://www.cnblogs.com/maowuyu-xb/p/11864603.html
Copyright © 2020-2023  润新知