K8S本地开发环境-minikube安装部署及实践

2024-01-03 15:04

本文主要是介绍K8S本地开发环境-minikube安装部署及实践,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

引言

 在上一篇介绍了k8s的入门和实战,本章就来介绍一下在windows环境如何使用minikube搭建K8s集群,好了废话不多说,下面就和我一起了解Minikube吧。

什么是Minikube?

Minikube 是一种轻量级的 Kubernetes 实现,可在本地计算机上创建 VM 并部署仅包含一个节点的简单集群。 Minikube 可用于 Linux , macOS 和 Windows 系统。Minikube CLI 提供了用于引导集群工作的多种操作,包括启动、停止、查看状态和删除。

Minikube一般用于本地开发、测试和学习

 官网:https://minikube.sigs.k8s.io/docs/

Minikube 安装

 注意:在windows环境下如果想要使用Minikube,需要先安装Docker Desktop,安装参考这篇:windows10/11安装和使用docker-CSDN博客

配置要求

  • 2 个或更多 CPU
  • 2GB 可用内存
  • 20GB 可用磁盘空间
  • 网络连接
  • 容器或虚拟机管理器,例如:Docker、QEMU、Hyperkit、Hyper-V、KVM、Parallels、Podman、VirtualBox或VMware Fusion/Workstation

安装步骤

安装步骤就不在这里赘述了,请按照官方文档minikube start | minikube进行操作,里面有windows和Linux的安装方式,大家可以根据自己的环境选择来安装,我这里用的是win11。

Minikube 实战

 注意:在windows环境下如果想要使用Minikube,需要先安装docker,docker安装参考这篇:windows10/11安装和使用docker-CSDN博客

启动 Minikube

以管理员方式运行PowerShell,执行命令启动 Minikube:

minikube start

下载初始化过程可能会比较慢,请耐心等待 

执行命令后等待docker拉取镜像,最终成功页面显示如下 如果发现启不来,报错如下,这是因为拉取不到合适的k8s镜像

 参考这篇:K8S 部署 SpringBoot 项目(一篇够用)_k8s部署springboot-CSDN博客

验证集群状态

等待 Minikube 启动完成后,执行以下命令验证集群状态:

kubectl cluster-info
kubectl get nodes

会看到如下输出

使用 Kubectl 

现在可以使用 kubectl 命令行工具管理 Minikube 上的 Kubernetes 集群。

kubectl get pods --all-namespaces

开启控制台

minikube dashboard

启动成功会自动打开浏览器进入k8s控制面板,可以看到部署的信息 

执行命令查看所有Pod

kubectl get pods -ALL

部署nginx示例

创建一个nignx-deployment.yml

apiVersion: apps/v1
kind: Deployment
metadata:name: nginx-deployment
spec:replicas: 3selector:matchLabels:app: nginxtemplate:metadata:labels:app: nginxspec:containers:- name: nginx-containerimage: nginx:latestports:- containerPort: 80
---
apiVersion: v1
kind: Service
metadata:name: nginx-service
spec:type: NodePort # 这里可以根据需求选择其他Service类型selector:app: nginxports:- protocol: TCPport: 80targetPort: 80nodePort: 30208

然后在文件目录打开CMD命令窗口执行

kubectl apply -f .

在执行kubectl get pods -A 查看nginx的部署情况 

也可以在dashboard查看

 然后执行下面命令,就可以再浏览器访问nginx了

minikube  service  nginx-service

 

至此,在windows上搭建k8s集群就完成,小伙伴们可以在本地进行开发和部署测试了,如果搭建过程中有遇到什么问题,也欢迎在评论区或者私信交流。

这篇关于K8S本地开发环境-minikube安装部署及实践的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/566087

相关文章

mac安装nvm(node.js)多版本管理实践步骤

《mac安装nvm(node.js)多版本管理实践步骤》:本文主要介绍mac安装nvm(node.js)多版本管理的相关资料,NVM是一个用于管理多个Node.js版本的命令行工具,它允许开发者在... 目录NVM功能简介MAC安装实践一、下载nvm二、安装nvm三、安装node.js总结NVM功能简介N

Docker部署Jenkins持续集成(CI)工具的实现

《Docker部署Jenkins持续集成(CI)工具的实现》Jenkins是一个流行的开源自动化工具,广泛应用于持续集成(CI)和持续交付(CD)的环境中,本文介绍了使用Docker部署Jenkins... 目录前言一、准备工作二、设置变量和目录结构三、配置 docker 权限和网络四、启动 Jenkins

Android开发中gradle下载缓慢的问题级解决方法

《Android开发中gradle下载缓慢的问题级解决方法》本文介绍了解决Android开发中Gradle下载缓慢问题的几种方法,本文给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧... 目录一、网络环境优化二、Gradle版本与配置优化三、其他优化措施针对android开发中Gradle下载缓慢的问

Spring Boot 3 整合 Spring Cloud Gateway实践过程

《SpringBoot3整合SpringCloudGateway实践过程》本文介绍了如何使用SpringCloudAlibaba2023.0.0.0版本构建一个微服务网关,包括统一路由、限... 目录引子为什么需要微服务网关实践1.统一路由2.限流防刷3.登录鉴权小结引子当前微服务架构已成为中大型系统的标

python安装whl包并解决依赖关系的实现

《python安装whl包并解决依赖关系的实现》本文主要介绍了python安装whl包并解决依赖关系的实现,文中通过图文示例介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录一、什么是whl文件?二、我们为什么需要使用whl文件来安装python库?三、我们应该去哪儿下

MySQL安装时initializing database失败的问题解决

《MySQL安装时initializingdatabase失败的问题解决》本文主要介绍了MySQL安装时initializingdatabase失败的问题解决,文中通过图文介绍的非常详细,对大家的学... 目录问题页面:解决方法:问题页面:解决方法:1.勾选红框中的选项:2.将下图红框中全部改为英

MySQL9.0默认路径安装下重置root密码

《MySQL9.0默认路径安装下重置root密码》本文主要介绍了MySQL9.0默认路径安装下重置root密码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们... 目录问题描述环境描述解决方法正常模式下修改密码报错原因问题描述mysqlChina编程采用默认安装路径,

使用Go语言开发一个命令行文件管理工具

《使用Go语言开发一个命令行文件管理工具》这篇文章主要为大家详细介绍了如何使用Go语言开发一款命令行文件管理工具,支持批量重命名,删除,创建,移动文件,需要的小伙伴可以了解下... 目录一、工具功能一览二、核心代码解析1. 主程序结构2. 批量重命名3. 批量删除4. 创建文件/目录5. 批量移动三、如何安

SpringBoot中整合RabbitMQ(测试+部署上线最新完整)的过程

《SpringBoot中整合RabbitMQ(测试+部署上线最新完整)的过程》本文详细介绍了如何在虚拟机和宝塔面板中安装RabbitMQ,并使用Java代码实现消息的发送和接收,通过异步通讯,可以优化... 目录一、RabbitMQ安装二、启动RabbitMQ三、javascript编写Java代码1、引入

Python使用国内镜像加速pip安装的方法讲解

《Python使用国内镜像加速pip安装的方法讲解》在Python开发中,pip是一个非常重要的工具,用于安装和管理Python的第三方库,然而,在国内使用pip安装依赖时,往往会因为网络问题而导致速... 目录一、pip 工具简介1. 什么是 pip?2. 什么是 -i 参数?二、国内镜像源的选择三、如何