minikube从入门到精通系列之一:部署minikube详细步骤

这篇具有很好参考价值的文章主要介绍了minikube从入门到精通系列之一:部署minikube详细步骤。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

K8s相关知识可以阅读博主以下几篇技术博客:

  • K8s系列之:搭建高可用K8s v1.23.5集群详细步骤,3个master节点,3个Node节点
  • K8s系列之:Pod的基本用法
  • k8s系列之:kubectl子命令详解一
  • k8s系列之:kubectl子命令详解二
  • 更多K8s知识点详见博主K8s系列文章

一、认识Minikube

  • Minikube是一个开源工具,用于在本地开发环境中快速搭建一个单节点的Kubernetes集群。
  • 它支持多种虚拟化技术,在不同平台上都可以运行,如VirtualBox、Hyper-V、KVM等。
  • 通过Minikube,开发人员可以方便地在本地环境中测试、构建和部署应用程序,并尝试不同的Kubernetes功能和配置。
  • Minikube提供了一些命令行工具,如kubectl,用于与Kubernetes集群进行交互,可以在本地开发中提高效率和便捷性。

二、Minikube核心知识点

  1. Kubernetes集群的搭建和管理:Minikube帮助用户在本地环境中快速搭建和管理一个Kubernetes集群,从而提供了一个容器化应用程序的运行环境。

  2. 容器和镜像的管理:Minikube可以运行和管理多个容器,用户可以使用Docker Hub等资源库来查找和下载不同的镜像。

  3. kubectl命令行工具的使用:Minikube内置了kubectl命令行工具,用户可以使用该工具与Kubernetes集群进行交互,比如创建和管理应用程序、服务、节点等。

  4. 资源配额和限制的配置:Minikube允许用户配置集群中的资源配额和限制,以确保应用程序的稳定性和可伸缩性。

  5. Kubernetes对象的管理:Minikube支持管理Kubernetes中的不同对象,如Pod、Service、Deployment等,以帮助用户更好地理解和使用Kubernetes。

  6. 网络配置和服务发现:Minikube提供了网络配置和服务发现的功能,以便应用程序可以在Kubernetes集群中互相通信和发现彼此的服务。

  7. 日志和监控:Minikube支持应用程序的日志和监控,以帮助用户追踪和分析应用程序的运行状况。

三、minikube官方地址

minikube官方地址:

  • https://minikube.sigs.k8s.io/docs/start/

四、minikube 启动

minikube 是本地 Kubernetes,专注于让 Kubernetes 易于学习和开发。

您所需要的只是 Docker(或类似兼容的)容器或虚拟机环境,并且只需一个命令即可使用 Kubernetes:minikube start

五、minikube的配置需求

minikube的配置需求:

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

六、Mac安装minikube

要使用二进制下载在 x86-64 macOS 上安装最新的 minikube 稳定版本:
minikube,日常分享专栏,minikube,部署minikube详细步骤,K8s,docker

curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-darwin-amd64
sudo install minikube-darwin-amd64 /usr/local/bin/minikube

七、CenotOS7上安装minikube

minikube,日常分享专栏,minikube,部署minikube详细步骤,K8s,docker

curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-latest.x86_64.rpm
sudo rpm -Uvh minikube-latest.x86_64.rpm

minikube,日常分享专栏,minikube,部署minikube详细步骤,K8s,docker

curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
sudo install minikube-linux-amd64 /usr/local/bin/minikube

八、启动集群

从具有管理员访问权限的终端(但未以 root 身份登录),运行:

minikube start

如果 minikube 无法启动,请参阅驱动程序页面以获取设置兼容容器或虚拟机管理器的帮助。

九、与集群交互

如果您已经安装了 kubectl,现在可以使用它来访问闪亮的新集群:

kubectl get po -A

或者,minikube 可以下载适当版本的 kubectl,您应该能够像这样使用它:

minikube kubectl -- get po -A

您还可以通过将以下内容添加到 shell 配置中来让您的生活更轻松:

