【云原生】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
相关推荐
GeminiJM35 分钟前
Docker监控服务部署
运维·docker·容器
morliz子轩1 小时前
在Docker上部署datalust/Seq日志服务系统
运维·docker·容器
exe4521 小时前
在docker中部署dify
运维·docker·容器
hackchen9 小时前
NexusTerminal一款视频移动端的webSSH
docker·云原生·eureka·web-ssh
ahhhhaaaa-14 小时前
【k8s】阿里云ACK服务中GPU实例部署问题
阿里云·云原生·容器·kubernetes·云计算
熊出没14 小时前
阿里云云原生数据库PolarDB和普通云数据库的区别?
数据库·阿里云·云原生
谷新龙00115 小时前
docker compose部署kafka
docker·容器·kafka
David爱编程17 小时前
Docker Daemon 调优全解,打造高性能守护进程配置!
后端·docker·容器
上海运维Q先生18 小时前
Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility
云原生·k8s·cilium
掘金-我是哪吒19 小时前
分布式微服务系统架构第147集:JavaPlus技术文档平台日更
分布式·微服务·云原生·架构·系统架构