【云原生】Minikube 部署

minikube 介绍

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

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

环境准备

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

安装

1、使用二进制下载在x86-64 Linux上安装最新的 minikube稳定版本

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

2、启动集群

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

复制代码
minikube start

3、安装kubectl工具

3.1、在 Linux 系统中安装 kubectl

3.1.1、使用 curl 在 Linux 系统中安装 kubectl

3.1.1.1、使用以下命令下载最新发行版

复制代码
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"

说明:

如需下载某个指定的版本,请用指定版本号替换该命令的这一部分: $(curl -L -s https://dl.k8s.io/release/stable.txt)。

例如,要在 Linux x86-64 中下载 1.24.3 版本,请输入:

复制代码
curl -LO https://dl.k8s.io/release/v1.24.3/bin/linux/amd64/kubectl

3.1.2、查看是否安装成功

复制代码
kubectl version --client

用原生包管理工具安装

复制代码
cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-\$basearch
enabled=1
gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
EOF
sudo yum install -y kubectl

4、与集群交互

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

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

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

复制代码
minikube kubectl -- get po -A

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

复制代码
alias kubectl="minikube kubectl --"

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

复制代码
minikube dashboard

5、部署应用

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

复制代码
kubectl create deployment hello-nginx --image=nginx:latest
kubectl expose deployment hello-nginx --type=NodePort --port=80

5.2、查看是否启动完成

复制代码
kubectl get services hello-nginx

5.3、可以使用 kubectl 转发端口:

复制代码
kubectl port-forward service/hello-nginx 8080:80
此时使用转发宿主机的ip+8080端口即可访问应用

6、管理集群

6.1、暂停 Kubernetes,而不影响已部署的应用程序:

复制代码
minikube pause

6.2、取消暂停已暂停的实例:

复制代码
minikube unpause

6.3、停止集群:

复制代码
minikube stop

6.4、更改默认内存限制(需要重新启动):

复制代码
minikube config set memory 9001

6.5、删除所有 minikube 集群:

复制代码
minikube delete --all
相关推荐
一个向上的运维者4 小时前
详细解读k8s的kind中service与pod的区别
容器·k8s
橙*^O^*安6 小时前
Go 语言基础:变量与常量
运维·开发语言·后端·golang·kubernetes
_Walli_9 小时前
k8s集群搭建(三)-------- Dashboard UI
云原生·容器·kubernetes
运维成长记11 小时前
云原生监控系统 Prometheus大总结 20250909
云原生·prometheus
橙*^O^*安15 小时前
Kubernetes集群部署Jenkins指南
云原生·容器·kubernetes·jenkins·devops
阿里云云原生15 小时前
VibeCoding On Function AI Deep Dive:用 AI 应用生产 AI 应用
云原生
傻傻虎虎15 小时前
【Docker】常用帮忙、镜像、容器、其他命令合集(1)
运维·docker·容器
阿里云云原生17 小时前
FunctionAI 图像生成:简化从灵感到 API 调用的每一步
云原生
喂完待续17 小时前
【序列晋升】31 Spring Cloud App Broker 微服务时代的云服务代理框架
spring·spring cloud·微服务·云原生·架构·big data·序列晋升
pwj去战斗吧18 小时前
k8s+jenkins+harbor构建Devops平台
kubernetes·jenkins·devops