5分钟快速搭建k8s集群1.29.x

这篇具有很好参考价值的文章主要介绍了5分钟快速搭建k8s集群1.29.x。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

  1. 配置主机名和hosts
    配置主机名
    hostnamectl set-hostname node1
    hostnamectl set-hostname node2
    hostnamectl set-hostname node3

    vim /etc/hosts
    172.19.35.202 node1
    172.19.35.203 node2
    172.19.35.204 node3
    测试
    hostname
    ping -c 3 node2

  2. 配置时间同步

  3. 关闭防火墙

    systemctl disable --now firewalld
    

    这两条命令分别用于停止并禁用防火墙(firewalld)和DNS服务(dnsmasq)。

  4. 关闭并禁用SELinux

    setenforce 0
    sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/sysconfig/selinux
    sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
    

    以上命令会立即将SELinux设置为宽容模式,并在系统配置文件中将SELinux永久禁用。

  5. 关闭并禁用交换分区(swap)

    swapoff -a
    sysctl -w vm.swappiness=0
    sed -ri '/^[^#]*swap/s@^@#@' /etc/fstab
    

    这些命令将立即关闭swap分区,设置系统不使用swap,以及在fstab文件中注释掉所有swap相关的行,防止系统重启时重新启动swap。

  6. 配置软件源为阿里云镜像,并安装必要软件(可选)

    sed -e 's|^mirrorlist=|#mirrorlist=|g' -e 's|^#baseurl=http://dl.rockylinux.org/$contentdir|baseurl=https://mirrors.aliyun.com/rockylinux|g' -i.bak /etc/yum.repos.d/rocky-*.repo
    dnf makecache
    yum install wget jq psmisc vim net-tools telnet yum-utils device-mapper-persistent-data lvm2 git -y
    

    以上命令用于将软件源切换到阿里云镜像,然后安装常用的一些软件工具。

  7. 配置Kubernetes仓库

    cat <<EOF | tee /etc/yum.repos.d/kubernetes.repo
    [kubernetes]
    name=Kubernetes
    baseurl=https://mirrors.aliyun.com/kubernetes-new/core/stable/v1.29/rpm/
    enabled=1
    gpgcheck=1
    gpgkey=https://mirrors.aliyun.com/kubernetes-new/core/stable/v1.29/rpm/repodata/repomd.xml.key
    EOF
    

    设置Kubernetes软件仓库,之后可以通过此仓库安装Kubernetes相关组件。

  8. 安装并配置Containerd运行环境
    这一部分是关于安装和配置 containerd 作为 Kubernetes 的容器运行时环境

    1. 安装 containerd(其实这里docker不需要安装)

       sudo yum remove podman buildah
       sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
       sudo yum makecache
       sudo yum install -y docker-ce docker-ce-cli containerd.io
       sudo systemctl start docker
       sudo systemctl enable docker
      

      这条命令通过 yum 包管理器安装 containerd。-y 参数意味着自动同意所有询问,无需手动确认。

    2. 加载内核模块

      cat <<EOF | sudo tee /etc/modules-load.d/containerd.conf
      overlay
      br_netfilter
      EOF
      sudo modprobe overlay
      sudo modprobe br_netfilter
      
      • 这部分创建了一个配置文件 /etc/modules-load.d/containerd.conf,在系统启动时自动加载 overlaybr_netfilter 这两个内核模块。
      • overlay 模块支持 overlay 文件系统,这是 Docker 和其他容器技术常用的文件系统类型。
      • br_netfilter 模块用于在网络桥接接口上进行包过滤和NAT功能,这对 Kubernetes 网络是必需的。
    3. 设置网络相关的系统参数

      cat <<EOF | sudo tee /etc/sysctl.d/99-kubernetes-cri.conf
      net.bridge.bridge-nf-call-iptables = 1
      net.ipv4.ip_forward = 1
      net.bridge.bridge-nf-call-ip6tables = 1
      EOF
      sudo sysctl --system
      
      • 这些参数配置允许在网络桥接时通过 iptables 对数据包进行处理,以及启用 IP 转发。
      • sysctl --system 用来立即应用这些新的系统参数设置。
    4. 配置 containerd

      sudo mkdir -p /etc/containerd
      containerd config default | sudo tee /etc/containerd/config.toml
      
      • 首先创建 containerd 的配置目录。
      • 然后通过 containerd config default 生成默认的配置,并保存到 /etc/containerd/config.toml 文件中。
    5. 修改 containerd 的配置

      sed -i 's#SystemdCgroup = false#SystemdCgroup = true#g' /etc/containerd/config.toml
      sed -i 's#k8s.gcr.io/pause#registry.cn-hangzhou.aliyuncs.com/google_containers/pause#g' /etc/containerd/config.toml
      sed -i 's#registry.gcr.io/pause#registry.cn-hangzhou.aliyuncs.com/google_containers/pause#g' /etc/containerd/config.toml
      sed -i 's#registry.k8s.io/pause#registry.cn-hangzhou.aliyuncs.com/google_containers/pause#g' /etc/containerd/config.toml
      
      • 修改配置使用 SystemdCgroup = true,这确保 containerd 使用 systemd 管理 cgroup,有助于与 systemd 更好的集成。
      • 替换镜像源地址,将默认的 Kubernetes 镜像源改为阿里云提供的镜像源,这可以提高在中国大陆的访问速度和稳定性。
    6. 启动并使 containerd 自启动

      systemctl daemon-reload
      systemctl enable --now containerd
      
      • daemon-reload 命令让 systemd 重新加载配置文件,包括新安装的服务。
      • enable --now containerd 将 containerd 服务设置为开机自启,并立即启动服务。

    这些步骤共同配置了 containerd 作为 Kubernetes 集群的容器运行时环境,确保了其与系统参数和 Kubernetes 的兼容性,同时优化了网络和镜像源设置以提高效率和响应速度。

  9. 安装Kubernetes组件并初始化集群

    1. 安装 Kubernetes 组件

      yum install kubeadm-1.29.* kubelet-1.29.* kubectl-1.29.* -y
      
      • 使用 yum 安装 kubeadm, kubelet, 和 kubectl。这些组件分别用于初始化 Kubernetes 集群、运行集群的节点、和与集群交互。
      • 版本 1.29.* 确保安装的是特定版本的 Kubernetes。
      • -y 参数自动确认安装过程中的询问。
    2. 启动并设置 kubelet 自启动

      systemctl enable --now kubelet
      
      • kubelet 是在每个节点上运行的核心组件,负责维护容器的生命周期。
      • 此命令使 kubelet 在启动时自动运行。
    3. 预拉取 Kubernetes 集群所需的镜像

      kubeadm config images pull --image-repository registry.cn-hangzhou.aliyuncs.com/google_containers --kubernetes-version 1.29.4
      
      • 使用 kubeadmimages pull 命令从指定的镜像仓库预先拉取 Kubernetes 运行所需的所有容器镜像。
      • 这里使用的是阿里云的镜像仓库,以提高在中国区的下载速度和稳定性。
    4. 初始化 Kubernetes 集群

      kubeadm init --apiserver-advertise-address 10.0.3.233 --image-repository registry.cn-hangzhou.aliyuncs.com/google_containers --cri-socket "unix:///var/run/containerd/containerd.sock" --kubernetes-version 1.29.4
      
      • kubeadm init 是用于初始化集群的主命令。
      • --apiserver-advertise-address 指定 API 服务器将广播到其他集群成员的 IP 地址。
      • --image-repository 为 Kubernetes 集群使用的容器镜像仓库地址。
      • --cri-socket 指定容器运行时的接口,这里使用的是 containerd。
      • --kubernetes-version 指定了安装的 Kubernetes 版本。
    5. 将节点加入到 Kubernetes 集群文章来源地址https://www.toymoban.com/news/detail-860497.html

      kubeadm join 10.0.3.233:6443 --token cg0bkg.w83qlih44rjby2jk --discovery-token-ca-cert-hash sha256:4efd525d2708c60bd450b0bd3f22a850283738f49b23e04334301a4ca07a1a8f
      
      • 使用 kubeadm join 将其他节点加入到已初始化的 Kubernetes 集群。
      • --token 是用于节点身份验证的安全令牌,保证只有拥有令牌的节点可以加入集群。
      • --discovery-token-ca-cert-hash 是 CA 证书的哈希值,用于节点加入时验证 API 服务器的证书,增强安全性。

