【云原生】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
相关推荐
chuanauc6 小时前
Kubernets K8s 学习
java·学习·kubernetes
小张是铁粉6 小时前
docker学习二天之镜像操作与容器操作
学习·docker·容器
烟雨书信6 小时前
Docker文件操作、数据卷、挂载
运维·docker·容器
IT成长日记7 小时前
【Docker基础】Docker数据卷管理:docker volume prune及其参数详解
运维·docker·容器·volume·prune
这儿有一堆花7 小时前
Docker编译环境搭建与开发实战指南
运维·docker·容器
LuckyLay7 小时前
Compose 高级用法详解——AI教你学Docker
运维·docker·容器
Uluoyu7 小时前
redisSearch docker安装
运维·redis·docker·容器
IT成长日记11 小时前
【Docker基础】Docker数据持久化与卷(Volume)介绍
运维·docker·容器·数据持久化·volume·
疯子的模样15 小时前
Docker 安装 Neo4j 保姆级教程
docker·容器·neo4j
虚伪的空想家16 小时前
rook-ceph配置dashboard代理无法访问
ceph·云原生·k8s·存储·rook