alias kubectl="minikube kubectl --"

最初,某些服务(例如存储配置程序)可能尚未处于“运行”状态。这是集群启动期间的正常情况,很快就会自行解决。为了进一步了解集群状态,minikube 捆绑了 Kubernetes 仪表板,让您可以轻松适应新环境:

minikube dashboard

十、部署应用程序

1.Service

创建示例部署并将其公开在端口 8080 上:

kubectl create deployment hello-minikube --image=kicbase/echo-server:1.0
kubectl expose deployment hello-minikube --type=NodePort --port=8080

这可能需要一些时间,但是当您运行时,您的部署很快就会显示:

kubectl get services hello-minikube

访问此服务的最简单方法是让 minikube 为您启动 Web 浏览器:

minikube service hello-minikube

或者,使用 kubectl 转发端口:

kubectl port-forward service/hello-minikube 7080:8080

您的应用程序现已在 http://localhost:7080/ 上提供。

您应该能够在应用程序输出中看到请求元数据。尝试更改请求的路径并观察变化。同样,您可以执行 POST 请求并观察输出中显示的正文。

2.LoadBalancer

要访问 LoadBalancer 部署,请使用“minikubetunnel”命令。这是一个部署示例:

kubectl create deployment balanced --image=kicbase/echo-server:1.0
kubectl expose deployment balanced --type=LoadBalancer --port=8080

在另一个窗口中,启动隧道以为“平衡”部署创建可路由 IP:

minikube tunnel

要查找可路由的 IP,请运行以下命令并检查 EXTERNAL-IP 列:

kubectl get services balanced

您的部署现已在 :8080 上可用

3.Ingress

启用入口插件:

minikube addons enable ingress

以下示例创建简单的 echo-server 服务和一个用于路由到这些服务的 Ingress 对象。

kind: Pod
apiVersion: v1
metadata:
  name: foo-app
  labels:
    app: foo
spec:
  containers:
    - name: foo-app
      image: 'kicbase/echo-server:1.0'
---
kind: Service
apiVersion: v1
metadata:
  name: foo-service
spec:
  selector:
    app: foo
  ports:
    - port: 8080
---
kind: Pod
apiVersion: v1
metadata:
  name: bar-app
  labels:
    app: bar
spec:
  containers:
    - name: bar-app
      image: 'kicbase/echo-server:1.0'
---
kind: Service
apiVersion: v1
metadata:
  name: bar-service
spec:
  selector:
    app: bar
  ports:
    - port: 8080
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: example-ingress
spec:
  rules:
    - http:
        paths:
          - pathType: Prefix
            path: /foo
            backend:
              service:
                name: foo-service
                port:
                  number: 8080
          - pathType: Prefix
            path: /bar
            backend:
              service:
                name: bar-service
                port:
                  number: 8080
---

应用内容

kubectl apply -f https://storage.googleapis.com/minikube-site-examples/ingress-example.yaml

等待ingress address

kubectl get ingress
NAME              CLASS   HOSTS   ADDRESS          PORTS   AGE
example-ingress   nginx   *       <your_ip_here>   80      5m45s

Docker 桌面用户注意事项:
要使 Ingress 正常工作,您需要打开一个新的终端窗口并运行 minikube 隧道,并在以下步骤中使用 127.0.0.1 代替 <ip_from_above>。

现在验证入口是否正常工作

$ curl <ip_from_above>/foo
Request served by foo-app
...

$ curl <ip_from_above>/bar
Request served by bar-app
...

十一、管理集群

暂停 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 集群:文章来源地址https://www.toymoban.com/news/detail-598215.html

minikube delete --all

