VMware虚拟机上轻松搭建K8s集群
虚拟机vmware安装k8s

首页 2025-03-12 13:29:16



在虚拟机VMware上高效安装Kubernetes(K8s)集群:全面指南 在当今的云计算和容器化时代,Kubernetes(K8s)已成为管理容器化应用程序的首选平台

    它提供了自动化部署、扩展和管理容器化应用程序的能力,极大地提高了开发运维(DevOps)团队的效率和生产力

    然而,对于初学者来说,在本地环境中搭建一个K8s集群可能会显得复杂和繁琐

    本文将详细介绍如何在虚拟机VMware上安装Kubernetes集群,帮助您快速上手并享受K8s带来的便利

     一、准备工作 1. 虚拟机VMware安装与配置 首先,确保您已经在计算机上安装了VMware Workstation或VMware Fusion(适用于Mac用户)

    VMware是一款强大的虚拟化软件,允许您在同一台物理机上运行多个操作系统

    以下是VMware安装的基本步骤: - 下载并安装VMware:从VMware官方网站下载适用于您操作系统的版本,并按照安装向导完成安装

     - 创建虚拟机:打开VMware,选择“创建新的虚拟机”,然后根据向导选择操作系统类型、版本以及配置虚拟机资源(如CPU、内存和磁盘空间)

     - 安装操作系统:在虚拟机中安装一个Linux发行版,如Ubuntu Server或CentOS

    这些发行版通常预装了必要的软件包管理工具,便于后续安装K8s组件

     2. 网络配置 在VMware中配置网络,以确保虚拟机能够访问外部网络以及相互通信

    您可以选择桥接模式、NAT模式或仅主机模式,根据具体需求设置

     - 桥接模式:虚拟机将直接连接到物理网络,拥有独立的IP地址

     - NAT模式:虚拟机通过VMware提供的NAT服务访问外部网络,共享主机的IP地址

     - 仅主机模式:虚拟机仅能与主机通信,无法访问外部网络

     对于搭建K8s集群,建议采用桥接模式或NAT模式,以确保节点间的网络通信畅通无阻

     二、安装Docker Kubernetes使用Docker作为容器运行时,因此在搭建K8s集群之前,您需要在每个虚拟机节点上安装Docker

     1. 更新系统并安装依赖项 在每个虚拟机节点上执行以下命令,更新系统并安装必要的依赖项: sudo apt-get update && sudo apt-get upgrade -y 对于Debian/Ubuntu系统 sudo yum update && sudo yum upgrade -y 对于CentOS系统 sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common Debian/Ubuntu sudo yum install -y yum-utils device-mapper-persistent-data lvm2 CentOS 2. 添加Docker的官方GPG密钥并设置Docker的稳定版仓库 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - Debian/Ubuntu sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo CentOS 3. 安装Docker CE sudo apt-get update && sudo apt-get install -y docker-ce Debian/Ubuntu sudo yum install -y docker-ce docker-ce-cli containerd.io CentOS 4. 启动并启用Docker服务 sudo systemctl start docker sudo systemctl enable docker 三、安装kubectl、kubeadm和kubelet kubectl是Kubernetes的命令行工具,用于与K8s集群进行交互;kubeadm是Kubernetes的集群初始化工具;kubelet则是K8s节点上的主要“节点代理”,负责维护和管理该节点上的容器

     1. 禁用swap Kubernetes要求禁用swap以提高系统稳定性

    编辑`/etc/fstab`文件,注释掉包含swap的行,然后执行以下命令禁用swap: sudo swapoff -a 2. 安装必要的软件包并加载kubelet依赖项 sudo apt-get update && sudo apt-get install -y apt-transport-https curl sudo curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add - sudo apt-add-repository deb http://apt.kubernetes.io/ kubernetes-xenial main Debian/Ubuntu 对于CentOS,使用以下命令添加yum仓库 sudo cat [eof>/etc/yum.repos.d/kubernetes.repo 【kubernetes】 name=Kubernetes baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64 enabled=1 gpgcheck=1 repo_gpgcheck=1 gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg EOF 3. 安装kubectl、kubeadm和kubelet sudo apt-get update && sudo apt-get install -y kubelet kubeadm kubectl Debian/Ubuntu sudo yum install -y kubeadm kubelet kubectl --disablerepo=kubernetes-client --enablerepo=kubernetes-client-stable CentOS 4. 配置kubelet的cgroup驱动为systemd(可选,但推荐) 编辑`/etc/default/kubelet`文件(对于Debian/Ubuntu)或`/etc/sysconfig/kubelet`文件(对于CentOS),添加或修改以下行: KUBELET_CGROUP_DRIVER=systemd 然后重启kubelet服务: sudo systemctl restart kubelet 四、初始化Kubernetes Master节点 在选定的Master节点上执行以下命令初始化Kubernetes集群: sudo kubeadm init --pod-network-cidr=192.168.0.0/16 请注意,`--pod-network-cidr`参数用于指定Pod网络的CIDR范围,您可以根据需要调整

    初始化过程将下载Kubernetes的镜像,并配置必要的组件

    完成后,您将看到一条包含`kubeadm join`命令的消息,该命令用于将其他节点加入集群

     1. 配置kubectl以访问集群 执行以下命令,将kubectl配置为访问新创建的Kubernetes集群: mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown$(id -u):$(id -g) $HOME/.kube/config 2. 安装Pod网络插件 Kubernetes需要Pod网络插件来实现跨节点的网络通信

    Flannel是一个简单而有效的选择

    执行以下命令安装Flannel: kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml 五、加入Worker节点 在Wor

nat123映射怎么用?超详细步骤,外网访问内网轻松搞定
nat123域名怎么用?两种方式轻松搞定
nat123怎么用?简单几步实现内网穿透
内网穿透工具对比:nat123、花生壳与轻量新选择
远程访问内网很简单:用对工具,一“箭”穿透
ngrok下载完全指南:从入门到获取客户端
内网远程桌面软件:穿透局域网边界的数字窗口
从外网远程访问内网服务器的完整方案
Windows Server 2008端口转发完全教程:netsh命令添加/查看/删除/重置
为什么三层交换机转发比Linux服务器快?转发表硬件加速的秘密