Minikube本地搭建单节点Kubernetes集群

1、什么是 Minikube

        Minikube 是一个开源工具,旨在为开发者提供一种便捷的方式在本地环境中搭建单节点的 Kubernetes 集群。它主要用于开发、测试和学习 Kubernetes 应用程序,无需依赖大型的硬件资源或复杂的多节点集群配置。minikube 使用轻量级虚拟化技术(如 VirtualBox、Docker、KVM、Hyper-V 等)在用户的本地机器上启动一个独立的虚拟机,然后在这个虚拟机内部署一个完整的 Kubernetes 控制平面以及一个节点。主要特点包括:

  • 轻量化:只需少量本地资源即可运行,使得开发者可以在个人笔记本电脑上快速启动一个功能完备的Kubernetes集群。
  • 跨平台:支持多种操作系统(如 Windows、macOS、Linux)和虚拟化技术,可根据用户环境灵活选择。
  • 简单易用:通过命令行界面提供易于理解的操作指令,如启动、停止、删除集群,以及附加功能如挂载宿主机目录、设置内存限制等。
  • 实验特性支持:允许启用Kubernetes的实验性功能,方便开发者提前试用新特性或特定版本。

        使用 Minikube,开发者可以:

  • 快速迭代和调试 Kubernetes YAML 文件。
  • 测试 Kubernetes 应用部署、服务发现、配置更新等基本操作。
  • 在接近生产环境的条件下验证 Helm charts 或 Operators。
  • 学习和掌握 Kubernetes 基础概念和操作流程。

 2、安装 Minikube

         这里为Mac m1系统,其他系统环境可参考Minikube官方文档:

#下载二进制包
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-darwin-arm64#安装
sudo install minikube-darwin-arm64 /usr/local/bin/minikube#启动集群
minikube start

        启动成功如下:

#下载kubectl(也可单独安装 参考:https://kubernetes.io/zh-cn/docs/tasks/tools/)
minikube kubectl -- get po -A#设置命令别名 为了方便
alias kubectl="minikube kubectl --"#与集群交互
kubectl get po -A#启动Kubernetes仪表盘
minikube dashboard

        仪表盘如下:

3、部署应用程序

  •  创建示例部署并将其公开在端口 8082 上:
kubectl create deployment hello-minikube --image=kicbase/echo-server:1.0kubectl expose deployment hello-minikube --type=NodePort --port=8082
  • 查看部署的服务:
kubectl get services hello-minikube

 4、管理集群

#暂停Kubernetes而不影响已部署的应用程序
minikube pause#取消暂停的实例
minikube unpause#停止集群
minikube stop#更改默认内存限制(需要重新启动)
minikube config set memory 9001#浏览易于安装的 Kubernetes 服务目录
minikube addons list#创建运行旧 Kubernetes 版本的第二个集群
minikube start -p aged --kubernetes-version=v1.16.1#删除所有 minikube 集群
minikube delete --all

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/595910.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ES10 学习

文章目录 1. Object.fromEntries()2. trimStart() 和 trimEnd()3. 数组的flat() 和flatMap()4. Symbol 对象的description 属性5. try ... catch(e){} 1. Object.fromEntries() Object.fromEntries() 方法允许你轻松地将键 值对列表转换为对象 let arr [["name",&qu…

深入浅出 -- 系统架构之负载均衡Nginx反向代理

一、Nginx反向代理-负载均衡 首先通过SpringBootFreemarker快速搭建一个WEB项目:springboot-web-nginx,然后在该项目中,创建一个IndexNginxController.java文件,逻辑如下: Controller public class IndexNginxControl…

基于Unet的BraTS 3d 脑肿瘤医学图像分割,从nii.gz文件中切分出2D图片数据

1、前言 3D图像分割一直是医疗领域的难题,在这方面nnunet已经成为了标杆,不过nnunet教程较少,本人之前跑了好久,一直目录报错、格式报错,反正哪里都是报错等等。并且,nnunet对于硬件的要求很高&#xff0c…

dcm文件数据学习

simpleITK读取数据 import SimpleITK as sitk import numpy as np import matplotlib.pyplot as plt base_path "/Users/yxk/Desktop/test/" image sitk.ReadImage(base_path"000000.dcm") # type(image) <class SimpleITK.SimpleITK.Image> imag…

leetcode代码记录(两个数组的交集

目录 1. 题目&#xff1a;2. 我的代码&#xff1a;小结&#xff1a; 1. 题目&#xff1a; 给定两个数组 nums1 和 nums2 &#xff0c;返回 它们的 交集 。输出结果中的每个元素一定是 唯一 的。我们可以 不考虑输出结果的顺序 。 示例 1&#xff1a; 输入&#xff1a;nums1 […

手工瑞士卷的自然美味,口感松软滋味甜蜜

我很喜欢吃各种甜点&#xff0c;最近我尝试了JIAN趣品牌的手工瑞士卷。很多朋友为了获得更新鲜的点心&#xff0c;一般都会选择线下店&#xff0c;因为JIAN趣支持顺丰保温箱发货&#xff0c;保证了瑞士卷在运输过程中的新鲜度和口感&#xff0c;所以入手会更加方便一些&#xf…

windows 系统下 mysql 数据库的下载与安装(包括升级安装)

windows 系统下 mysql 数据库的下载与安装&#xff08;包括升级安装&#xff09; 一、mysql 介绍&#xff1a; MySQL 是一个关系型数据库管理系统&#xff0c;由瑞典 MySQL AB 公司开发&#xff0c;属于 Oracle 旗下产品。 MySQL 是最流行的关系型数据库管理系统之一&#xf…

Kubernetes学习笔记7

使用kubeadm部署Kubernetes集群方法 使用kubernetes部署单节点Master节点K8s集群。 在实际生产环境中&#xff0c;是不允许单master节点的&#xff0c;如果单master节点不可用的话&#xff0c;当导致我们的K8s集群无法访问。 可以使用kubeadm将单master节点升级为多master节点…

java网络编程——网络编程概述及UDP/TCP通信编程的实现

前言&#xff1a; 学习到通信了&#xff0c;整理下相关知识点。打好基础&#xff0c;daydayup!!! 网络编程 网络编程指可以让设备中的程序与网络上其他设备中的程序进行数据交互。 基本的通信架构 基本的通信架构有两种形式&#xff1a;CS架构&#xff08;Client客户端/Server服…

LabVIEW深度学习

目录 一、配置环境1.1、显卡选择1.2、下载显卡驱动1.3、下载并安装Anaconda1.4、配置Anaconda软件包下载服务器1.5、配置虚拟环境tf_gpu1.6、安装vscode1.7、安装tensorflow1.8、下载安装Git1.9、安装TensorFlow Object Detection API框架1.10、安装依赖的python软件包1.11、配…

【C++航海王:追寻罗杰的编程之路】C++的类型转换

目录 1 -> C语言中的类型转换 2 -> 为什么C需要四种类型转换 3 -> C强制类型转换 3.1 -> static_cast 3.2 -> reinterpret_cast 3.3 -> const_cast 3.4 -> dynamic_cast 4 -> RTTI 1 -> C语言中的类型转换 在C语言中&#xff0c;如果赋值运…

Java | Leetcode Java题解之第9题回文数

题目&#xff1a; 题解&#xff1a; class Solution {public boolean isPalindrome(int x) {// 特殊情况&#xff1a;// 如上所述&#xff0c;当 x < 0 时&#xff0c;x 不是回文数。// 同样地&#xff0c;如果数字的最后一位是 0&#xff0c;为了使该数字为回文&#xff0…