如何在 CentOS 8 上使用 minikube 安装 Kubernetes(k8s)使用国内镜像

Kubernetes,也称为k8s或简称为Kube,是一个开源容器编排平台,用于容器的自动化扩展和部署。minikube是一个跨平台的开源工具,它使您可以在本地机器上或虚拟机 (vm) 内部署单节点Kubernetes 集群。在本主题中,您将学习如何在 CentOS 8 虚拟机上使用 minikube 安装 Kubernetes。

miniKube 的先决条件

  • 新安装的 CentOS 8(带 GUI)VM 的副本
  • 最少 2 GB RAM 和 2 个 vCPU
  • 20 GB 硬盘空间
  • 根权限
  • 稳定的互联网连接

满足所有先决条件后,现在是时候卷起袖子去弄脏我们的手了。

步骤 1) 安装更新并禁用 SELinux

首先,我们将安装安装所需的最新可用更新,以便顺利进行。运行以下 dnf 命令,

[root@minikube-centos8 ~]# dnf update -y

接下来,执行以下命令禁用 SELinux,

[root@minikube-centos8 ~]# setenforce 0
[root@minikube-centos8 ~]# sed -i --follow-symlinks 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux

因为我们将在 VM 中使用 MiniKube 部署本地 Kubernetes 集群。因此,使用以下命令在 CentOS 8 VM 上安装 Docker CE,

[root@minikube-centos8 ~]# dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo
Adding repo from: https://download.docker.com/linux/centos/docker-ce.repo
[root@minikube-centos8 ~]#
[root@minikube-centos8 ~]# dnf install docker-ce --nobest -y

运行以下 systemctl 命令来启动和启用 docker 服务,

[root@minikube-centos8 ~]# systemctl start docker
[root@minikube-centos8 ~]# systemctl enable docker

使用 firewall-cmd 命令设置以下防火墙规则,

[root@minikube-centos8 ~]# firewall-cmd --zone=public --add-masquerade --permanent
[root@minikube-centos8 ~]# firewall-cmd --reload

使用以下命令安装“ conntrack ”包, conntrack 是 minikube 设置的依赖项,

[root@minikube-centos8 ~]# dnf install conntrack -y

步骤 3) 手动安装 Kubectl

Kubectl 是一个命令行工具,通过 API 与 Kubernetes 集群交互。使用 kubectl,我们将应用程序部署为部署。默认情况下,kubectl 不包含在 CentOS 8 软件包存储库中。因此,我们将使用下面的命令手动安装它,

[root@minikube-centos8 ~]# curl -LO https://storage.googleapis.com/kubernetes-release/release/`curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt`/bin/linux/amd64/kubectl
[root@minikube-centos8 ~]# chmod +x ./kubectl
[root@minikube-centos8 ~]# mv ./kubectl /usr/local/bin/kubectl
[root@minikube-centos8 ~]# kubectl version --client
上述命令的输出如下所示,

安装-kubelet-手动-centos8

步骤 4) 安装并启动 Minikube

安装 kubectl 后,让我们使用以下命令安装 minikube,

[root@minikube-centos8 ~]# curl -Lo minikube https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
[root@minikube-centos8 ~]#  chmod +x minikube
[root@minikube-centos8 ~]# mkdir -p /usr/local/bin/
[root@minikube-centos8 ~]# install minikube /usr/local/bin/
要启动 minikube,请运行以下命令:
[root@minikube-centos8 ~]# minikube start --driver=none

minikube-start-centos8

minikube start  --driver=none   --image-repository='registry.cn-hangzhou.aliyuncs.com/google_containers' --registry-mirror=https://6no4lkvx.mirror.aliyuncs.com 

正如我们在上面的输出中看到的,minikube 命令已经下载并启动了用于设置单节点 Kubernetes 集群的 docker 容器。

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

[root@minikube-centos8 ~]# minikube status
host: Running
kubelet: Running
apiserver: Running
kubeconfig: Configured
[root@minikube-centos8 ~]# minikube ip
192.168.29.216
[root@minikube-centos8 ~]#
要停止 Kubernetes 集群,请执行,
[root@minikube-centos8 ~]# minikube stop
执行“ kubectl cluster-info ”命令查看集群信息,
[root@minikube-centos8 ~]# kubectl cluster-info

kubectl-cluster-info-centos8

运行以下命令查看集群节点,

[root@minikube-centos8 ~]# kubectl get nodes
NAME               STATUS   ROLES    AGE    VERSION
minikube-centos8   Ready    master   144m   v1.18.0
[root@minikube-centos8 ~]#
步骤:6) 测试和验证 Kubernetes 集群

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

[root@minikube-centos8 ~]# kubectl create deployment test-minikube --image=k8s.gcr.io/echoserver:1.10
deployment.apps/test-minikube created
[root@minikube-centos8 ~]#
使用国内镜像echoserver 镜像创建 k8s 部署,请运行以下命令:

kubectl create deployment test-minikube --image=registry.aliyuncs.com/google_containers/echoserver:1.10
要访问 test-minikube 部署,将其公开为服务,运行以下命令,
[root@minikube-centos8 ~]# kubectl expose deployment test-minikube --type=NodePort --port=8080
service/test-minikube exposed
[root@minikube-centos8 ~]#
在 kubectl 命令下运行以获取上面创建的部署的 pod 信息,
[root@minikube-centos8 ~]# kubectl get pod
NAME                            READY   STATUS    RESTARTS   AGE
test-minikube-f4df69575-fkxdh   1/1     Running   0          3m29s
[root@minikube-centos8 ~]#
要访问服务,请通过运行 under 命令获取其 url。
[root@minikube-centos8 ~]# minikube service test-minikube --url
http://192.168.29.216:31356
[root@minikube-centos8 ~]#
现在在您的网络浏览器中输入上面的网址,

Access-Service-MiniKube-CentOS8

太好了,这意味着我们的 Kubernetes 集群运行良好。下一步,让我们尝试部署和访问 Kubernetes 仪表板

步骤 7)启用和访问 Kubernetes 仪表板

Kubernetes 附带一个仪表板,可让您管理集群。在 Minikube 中,仪表板已添加为插件。要查看 minikube 附带的所有插件,请运行:

[root@minikube-centos8 ~]# minikube addons list

minikube-addons-list-centos8

要激活 Kubernetes 仪表板,请执行以下命令,

[root@minikube-centos8 ~]# minikube dashboard --url

minikube-dashboard-centos8

这将为我们提供一个仪表板 url ,将其复制并粘贴到 minikube 系统的 Web 浏览器上。

Kubernetes-仪表盘-MiniKube-仪表盘

仅此而已。我们已经成功地在 CentOS 8 上使用 Minikube 安装了 Kubernetes。欢迎您分享您的反馈和评论。

猜你喜欢

转载自blog.csdn.net/allway2/article/details/121700539