到了这里,关于5分钟快速搭建k8s集群1.29.x的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 快速搭建Kubernetes (K8S)平台

    kubernetes是Google 2014年创建并管理,是Google 10多年大规模容器管理技术Borg的开源版本。它是容器集群管理系统,是一个开源的平台,可以实现容器集群的自动化部署、自动扩缩容、维护等功能。 通过Kubernetes你可以:     快速部署应用     快速扩展应用     无缝对接新

    2024年02月02日
    浏览(28)
  • kubernetes(K8S)学习(一):K8S集群搭建(1 master 2 worker)

    kubernetes官网 :https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/#installing-kubeadm-kubelet-and-kubectl GitHub :https://github.com/kubernetes/kubeadm 本文 :使用kubeadm搭建一个3台机器组成的k8s集群,1台master节点,2台worker节点。 由于k8s安装较麻烦,为防止出现其他异常,特此

    2024年04月09日
    浏览(38)
  • 二进制搭建 Kubernetes与k8s集群搭建(一)

    目录 二进制搭建 Kubernetes v1.20     操作系统初始化配置 部署 docker引擎 部署 etcd 集群 准备签发证书环境 在 master01 节点上操作      生成Etcd证书 在 node01 节点上操作 在 node02 节点上操作 部署 Master 组件 在 master01 节点上操作 部署 Worker Node 组件 在所有 node 节点上操作 在 mas

    2024年02月06日
    浏览(40)
  • Linux搭建 Kubernetes(K8S)集群详情教程

    当搭建 Kubernetes 集群时,涉及的详细步骤可能较多,以下是详细的 Kubernetes 单节点集群搭建步骤: 步骤 1: 准备工作 确保满足以下基本要求: 一台运行 Ubuntu 18.04 或更高版本的机器。 2 GB 或更多内存。 2 个 CPU 核心或更多。 安装了 Docker。 步骤 2: 安装 Docker 步骤 3: 安装 kubea

    2024年01月17日
    浏览(36)
  • 【k8s系列】使用MicroK8s 5分钟搭建k8s集群含踩坑经验

    MicroK8s 是一个经过 CNCF 认证的轻量级的 Kubernetes开源部署工具,用于自动化部署、扩展和管理容器化应用程序。它在一个小的占用空间中提供了核心 Kubernetes 组件的功能,使其可以从单个节点扩展到高可用性生产集群。MicroK8s 是一个单一的软件包,使开发人员能够在 60 秒内获

    2024年02月06日
    浏览(28)
  • Kubernetes(K8s)使用 kubeadm 方式搭建多 master 高可用 K8s 集群

    本篇主要针对上篇文章的单 master 节点的 K8s 集群上搭建多 master 节点集群 和 LB 负载均衡服务器。 Kubernetes(K8S)集群搭建基础入门教程 虚拟机 IP 地址: IP 操作系统 主机名称 192.168.2.121 centos7.9 k8s-master01 192.168.2.124 centos7.9 k8s-master02 192.168.2.125 centos7.9 k8s-node01 192.168.2.126 centos

    2023年04月26日
    浏览(38)
  • 使用containerd从0搭建k8s(kubernetes)集群

    准备两台服务器节点,如果需要安装虚拟机,可以参考《wmware和centos安装过程》 机器名 IP 角色 CPU 内存 centos01 192.168.109.130 master 4核 2G centos02 192.168.109.131 node 4核 2G 设置主机名,所有节点都执行 关闭防火墙,所有节点都执行 关闭swap内存,所有节点都执行 配置网桥,所有节点

    2024年02月08日
    浏览(40)
  • 【kubernetes】k8s高可用集群搭建(三主三从)

    目录 【kubernetes】k8s高可用集群搭建(三主三从) 一、服务器设置 二、环境配置 1、关闭防火墙 2、关闭selinux 3、关闭swap 4、修改主机名(根据主机角色不同,做相应修改) 5、主机名映射 6、将桥接的IPv4流量传递到iptables的链 7、时间同步 8、master之间进行免密登录设置 三、

    2024年02月09日
    浏览(29)
  • k8s简介及虚拟机快速搭建k8s集群

    1.1、部署方式的变迁 传统部署时代: 在物理服务器上运行应用程序 无法为应用程序定义资源边界 导致资源分配问题 例如,如果在物理服务器上运行多个应用程序,则可能会出现一个应用程序占用大部分资源的情况, 结果可能导致其他应用程序的性能下降。 一种解决方案是

    2024年02月12日
    浏览(34)
  • Kubernetes(K8S)快速搭建typecho个人博客

    Kubernetes(K8S)快速搭建typecho个人博客 K8S集群环境,搭建教程参考腾讯云Lighthouse组建跨地域Kubernetes集群 K8S集群面板,搭建教程参考Kubernetes集群管理面板的安装及使用 - 青阳のblog-一个计算机爱好者的个人博客 (hipyt.cn) 如果没有集群或者服务器不够可以通过传送门新购。 腾讯

    2024年02月04日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包