安装kubernetes1.17.3多master节点的高可用集群(上)

本文涉及的产品
网络型负载均衡 NLB,每月750个小时 15LCU
传统型负载均衡 CLB,每月750个小时 15LCU
应用型负载均衡 ALB,每月750个小时 15LCU
简介: 安装kubernetes1.17.3多master节点的高可用集群

上一篇我们介绍了kubernetes1.17.3单master节点的集群安装,但是对于生产环境来说,需要对master节点做高可用,这样才可以保证集群能够处于稳定的运行状态,那么我们接下来就开始带领大家去安装k8s1.17.3的高可用集群,如果你是初学小白,只要跟着做,也能保证100%完成安装,下面开始我们的安装之旅吧,内容较多,都是干货,无任何套路~~

如果你觉得累,请看看下面这段话:我们想要去的地方,永远没有捷径,只有脚踏实地,一步一个脚印的才能走向诗和远方!


友情提示:

1.k8s1.16.4,k8s1.17.3,k8s1.18高可用集群的安装视频在百度网盘,可按文章最后的方式加我免费获取


2.下文需要的yaml文件所在的github地址:

    https://github.com/luckylucky421/kubernetes1.17.3/tree/master

    大家可以把我的github仓库fork到你们自己的仓库里,觉得不错的不要忘记在我的github上点star哈~~

     

    3.下文需要的镜像获取方式:

      链接:https://pan.baidu.com/s/1UCldCLnIrDpE5NIoMqvXIg
      提取码:xk3y

      一、准备实验环境

      1.准备四台centos7虚拟机,用来安装k8s集群,下面是四台虚拟机的配置情况

      master1(192.168.124.16)配置:

       

        操作系统:centos7.4、centos7.5、centos7.6以及更高版本都可以
        配置:4核cpu,6G内存,两块60G硬盘
        网络:桥接网络

         

        master2(192.168.124.26)配置:

         

          操作系统:centos7.4、centos7.5、centos7.6以及更高版本都可以
          配置:4核cpu,6G内存,两块60G硬盘
          网络:桥接网络

          master3(192.168.124.36)配置:

           

            操作系统:centos7.4、centos7.5、centos7.6以及更高版本都可以
            配置:4核cpu,6G内存,两块60G硬盘
            网络:桥接网络

             

            node1(192.168.124.56)配置:

             

              操作系统:centos7.6
              配置:4核cpu,4G内存,两块60G硬盘
              网络:桥接网络


              二、初始化实验环境

              1.配置静态ip

              把虚拟机或者物理机配置成静态ip地址,这样机器重新启动后ip地址也不会发生改变。

              1.1 在master1节点配置网络

              修改/etc/sysconfig/network-scripts/ifcfg-ens33文件,变成如下:

                TYPE=Ethernet
                PROXY_METHOD=none
                BROWSER_ONLY=no
                BOOTPROTO=static
                IPADDR=192.168.124.16
                NETMASK=255.255.255.0
                GATEWAY=192.168.124.1
                DNS1=192.168.124.1
                DEFROUTE=yes
                IPV4_FAILURE_FATAL=no
                IPV6INIT=yes
                IPV6_AUTOCONF=yes
                IPV6_DEFROUTE=yes
                IPV6_FAILURE_FATAL=no
                IPV6_ADDR_GEN_MODE=stable-privacy
                NAME=ens33
                DEVICE=ens33
                ONBOOT=yes

                修改配置文件之后需要重启网络服务才能使配置生效,重启网络服务命令如下:

                service network restart

                1.2 在master2节点配置网络

                修改/etc/sysconfig/network-scripts/ifcfg-ens33文件,变成如下:

                  TYPE=Ethernet
                  PROXY_METHOD=none
                  BROWSER_ONLY=no
                  BOOTPROTO=static
                  IPADDR=192.168.124.26
                  NETMASK=255.255.255.0
                  GATEWAY=192.168.124.1
                  DNS1=192.168.124.1
                  DEFROUTE=yes
                  IPV4_FAILURE_FATAL=no
                  IPV6INIT=yes
                  IPV6_AUTOCONF=yes
                  IPV6_DEFROUTE=yes
                  IPV6_FAILURE_FATAL=no
                  IPV6_ADDR_GEN_MODE=stable-privacy
                  NAME=ens33
                  DEVICE=ens33
                  ONBOOT=yes

                  修改配置文件之后需要重启网络服务才能使配置生效,重启网络服务命令如下:

                  service network restart

                  1.3 在master3节点配置网络

                  修改/etc/sysconfig/network-scripts/ifcfg-ens33文件,变成如下:

                    TYPE=Ethernet
                    PROXY_METHOD=none
                    BROWSER_ONLY=no
                    BOOTPROTO=static
                    IPADDR=192.168.124.36
                    NETMASK=255.255.255.0
                    GATEWAY=192.168.124.1
                    DNS1=192.168.124.1
                    DEFROUTE=yes
                    IPV4_FAILURE_FATAL=no
                    IPV6INIT=yes
                    IPV6_AUTOCONF=yes
                    IPV6_DEFROUTE=yes
                    IPV6_FAILURE_FATAL=no
                    IPV6_ADDR_GEN_MODE=stable-privacy
                    NAME=ens33
                    DEVICE=ens33
                    ONBOOT=yes

                    修改配置文件之后需要重启网络服务才能使配置生效,重启网络服务命令如下:

                    service network restart

                    注:ifcfg-ens33文件配置解释:

                    IPADDR=192.168.124.16 #ip地址,需要跟自己电脑所在网段一致
                    NETMASK=255.255.255.0 #子网掩码,需要跟自己电脑所在网段一致
                    GATEWAY=192.168.124.1 #网关,在自己电脑打开cmd,输入ipconfig /all可看到
                    DNS1=192.168.124.1    #DNS,在自己电脑打开cmd,输入ipconfig /all可看到

                    1.4 在node1节点配置网络

                    修改/etc/sysconfig/network-scripts/ifcfg-ens33文件,变成如下:

                      TYPE=Ethernet
                      PROXY_METHOD=none
                      BROWSER_ONLY=no
                      BOOTPROTO=static
                      IPADDR=192.168.124.56
                      NETMASK=255.255.255.0
                      GATEWAY=192.168.124.1
                      DNS1=192.168.124.1
                      DEFROUTE=yes
                      IPV4_FAILURE_FATAL=no
                      IPV6INIT=yes
                      IPV6_AUTOCONF=yes
                      IPV6_DEFROUTE=yes
                      IPV6_FAILURE_FATAL=no
                      IPV6_ADDR_GEN_MODE=stable-privacy
                      NAME=ens33
                      DEVICE=ens33
                      ONBOOT=yes

                      修改配置文件之后需要重启网络服务才能使配置生效,重启网络服务命令如下:

                       service network restart

                      2.安装基础软件包,各个节点操作

                        yum -y install wget net-tools nfs-utilslrzsz gcc gcc-c++ make cmake libxml2-devel openssl-devel curl curl-devel unzipsudo ntp libaio-devel wget vim ncurses-devel autoconf automake zlib-devel  python-devel epel-release openssh-server socat  ipvsadm conntrack ntpdate

                        3.关闭firewalld防火墙,各个节点操作,centos7系统默认使用的是firewalld防火墙,停止firewalld防火墙,并禁用这个服务

                          systemctl stop firewalld  &&systemctl  disable  firewalld

                          4.安装iptables,各个节点操作,如果你用firewalld不是很习惯,可以安装iptables,这个步骤可以不做,根据大家实际需求

                           

                          4.1 安装iptables

                           

                            yum install iptables-services -y

                             

                            4.2 禁用iptables

                             

                              service iptables stop   && systemctl disable iptables

                              5.时间同步,各个节点操作

                               

                              5.1 时间同步

                                ntpdate cn.pool.ntp.org

                                 

                                5.2 编辑计划任务,每小时做一次同步


                                crontab -e* */1 * * * /usr/sbin/ntpdate   cn.pool.ntp.org

                                6. 关闭selinux,各个节点操作

                                 

                                关闭selinux,设置永久关闭,这样重启机器selinux也处于关闭状态

                                 

                                修改/etc/sysconfig/selinux文件

                                 

                                  sed -i 's/SELINUX=enforcing/SELINUX=disabled/'/etc/sysconfig/selinuxsed -i"s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config

                                   

                                  上面文件修改之后,需要重启虚拟机,可以强制重启:

                                   

                                    reboot -f

                                    7.关闭交换分区,各个节点操作

                                      swapoff -a# 永久禁用,打开/etc/fstab注释掉swap那一行。sed -i 's/.*swap.*/#&/' /etc/fstab

                                      8.修改内核参数,各个节点操作

                                        cat <<EOF >  /etc/sysctl.d/k8s.confnet.bridge.bridge-nf-call-ip6tables = 1net.bridge.bridge-nf-call-iptables = 1EOFsysctl --system

                                        9.修改主机名

                                         

                                        在192.168.124.16上:

                                          hostnamectl set-hostname master1

                                          在192.168.124.26上:

                                            hostnamectl set-hostname master2

                                            在192.168.124.36上:

                                              hostnamectl set-hostname master3

                                              在192.168.124.56上:

                                                hostnamectl set-hostname node1

                                                10.配置hosts文件,各个节点操作

                                                在/etc/hosts文件增加如下几行:


                                                  192.168.124.16 master1192.168.124.26 master2192.168.124.36 master3192.168.124.56 node1

                                                  11.配置master1到node无密码登陆,配置master1到master2、master3无密码登陆


                                                  在master1上操作

                                                    ssh-keygen -t rsa

                                                    #一直回车就可以

                                                      ssh-copy-id -i .ssh/id_rsa.pubroot@192.168.124.26

                                                      #上面需要输入密码,输入master2物理机密码即可

                                                        ssh-copy-id -i .ssh/id_rsa.pubroot@192.168.124.36

                                                        #上面需要输入密码,输入master3物理机密码即可

                                                          ssh-copy-id -i .ssh/id_rsa.pubroot@192.168.124.56

                                                          #上面需要输入密码,输入node1物理机密码即可


                                                          三、安装kubernetes1.17.3高可用集群

                                                           

                                                          1.修改yum源,各个节点操作

                                                          (1)备份原来的yum源

                                                            mv /etc/yum.repos.d/CentOS-Base.repo/etc/yum.repos.d/CentOS-Base.repo.backup

                                                            (2)下载阿里的yum源

                                                              wget -O /etc/yum.repos.d/CentOS-Base.repohttp://mirrors.aliyun.com/repo/Centos-7.repo

                                                              (3)生成新的yum缓存

                                                                yum makecache fast

                                                                (4)配置安装k8s需要的yum源

                                                                  cat <<EOF > /etc/yum.repos.d/kubernetes.repo[kubernetes]name=Kubernetesbaseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64enabled=1gpgcheck=0EOF

                                                                  (5)清理yum缓存

                                                                    yum clean all

                                                                    (6)生成新的yum缓存

                                                                      yum makecache fast

                                                                      (7)更新yum源

                                                                        yum -y update

                                                                        (8)安装软件包

                                                                          yum -y install yum-utilsdevice-mapper-persistent-data lvm2

                                                                          (9)添加新的软件源

                                                                            yum-config-manager--add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

                                                                             

                                                                            2.安装docker19.03,各个节点操作

                                                                             

                                                                            2.1 查看支持的docker版本

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

                                                                              2.2 下载19.03.7版本

                                                                                yum install -y docker-ce-19*systemctl enable docker &&systemctl start docker

                                                                                #查看docker状态,如果状态是active(running),说明docker是正常运行状态

                                                                                  systemctl status docker

                                                                                  2.3 修改docker配置文件,配置镜像加速器

                                                                                  cat > /etc/docker/daemon.json <<EOF
                                                                                  {
                                                                                   "exec-opts": ["native.cgroupdriver=systemd"],
                                                                                   "log-driver": "json-file",
                                                                                   "log-opts": {
                                                                                     "max-size": "100m"
                                                                                    },
                                                                                   "storage-driver": "overlay2",
                                                                                   "storage-opts": [
                                                                                     "overlay2.override_kernel_check=true"
                                                                                    ]
                                                                                  }
                                                                                  EOF

                                                                                  2.4 重启docker使配置生效

                                                                                    systemctl daemon-reload && systemctlrestart docker


                                                                                    2.5 设置网桥包经IPTables,core文件生成路径,配置永久生效

                                                                                    echo 1 > /proc/sys/net/bridge/bridge-nf-call-iptables
                                                                                    echo 1 >/proc/sys/net/bridge/bridge-nf-call-ip6tables
                                                                                    echo """
                                                                                    vm.swappiness = 0
                                                                                    net.bridge.bridge-nf-call-iptables = 1
                                                                                    net.ipv4.ip_forward = 1
                                                                                    net.bridge.bridge-nf-call-ip6tables = 1
                                                                                    """ > /etc/sysctl.conf
                                                                                    sysctl -p

                                                                                    2.6 开启ipvs,不开启ipvs将会使用iptables,但是效率低,所以官网推荐需要开通ipvs内核

                                                                                    cat >/etc/sysconfig/modules/ipvs.modules <<EOF
                                                                                    #!/bin/bash
                                                                                    ipvs_modules="ip_vs ip_vs_lc ip_vs_wlcip_vs_rr ip_vs_wrr ip_vs_lblc ip_vs_lblcr ip_vs_dh ip_vs_sh ip_vs_fo ip_vs_nqip_vs_sed ip_vs_ftp nf_conntrack"
                                                                                    for kernel_module in \${ipvs_modules}; do
                                                                                     /sbin/modinfo -F filename \${kernel_module}> /dev/null 2>&1
                                                                                     if [$? -eq 0 ]; then
                                                                                     /sbin/modprobe \${kernel_module}
                                                                                     fi
                                                                                    done
                                                                                    EOF
                                                                                    chmod755 /etc/sysconfig/modules/ipvs.modules && bash/etc/sysconfig/modules/ipvs.modules && modprobe ip_vs && lsmod| grep ip_vs
                                                                                    

                                                                                    3.安装kubernetes1.17.3

                                                                                    3.1 在master1、master2、master3和node1上安装kubeadm和kubelet

                                                                                    yum install kubeadm-1.17.3 kubelet-1.17.3 -y
                                                                                    systemctl enable kubelet

                                                                                    3.2上传镜像到master1、master2、master3和node1节点之后,手动解压镜像,镜像在百度网盘,我的是从官方下载的镜像,大家可以放心使用

                                                                                    docker load -i   kube-apiserver.tar.gz
                                                                                    docker load -i   kube-scheduler.tar.gz
                                                                                    docker load -i   kube-controller-manager.tar.gz
                                                                                    docker load -i   pause.tar.gz
                                                                                    docker load -i   cordns.tar.gz
                                                                                    docker load -i   etcd.tar.gz
                                                                                    docker load -i   kube-proxy.tar.gz
                                                                                    docker load -i   cni.tar.gz
                                                                                    docker load -i   calico-node.tar.gz
                                                                                    docker load -i  kubernetes-dashboard_1_10.tar.gz
                                                                                    docker load -i  metrics-server-amd64_0_3_1.tar.gz
                                                                                    docker load -i  addon.tar.gz

                                                                                    说明:

                                                                                    pause版本是3.1,用到的镜像是k8s.gcr.io/pause:3.1

                                                                                    etcd版本是3.4.3,用到的镜像是k8s.gcr.io/etcd:3.4.3-0        

                                                                                    cordns版本是1.6.5,用到的镜像是k8s.gcr.io/coredns:1.6.5

                                                                                    cni版本是3.5.3,用到的镜像是quay.io/calico/cni:v3.5.3

                                                                                    calico版本是3.5.3,用到的镜像是quay.io/calico/node:v3.5.3        

                                                                                    apiserver、scheduler、controller-manager、kube-proxy版本是1.17.3,用到的镜像分别是

                                                                                    k8s.gcr.io/kube-apiserver:v1.17.3

                                                                                    k8s.gcr.io/kube-controller-manager:v1.17.3

                                                                                    k8s.gcr.io/kube-scheduler:v1.17.3

                                                                                    k8s.gcr.io/kube-proxy:v1.17.3

                                                                                     

                                                                                    kubernetes dashboard版本1.10.1,用到的镜像是k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.1

                                                                                    metrics-server版本0.3.1,用到的镜像是k8s.gcr.io/metrics-server-amd64:v0.3.1      

                                                                                    addon-resizer版本是1.8.4,用到的镜像是k8s.gcr.io/addon-resizer:1.8.4

                                                                                    3.3 部署keepalive+lvs实现master节点高可用-对apiserver做高可用

                                                                                    (1)部署keepalived+lvs,在各master节点操作

                                                                                      yum install -y socat keepalived ipvsadm conntrack

                                                                                      (2)修改master1的keepalived.conf文件,按如下修改

                                                                                      修改/etc/keepalived/keepalived.conf

                                                                                      master1节点修改之后的keepalived.conf如下所示:

                                                                                      global_defs {
                                                                                         router_id LVS_DEVEL
                                                                                      }
                                                                                      vrrp_instance VI_1 {
                                                                                          state BACKUP
                                                                                          nopreempt
                                                                                          interface ens33
                                                                                          virtual_router_id 80
                                                                                          priority 100
                                                                                          advert_int 1
                                                                                          authentication {
                                                                                              auth_type PASS
                                                                                              auth_pass just0kk
                                                                                          }
                                                                                          virtual_ipaddress {
                                                                                              192.168.124.199
                                                                                          }
                                                                                      }
                                                                                      virtual_server 192.168.124.199 6443 {
                                                                                          delay_loop 6
                                                                                          lb_algo loadbalance
                                                                                          lb_kind DR
                                                                                          net_mask 255.255.255.0
                                                                                          persistence_timeout 0
                                                                                          protocol TCP
                                                                                          real_server 192.168.124.16 6443 {
                                                                                              weight 1
                                                                                              SSL_GET {
                                                                                                  url {
                                                                                                    path /healthz
                                                                                                    status_code 200
                                                                                                  }
                                                                                                  connect_timeout 3
                                                                                                  nb_get_retry 3
                                                                                                  delay_before_retry 3
                                                                                              }
                                                                                          }
                                                                                          real_server 192.168.124.26 6443 {
                                                                                              weight 1
                                                                                              SSL_GET {
                                                                                                  url {
                                                                                                    path /healthz
                                                                                                    status_code 200
                                                                                                  }
                                                                                                  connect_timeout 3
                                                                                                  nb_get_retry 3
                                                                                                  delay_before_retry 3
                                                                                              }
                                                                                          }
                                                                                          real_server 192.168.124.36 6443 {
                                                                                              weight 1
                                                                                              SSL_GET {
                                                                                                  url {
                                                                                                    path /healthz
                                                                                                    status_code 200
                                                                                                  }
                                                                                                  connect_timeout 3
                                                                                                  nb_get_retry 3
                                                                                                  delay_before_retry 3
                                                                                              }
                                                                                          }
                                                                                      }
                                                                                      

                                                                                      (3)修改master2的keepalived.conf文件,按如下修改

                                                                                      修改/etc/keepalived/keepalived.conf

                                                                                      master2节点修改之后的keepalived.conf如下所示:

                                                                                      global_defs {
                                                                                         router_id LVS_DEVEL
                                                                                      }
                                                                                      vrrp_instance VI_1 {
                                                                                          state BACKUP
                                                                                          nopreempt
                                                                                          interface ens33
                                                                                          virtual_router_id 80
                                                                                          priority 50
                                                                                          advert_int 1
                                                                                          authentication {
                                                                                              auth_type PASS
                                                                                              auth_pass just0kk
                                                                                          }
                                                                                          virtual_ipaddress {
                                                                                              192.168.124.199
                                                                                          }
                                                                                      }
                                                                                      virtual_server 192.168.124.199 6443 {
                                                                                          delay_loop 6
                                                                                          lb_algo loadbalance
                                                                                          lb_kind DR    net_mask 255.255.255.0
                                                                                          persistence_timeout 0
                                                                                          protocol TCP
                                                                                          real_server 192.168.124.16 6443 {
                                                                                              weight 1
                                                                                              SSL_GET {
                                                                                                  url {
                                                                                                    path /healthz
                                                                                                    status_code 200
                                                                                                  }
                                                                                                  connect_timeout 3
                                                                                                  nb_get_retry 3
                                                                                                  delay_before_retry 3
                                                                                              }
                                                                                          }
                                                                                          real_server 192.168.124.26 6443 {
                                                                                              weight 1
                                                                                              SSL_GET {
                                                                                                  url {
                                                                                                    path /healthz
                                                                                                    status_code 200
                                                                                                  }
                                                                                                  connect_timeout 3
                                                                                                  nb_get_retry 3
                                                                                                  delay_before_retry 3
                                                                                              }
                                                                                          }
                                                                                          real_server 192.168.124.36 6443 {
                                                                                              weight 1
                                                                                              SSL_GET {
                                                                                                  url {
                                                                                                    path /healthz
                                                                                                    status_code 200
                                                                                                  }
                                                                                                  connect_timeout 3
                                                                                                  nb_get_retry 3
                                                                                                  delay_before_retry 3
                                                                                              }
                                                                                          }
                                                                                      }

                                                                                      (4)修改master3的keepalived.conf文件,按如下修改

                                                                                      修改/etc/keepalived/keepalived.conf

                                                                                      master3节点修改之后的keepalived.conf如下所示:

                                                                                      global_defs {
                                                                                         router_id LVS_DEVEL
                                                                                      }
                                                                                      vrrp_instance VI_1 {
                                                                                          state BACKUP
                                                                                          nopreempt
                                                                                          interface ens33
                                                                                          virtual_router_id 80
                                                                                          priority 30
                                                                                          advert_int 1
                                                                                          authentication {
                                                                                              auth_type PASS
                                                                                              auth_pass just0kk
                                                                                          }
                                                                                          virtual_ipaddress {
                                                                                              192.168.124.199
                                                                                          }
                                                                                      }
                                                                                      virtual_server 192.168.124.199 6443 {
                                                                                          delay_loop 6
                                                                                          lb_algo loadbalance
                                                                                          lb_kind DR
                                                                                          net_mask 255.255.255.0
                                                                                          persistence_timeout 0
                                                                                          protocol TCP
                                                                                          real_server 192.168.124.16 6443 {
                                                                                              weight 1
                                                                                              SSL_GET {
                                                                                                  url {
                                                                                                    path /healthz
                                                                                                    status_code 200
                                                                                                  }
                                                                                                  connect_timeout 3
                                                                                                  nb_get_retry 3
                                                                                                  delay_before_retry 3
                                                                                              }
                                                                                          }
                                                                                          real_server 192.168.124.26 6443 {
                                                                                              weight 1
                                                                                              SSL_GET {
                                                                                                  url {
                                                                                                    path /healthz
                                                                                                    status_code 200
                                                                                                  }
                                                                                                  connect_timeout 3
                                                                                                  nb_get_retry 3
                                                                                                  delay_before_retry 3
                                                                                              }
                                                                                          }
                                                                                          real_server 192.168.124.36 6443 {
                                                                                              weight 1
                                                                                              SSL_GET {
                                                                                                  url {
                                                                                                    path /healthz
                                                                                                    status_code 200
                                                                                                  }
                                                                                                  connect_timeout 3
                                                                                                  nb_get_retry 3
                                                                                                  delay_before_retry 3
                                                                                              }
                                                                                          }
                                                                                      }
                                                                                      

                                                                                      重要知识点,必看,否则生产会遇到巨大的坑

                                                                                        keepalive需要配置BACKUP,而且是非抢占模式nopreempt,假设master1宕机,
                                                                                        启动之后vip不会自动漂移到master1,这样可以保证k8s集群始终处于正常状态,
                                                                                        因为假设master1启动,apiserver等组件不会立刻运行,如果vip漂移到master1,
                                                                                        那么整个集群就会挂掉,这就是为什么我们需要配置成非抢占模式了

                                                                                        启动顺序master1->master2->master3,在master1、master2、master3依次执行如下命令

                                                                                          systemctl enable keepalived  && systemctl start keepalived  && systemctl status keepalived


                                                                                          keepalived启动成功之后,在master1上通过ip addr可以看到vip已经绑定到ens33这个网卡上了

                                                                                          2: ens33:<BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UPgroup default qlen 1000
                                                                                             link/ether 00:0c:29:9d:7b:09 brd ff:ff:ff:ff:ff:ff
                                                                                             inet 192.168.124.16/24 brd 192.168.124.255 scope global noprefixrouteens33
                                                                                                valid_lft forever preferred_lft forever
                                                                                             inet 192.168.124.199/32 scopeglobal ens33
                                                                                                valid_lft forever preferred_lft forever
                                                                                             inet6 fe80::e2f9:94cd:c994:34d9/64 scope link tentative noprefixroutedadfailed
                                                                                                valid_lft forever preferred_lft forever
                                                                                             inet6 fe80::ed0d:a5fc:e36a:a563/64 scope link noprefixroute
                                                                                                valid_lft forever preferred_lft forever


                                                                                          相关实践学习
                                                                                          通过Ingress进行灰度发布
                                                                                          本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
                                                                                          容器应用与集群管理
                                                                                          欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
                                                                                          相关文章
                                                                                          |
                                                                                          6天前
                                                                                          |
                                                                                          Kubernetes 容灾 调度
                                                                                          阿里云 ACK 高可用稳定性最佳实践
                                                                                          本文整理自2024云栖大会刘佳旭的演讲,主题为《ACK高可用稳定性最佳实践》。文章探讨了云原生高可用架构的重要性,通过Kubernetes的高可用案例分析,介绍了ACK在单集群高可用架构设计、产品能力和最佳实践方面的方法,包括控制面和数据面的高可用策略、工作负载高可用配置、企业版容器镜像服务高可用配置等内容,旨在帮助企业构建更加可靠和高效的应用运行环境。
                                                                                          |
                                                                                          6天前
                                                                                          |
                                                                                          存储 Kubernetes 关系型数据库
                                                                                          阿里云ACK备份中心,K8s集群业务应用数据的一站式灾备方案
                                                                                          本文源自2024云栖大会苏雅诗的演讲,探讨了K8s集群业务为何需要灾备及其重要性。文中强调了集群与业务高可用配置对稳定性的重要性,并指出人为误操作等风险,建议实施周期性和特定情况下的灾备措施。针对容器化业务,提出了灾备的新特性与需求,包括工作负载为核心、云资源信息的备份,以及有状态应用的数据保护。介绍了ACK推出的备份中心解决方案,支持命名空间、标签、资源类型等维度的备份,并具备存储卷数据保护功能,能够满足GitOps流程企业的特定需求。此外,还详细描述了备份中心的使用流程、控制台展示、灾备难点及解决方案等内容,展示了备份中心如何有效应对K8s集群资源和存储卷数据的灾备挑战。
                                                                                          |
                                                                                          27天前
                                                                                          |
                                                                                          Kubernetes 监控 Cloud Native
                                                                                          Kubernetes集群的高可用性与伸缩性实践
                                                                                          Kubernetes集群的高可用性与伸缩性实践
                                                                                          60 1
                                                                                          |
                                                                                          2月前
                                                                                          |
                                                                                          JSON Kubernetes 容灾
                                                                                          ACK One应用分发上线:高效管理多集群应用
                                                                                          ACK One应用分发上线,主要介绍了新能力的使用场景
                                                                                          |
                                                                                          1月前
                                                                                          |
                                                                                          Kubernetes 关系型数据库 MySQL
                                                                                          Kubernetes入门:搭建高可用微服务架构
                                                                                          【10月更文挑战第25天】在快速发展的云计算时代,微服务架构因其灵活性和可扩展性备受青睐。本文通过一个案例分析,展示了如何使用Kubernetes将传统Java Web应用迁移到Kubernetes平台并改造成微服务架构。通过定义Kubernetes服务、创建MySQL的Deployment/RC、改造Web应用以及部署Web应用,最终实现了高可用的微服务架构。Kubernetes不仅提供了服务发现和负载均衡的能力,还通过各种资源管理工具,提升了系统的可扩展性和容错性。
                                                                                          108 3
                                                                                          |
                                                                                          2月前
                                                                                          |
                                                                                          Kubernetes 持续交付 开发工具
                                                                                          ACK One GitOps:ApplicationSet UI简化多集群GitOps应用管理
                                                                                          ACK One GitOps新发布了多集群应用控制台,支持管理Argo CD ApplicationSet,提升大规模应用和集群的多集群GitOps应用分发管理体验。
                                                                                          |
                                                                                          2月前
                                                                                          |
                                                                                          Kubernetes Ubuntu Linux
                                                                                          Centos7 搭建 kubernetes集群
                                                                                          本文介绍了如何搭建一个三节点的Kubernetes集群,包括一个主节点和两个工作节点。各节点运行CentOS 7系统,最低配置为2核CPU、2GB内存和15GB硬盘。详细步骤包括环境配置、安装Docker、关闭防火墙和SELinux、禁用交换分区、安装kubeadm、kubelet、kubectl,以及初始化Kubernetes集群和安装网络插件Calico或Flannel。
                                                                                          198 4
                                                                                          |
                                                                                          缓存 Kubernetes 数据安全/隐私保护
                                                                                          k8s1.18多master节点高可用集群安装-超详细中文官方文档
                                                                                          k8s1.18多master节点高可用集群安装-超详细中文官方文档
                                                                                          |
                                                                                          7月前
                                                                                          |
                                                                                          Kubernetes 负载均衡 监控
                                                                                          Kubernetes高可用集群二进制部署(一)主机准备和负载均衡器安装
                                                                                          Kubernetes高可用集群二进制部署(一)主机准备和负载均衡器安装
                                                                                          |
                                                                                          Kubernetes Linux 网络安全
                                                                                          k8s1.18高可用集群安装-超详细中文官方文档
                                                                                          k8s1.18高可用集群安装-超详细中文官方文档