到了这里,关于minikube从入门到精通系列之一:部署minikube详细步骤的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • (详细步骤+各项报错处理)windows11 安装Docker和部署K8S单节点(minikube)

    (1)win11系统(win10应该也可以,但没试过) (2)保证cpu虚拟化开启 (3)主机要留有一定的内存 满足以上即可安装docker desktop版本 (1)获取Docker Desktop并安装Download For Windows(使用了WSL2技术,直接可以在windows上运行,不需要额外的虚拟化环境) (2)开始安装,按照安装向

    2024年02月03日
    浏览(40)
  • Strimzi从入门到精通系列之二:部署Kafka

    Strimzi是一款用于在Kubernetes集群上管理Apache Kafka的开源项目。它使得在Kubernetes上部署、管理和监控Kafka成为可能,提供了一种高度可扩展和可靠的解决方案。Strimzi支持自动缩放、配置灵活、内置监控和告警等功能。通过使用Strimzi,用户可以将Kafka集成到Kubernetes和OpenShift中,并

    2024年02月11日
    浏览(35)
  • Strimzi从入门到精通系列之三:部署Kafka Connect

    Kafka Connect 是一个用于在 Apache Kafka 和其他系统之间传输数据的工具。例如,Kafka Connect 可能会将 Kafka 与外部数据库或存储和消息传递系统集成。 在Strimzi中,Kafka Connect以分布式方式部署。 Kafka Connect 也可以在独立模式下工作,但 Strimzi 不支持。 使用连接器的概念,Kafka Conn

    2024年02月13日
    浏览(36)
  • 集群部署专题之一:详解集群间SSH无密码登录配置步骤

    一、SSH简介 SSH(Secure Shell)是一种网络安全协议,通过加密和认证机制实现安全访问和文件传输等业务。传统远程登录和文件传输方式有Telnet或FTP,这两种方式都使用明文传输数据,存在很多安全隐患。SSH采用加密传输数据、提升认证强度等手段,克服了Telnet和FTP应用中的安

    2024年02月10日
    浏览(33)
  • Midjourney学习系列之一 —— 保姆级入门教程

    继ChatGPT之后,AI绘图网站Midjourney也已经火出圈了。鉴于其强大的绘图能力和极低的使用门槛,Midjourney已经在事实上被各行各业的人作为辅助工具了,更重要的是,它绝对是一个非常理想的学习AI技术的引路人。 因此我在文章《一文了解AI绘图所有,含福利》中呼吁,每一个大

    2024年02月11日
    浏览(48)
  • Debezium日常分享系列之:在 OpenShift 上部署 Debezium

    此过程用于在 Red Hat 的 OpenShift 容器平台上设置 Debezium 连接器。要在 OpenShift 上进行开发或测试,您可以使用 CodeRady 容器。 为了使容器与集群上的其他工作负载分开,请为 Debezium 创建一个专用项目。在本文档的其余部分中,将使用 debezium-example 命名空间: 对于 Debezium 部署,

    2024年02月16日
    浏览(42)
  • Docker入门到精通(项目部署)

    一. Docker安装 安装参考地址:https://docs.docker.com/engine/install/centos/ 安装仓库 安装docker引擎 启动docker服务 验证docker运行是否成功 二. Docker的镜像与容器 镜像:一个可以被特定的软件或者硬件识别的静态程序。 容器:是一个运行着的程序,它是有容器镜像产生的,一个镜像可以

    2024年02月02日
    浏览(38)
  • STM32 从入门到精通系列讲解 - 总目录

    👦 作者介绍:Bazinga bingo,专注C语言应用硬核干货分享,潜心修炼,虚心学习,立志做嵌入式相关赛道的Top。 📕 本文收录于《STM32开发》专栏,包含STM32内部模块介绍、片内资源开发、不同通信总线应用、屏幕显示等功能性开发。每篇文章包含相关知识点、代码编程详解以

    2024年02月10日
    浏览(41)
  • API 渗透测试从入门到精通系列文章(下)

    导语:在本系列文章的前面一部分我们从使用 Postman 开始,创建了集合和请求,并通过 Burp Suite 设置为了 Postman 的代理,这样我们就可以使用 Burp 的模糊测试和请求篡改的功能。 在本系列文章的前面一部分我们从使用 Postman 开始,创建了集合和请求,并通过 Burp Suite 设置为了

    2024年02月03日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包