Minikube部署K8S集群

使用Minikube部署K8S集群

和Kind一样, Minikube是Kubernetes官方提供的专门针对本地单节点的Kubernetes集群管理工具。针对本地环境对Kubernetes使用有一定的简化和针对性的补强。供希望尝试Kubernetes或日常开发的用户测试使用。特点是不能启动生产集群,没有高可用性的单节点机器。

 #linux上安装k8s
 curl -Lo minikube https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/
 
 #安装kubectl
 curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl && chmod +x kubectl && sudo mv kubectl /usr/local/bin/
 
 #启动k8s集群
 minikube start --registry-mirror=https://registry.docker-cn.com \
  --image-mirror-country=cn \
  --image-repository=registry.cn-hangzhou.aliyuncs.com/google_containers \
  --vm-driver=hyperv \
  --memory=4096

vm-drvier参数是指: Minikube 所采用的虚拟机,根据不同操作系统,不同的虚拟机可以有以下选项:

操作系统

支持虚拟机

参数值

Windows

Hyper-V

hyperv

Windows

VirtualBox

virtualbox

Linux

KVM

kvm2

Linux

VirtualBox

virtualbox

MacOS

HyperKit

hyperkit

MacOS

VirtualBox

virtualbox

MacOS

Parallels Desktop

parallels

MacOS

VMware Fusion

vmware

 #常用命令
 minkkube stop #停止minikube
 minikube dashboard #启动dashboard
 minikube addons list #组件列表
 minikube addons enable ingress #启动ingress
 minikube addons enable metrics-server
 minikube addons disable ingress #禁用ingress
 minikube cache add alpine:latest #推送镜像到minikube服务器
 minikube cache reload #重新加载镜像
 minikube cache list #镜像列表
 minikube cache delete <image name> #删除镜像
 minikube start --kubernetes-version=latest #升级最新版
 minikube delete --all#删除集群

使用kind部署k8s

kind即Kubernetes In Docker,将k8s所需要的所有组件,全部部署在了一个docker容器中,是一套开箱即用的k8s环境搭建方案,可以让我们快速的搭建k8s测试平台。

它将每个容器模拟成一个k8s节点,可以轻松地在单节点上部署"多节点"集群,甚至"高可用集群",而且还可以部署和管理多个版本集群。在搭建个人学习平台时,如果要搭建一个多控多计算的集群,个人电脑很难有这么高的资源配置,使用kind来部署集群就很有必要了。

 #linux安装
 curl -Lo kind https://github.com/kubernetes-sigs/kind/releases/download/v0.20.0/kind-linux-amd64
 chmod +x ./kind && mv ./kind /usr/local/bin/kind
 
 #查看Kind版本信息
 kind version
 
 #创建集群
 kind create cluster #如果不指定名字则默认为kind --name kind-2
 Creating cluster "kind" ...
  Ensuring node image (kindest/node:v1.27.3)  

搭建多节点集群

如果期望通过Kind搭建多节点集群,可以通过配置文件实现。下面是创建一个包含2个控制平面节点、3个工作节点的K8s集群的配置文件。

 #Kind创建K8s集群 配置文件
 
 kind: Cluster
 apiVersion: kind.x-k8s.io/v1alpha4
 
 nodes: #该集群包含2个控制平面节点、3个工作节点
 - role: control-plane   #设置端口映射, 便于通过宿主机访问节点
   extraPortMappings:
   - containerPort: 80
     hostPort: 8880
     listenAddress: "127.0.0.1"
   - containerPort: 443
     hostPort: 8443
     listenAddress: "127.0.0.1"
 - role: control-plane   #设置端口映射, 便于通过宿主机访问节点
   extraPortMappings:
   - containerPort: 80
     hostPort: 9980
     listenAddress: "127.0.0.1"
   - containerPort: 443
     hostPort: 9443
     listenAddress: "127.0.0.1"
 - role: worker
 - role: worker
 - role: worker
 
 #然后创建集群
 kind create cluster --name k8s-cluster --config k8s-cluster-3.yam
 kind get clusters #查看集群
 kind delete cluster #删除集群
 kind delete clusters –all #删除所有集群
原文链接:,转发请注明来源!