入门Kubernetes-minikube本地k8s环境

前言:

 在上一篇 结尾中使用到了minikube方式来做k8s本地环境来学习k8s。 

 那么这篇先了解下minikube及使用

一、Minikube 简介

  minikube 在 macOS、Linux 和 Windows 上实现了本地 Kubernetes 集群。minikube 的主要目标是成为本地 Kubernetes 应用程序开发的最佳工具,并支持所有适合的 Kubernetes 功能。

 环境准备:

  • 2 个或更多 CPU
  • 2GB 可用内存
  • 20GB 可用磁盘空间
  • 网络连接
  • 容器或虚拟机管理器,例如:DockerHyper-V

 为什么使用minikube

  • 实际开发和体验 Kubernetes时,可能会遇到网络访问的原因或者其他的坑导致无法使用Kubernetes进行实验
  • Minikube更加轻量化,比Docker Desktop开销更小

 minikube流程

  入门Kubernetes-minikube本地k8s环境

 本次部署将采用Docker来实现minikube的部署使用,需要先准备好Docker环境

二、Minikube 安装及使用

 1、获取安装包:minikube支持多平台,本次操作是在window下安装,直接获取minikube安装包即可:

  入门Kubernetes-minikube本地k8s环境 

  获取安装包后运行一直下一步即可。

 2、minikube安装成功后,进入命令行:启动k8s集群

//指定 2个节点:由于本机已使用了docker做驱动器,本次使用hpyerv作为驱动
minikube start -n 2 --driver=docker --image-mirror-country=cn 

   常用参数:

  • --driver=‘‘: 驱动为: virtualbox, vmwarefusion, hyperv, vmware, docker 其中一个
  • -n,--node:节点数量
  • --image-mirror-country=‘‘:需要使用的镜像镜像的国家/地区代码。留空以使用全球代码。对于*用户,请将其设置为cn。
  • --registry-mirror=[]: 传递给 Docker 守护进程的注册表镜像(镜像加速)
  • --cpus=2: CUP数量
  • --memory=‘‘: 为 Kubernetes 分配的 RAM 容量(格式:<数字>[<单位>],其中单位 = b、k、m 或g)

  启动如下:

  入门Kubernetes-minikube本地k8s环境

   入门Kubernetes-minikube本地k8s环境

 3、minikube 常用命令:

  a)打开Kubernetes控制台:

//打开控制台页面
minikube dashboard

   查看两个运行节点:

   入门Kubernetes-minikube本地k8s环境

   b)登录kubernetes环境:

//登录环境
minikube ssh

//进入后获取当前运行的镜像:
docker ps

  c)查看配置文件内容

kubectl config view

  d)service转发:

//命令格式:minikube service service名称
minikube service k8s-service  

  e)其他命令查看帮助:

Basic Commands:
  start          启动本地Kubernetes集群
  status         获取本地Kubernetes集群状态
  stop           停止本地Kubernetes集群
  delete         删除本地Kubernetes集群
  dashboard      访问minikube集群中运行的仪表盘
  pause          暂停Kubernetes
  unpause        恢复 Kubernetes

Images Commands:
  docker-env     配置环境以使用 minikubes Docker daemon
  podman-env     配置环境以使用 minikubes Podman service
  cache          在minikube中添加、删除或推送本地镜像
  image          管理镜像

Configuration and Management Commands:
  addons         启用或禁用加载项
  config         修改持久配置值
  profile        获取当前集群配置文件
  update-context 更新kubeconfig

Networking and Connectivity Commands:
  service        连接到service
  tunnel         连接到 LoadBalancer 服务

Advanced Commands:
  mount          将指定的目录挂载到 minikube
  ssh            登录minikube环境
  kubectl        运行与集群版本匹配的kubectl二进制文件
  node           节点相关操作
  cp             拷贝指定文件到minikube

Troubleshooting Commands:
  ssh-key        检索指定节点的ssh标识密钥路径
  ssh-host       检索指定节点的ssh主机密钥
  ip             检索指定节点的IP地址
  logs           Returns logs to debug a local Kubernetes cluster
  update-check   打印当前和最新版本版本
  version        打印 minikube 版本

 4、部署应用:

  按照前面文章中内容进行部署。

 

总结:

 minikube相对于直接使用docker-desktop更加简单方便,并且可以实现多节点集群效果。对于开发、学习人员来说还是比较方便。下一步将对Ingress资源进行了解 

参考

 minikube官网   

入门Kubernetes-minikube本地k8s环境

上一篇:nodejs中事件循环机制与面试题详解


下一篇:阿里面试题——如何实现微信“附近的人”功能?