我的账户
码尚云教育

云计算企业项目实战营

亲爱的游客,欢迎!

已有账号,请

如尚未注册?

如何快速搭建一个k8s集群

[复制链接]
云客 发表于 2023-9-2 16:45:33 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

  • 准备工作

    • 确保你有至少两台(或更多)干净的Linux服务器。这些服务器将作为K8s的Master和Node节点。
    • 更新系统包并安装必要的工具:
  1. sudo apt-get update && sudo apt-get upgrade
  2. sudo apt-get install -y apt-transport-https ca-certificates curl gnupg lsb-release
复制代码

  • 添加Kubernetes GPG密钥和软件源

    • 对于Ubuntu/Debian系统:
  1. curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
  2. echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list
复制代码


    • 对于RHEL/CentOS系统:
  1. cat <<EOF > /etc/yum.repos.d/kubernetes.repo
  2. [kubernetes]
  3. name=Kubernetes
  4. baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
  5. enabled=1
  6. gpgcheck=1
  7. repo_gpgcheck=1
  8. gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
  9. EOF
复制代码

  • 安装kubelet、kubeadm和kubectl
  1. sudo apt-get update
  2. sudo apt-get install -y kubelet kubeadm kubectl
复制代码

  • 配置主机

    • 关闭防火墙(如果使用的是云服务器,可能需要配置安全组规则而不是关闭防火墙):
  1. sudo systemctl stop firewalld && sudo systemctl disable firewalld
复制代码


    • 关闭SELinux(如果适用):
  1. <pre data-language="bash" id="a9994f6e" class="ne-codeblock language-bash" style="border: 1px solid rgb(232, 232, 232); border-radius: 2px; background: rgb(249, 249, 249); padding: 16px;"><code>sudo setenforce 0
  2. sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config</code></pre><p id="ub99b2355" class="ne-p" style="min-height: 24px;"></p>
复制代码


    • 关闭swap(可选,但推荐):
  1. sudo swapoff -a && sudo sed -i '/swap/d' /etc/fstab
复制代码


    • 同步时间(确保所有节点时间同步):
  1. sudo timedatectl set-ntp true
复制代码

  • 在主节点上执行以下操作

    • 初始化Kubernetes集群:
  1. sudo kubeadm init --pod-network-cidr=10.244.0.0/16
复制代码


    • 配置kubectl(根据输出的提示操作):
  1. mkdir -p $HOME/.kube
  2. sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
  3. sudo chown $(id -u):$(id -g) $HOME/.kube/config
复制代码

  • 安装网络插件(例如Flannel)

    • 使用kubectl应用Flannel的YAML配置:
  1. kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
复制代码

  • 在每个工作节点上执行以下操作

    • 连接到工作节点并运行以下命令加入集群(替换<master-ip>为主节点的IP地址):
  1. sudo kubeadm join <master-ip>:6443 --token <token> --discovery-token-ca-cert-hash <hash>
复制代码


    • 注意:这里的<token>和<hash>值应该从主节点的kubeadm init输出中获取。
  • (可选)安装Kubernetes Dashboard

    • 下载Dashboard YAML文件:
  1. kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.4.0/aio/deploy/recommended.yaml
复制代码


    • 创建管理员角色绑定(如果需要):
  1. kubectl create serviceaccount dashboard-admin -n kube-system
  2. kubectl create clusterrolebinding dashboard-admin-binding --clusterrole=cluster-admin --serviceaccount=kube-system:dashboard-admin
复制代码

  • 验证安装

    • 检查节点状态:
  1. kubectl get nodes
复制代码


    • 如果所有节点都显示为Ready状态,那么你的Kubernetes集群已经成功搭建。



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注我们
码尚云云计算培训

客服电话:18710061913

周一至周日: 7:00-24:00

码尚云教育( 陕ICP备2023009934号-2 )

Powered by Discuz! X3.4© 2016-2023 Comsenz Inc.