如何在 RHEL 8 上安装 MiniKube
创始人
2024-03-02 14:48:40
0

在这篇文章中,我们将逐步介绍如何在 RHEL 8、Rocky Linux 8 或 AlmaLinux 8 上安装 MiniKube。

MiniKube 是一个跨平台的开源工具,可以让你在本地机器上部署单节点 Kubernetes 集群。

Kubernetes,也被称为 k8s,或简称 Kube,是一个开源的容器编排平台,用于容器的自动化扩展和部署。MiniKube 集群帮助开发人员和管理员在集群中构建他们的测试环境。

MiniKube 的先决条件
  • 最小化安装的 RHEL 8 或 Rocky Linux 8 或 AlmaLinux 8
  • 本地配置的 RHEL 8 仓库或订阅
  • 至少 2GB RAM 和 2 个 vCPU
  • 20GB 硬盘空间
  • 具有管理员身份的 sudo 用户
  • 稳定的互联网连接
  • Docker 或虚拟机管理器,如 VirtualBox、KVM 和 VMware 等

在这篇文章中,我们将使用 Docker 作为 MiniKube 的驱动程序。满足所有先决条件后,现在是时候卷起袖子动手了。

步骤 1)启用官方 Docker 仓库

要启用 Docker 官方仓库,运行:

$ sudo dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo
$ sudo dnf repolist

步骤 2)安装 Docker CE(社区版)

运行以下 dnf 命令来安装 Docker 及其依赖项:

$ sudo dnf install docker-ce docker-ce-cli containerd.io -y

输出:

安装 Docker 后启动并启用它的服务,运行以下 systemctl 命令:

$ sudo systemctl start docker
$ sudo systemctl start docker

允许你的本地用户在没有 sudo 的情况下运行 docker 命令,运行:

$ sudo usermod -aG docker $USER
$ newgrp docker

步骤 3)安装 kubectl 二进制文件

kubectl 是一个命令行工具,它通过 API 与 Kubernetes 集群进行交互。我们使用 kubectl 部署应用。默认情况下,kubectl 不包含在 RHEL 8 、Rocky Linux 8 或 AlmaLinux 8 软件包仓库中。因此,我们将使用下面的命令手动安装它:

$ curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
$ sudo cp kubectl /usr/local/bin/ && sudo chmod +x /usr/local/bin/kubectl
$ kubectl version --client

以上命令的输出如下所示:

步骤 4)下载 MiniKube 二进制文件并启动集群

安装 kubectl 后,让我们使用以下命令下载并安装 MiniKube 二进制文件:

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

现在使用下面的命令启动 MiniKube 集群:

$ minikube start --driver docker

上面的输出确认 minikube 命令已经使用 docker 作为驱动程序启动了单节点 Kubernetes 集群。

运行下面的 minikube 命令来验证本地 Kubernetes 集群的状态:

$ minikube status
minikube
type: Control Plane
host: Running
kubelet: Running
apiserver: Running
kubeconfig: Configured
$
$ minikube ip
192.168.49.2
$

要停止 MiniKube 集群,请执行:

$ minikube stop

执行 kubectl 命令查看集群和节点信息:

$ kubectl cluster-info
$ kubectl get nodes

步骤 5)测试和验证 Kubernetes 集群

为了测试 Kubernetes 集群,让我们尝试使用 echo 服务器镜像创建 k8s 部署,它相当于 HTTP Web 服务器并将其作为服务暴露在端口 8080 上:

$ kubectl create deployment test-minikube --image=k8s.gcr.io/echoserver:1.10
deployment.apps/test-minikube created
$

要访问 test-minikube 部署,将其公开为服务,运行以下命令:

$ kubectl expose deployment test-minikube --type=NodePort --port=8080
service/test-minikube exposed
$

运行以下 kubectl 命令以获取上面创建的部署、 容器荚 pod 和服务信息:

$ kubectl get deployment,pods,svc

要访问服务,请通过运行下面的命令获取其 URL:

$ minikube service test-minikube --url
http://192.168.49.2:32291
$
$ curl http://192.168.49.2:32291/

太好了,这意味着我们的 Kubernetes 集群工作正常,因为我们能够访问我们的示例应用。

步骤 6)启用 MiniKube 插件

MiniKube 提供插件,可以为我们的集群添加额外的功能。要列出所有可用的插件,运行:

$ minikube addons list

Kubernetes 附带一个仪表板,可让你管理集群。在 MiniKube 中,仪表板已作为插件添加。所以要启用它,运行:

$ minikube addons enable dashboard

还要启用 nginx 入口控制器,运行:

$ minikube addons enable ingress

要访问仪表板,运行:

$ minikube dashbaord --url

这将在你系统的浏览器中启动仪表板。

就是这些了。我们已经成功地在 RHEL 8、Rocky Linux 8 或 AlmaLinux 8 上使用 MiniKube 安装了 Kubernetes。欢迎你在下面的评论部分分享你的反馈和意见。


via: https://www.linuxtechi.com/install-minikube-on-rhel-rockylinux-almalinux/

作者:Pradeep Kumar 选题:lkxed 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

相关内容

Agoda 将 macOS...
作者 | Aditya Kulkarni 译者 | 刘雅梦 策...
2025-02-18 16:48:44
不稳定的IAAS提供商托管...
解决方案:部署一个网络插件(如Flannel)和优化网络配置。一些...
2025-01-10 06:00:54
不同主机上运行的Kuber...
在Kubernetes中,如果不同的主机上运行的Pod无法建立TC...
2025-01-10 01:02:40
不同纤毛配置对Kubern...
不同纤毛配置对Kubernetes中Istio集成的影响可以通过以...
2025-01-09 22:00:36
不同数据中心上的Kuber...
解决这个问题的一种方法是使用Kubernetes的多区域部署功能。...
2025-01-09 18:31:37
不同命名空间中Kubern...
在Kubernetes中,不同命名空间中服务的DNS名称的格式是 ...
2025-01-09 11:31:18

热门资讯

使用 KRAWL 扫描 Kub... 用 KRAWL 脚本来识别 Kubernetes Pod 和容器中的错误。当你使用 Kubernet...
Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
通过 SaltStack 管理... 我在搜索Puppet的替代品时,偶然间碰到了Salt。我喜欢puppet,但是我又爱上Salt了:)...
Epic 游戏商店现在可在 S... 现在可以在 Steam Deck 上运行 Epic 游戏商店了,几乎无懈可击! 但是,它是非官方的。...
如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...
2024 开年,LLUG 和你... Hi,Linuxer,2024 新年伊始,不知道你是否已经准备好迎接新的一年~ 2024 年,Lin...
Bazzite:专为 Stea... 为 Linux 桌面或者 Steam Deck 做好游戏准备,听起来都很刺激!对于一个专为 Linu...
Motrix:一个漂亮的跨平台... 一个开源的下载管理器,提供了一个简洁的用户界面,同时提供了跨平台操作的所有基本功能。在这里了解关于它...
Bash 脚本中如何使用 he... here 文档 here document (LCTT 译注:here 文档又称作 heredoc ...
使用 dialog 和 jq ... 为何选择文字用户界面(TUI)?许多人每日都在使用终端,因此, 文字用户界面 Text User I...