在 Manjaro/Archlinux 上通过 Minikube 在本地学习 Kubernetes在 Manjaro/Archlinux 上通过 Minikube 在本地学习 Kubernetes在 Manjaro/Archlinux 上通过 Minikube 在本地学习 Kubernetes在 Manjaro/Archlinux 上通过 Minikube 在本地学习 Kubernetes
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

在 Manjaro/Archlinux 上通过 Minikube 在本地学习 Kubernetes

在此页

  1. 第 1 步 - 安装依赖包
  2. 第 2 步 - 安装 Docker-Machine 和 KVM2 驱动程序
  3. 第 3 步 - 安装 Minikube 和 Kubectl
  4. 第 4 步 - 使用 Minikube 进行 Kubernetes 初始化
  5. 第 5 步 - 测试部署
  6. 第 6 步 - 访问 Kubernetes 仪表板
  7. 参考资料

Minikube 是一种允许您在本地计算机系统上运行 Kubernetes 的工具。 Minikube 将根据您使用的 vm-driver 在 VM 内创建一个单节点 Kubernetes 集群。 Minikube 非常适合学习 Kubernetes,包括测试、开发或培训目的。

在本教程中,我们将逐步向您展示如何在 Manjaro/ArchLinux 上使用 Minikube 在本地创建单节点 Kubernetes 集群。本指南将使用 KVM2 驱动程序在本地实现 Kubernetes 集群,并包含一个 Nginx 服务部署示例。

我们将要做什么:

  1. 安装依赖包
  2. 安装 Docker 机器和 KVM2 驱动程序
  3. 安装 Minikube 和 Kubectl
  4. 使用 Minikube 进行 Kubernetes 初始化
  5. 测试部署
  6. 访问 Kubernetes 仪表板

第 1 步 - 安装软件包依赖项

我们要做的第一步是安装所有依赖包,包括 qemu KVM 和 dnsmasq。

使用下面的 pacman 命令安装 qemu 和 dnsmasq。

sudo pacman -Sy libvirt qemu ebtables dnsmasq

安装完成后,将用户添加到 libvirt 组并重新加载。

sudo usermod -a -G libvirt $(whoami)
newgrp libvirt

现在启动 libvirtd 和 virtlogd 服务,并将这些服务添加到引导时间。

sudo systemctl start libvirtd.service
sudo systemctl enable libvirtd.service

sudo systemctl start virtlogd.service
sudo systemctl enable virtlogd.service

系统上已经安装了 qemu KVM 包和依赖项。

第 2 步 - 安装 Docker-Machine 和 KVM2 驱动程序

Minikube 使用docker-machine 来管理Kubernetes VM,我们需要为其安装docker-machine-driver-kvm2。

使用下面的 pacman 命令安装 docker 机器。

sudo pacman -Sy docker-machine

现在使用 yaourt 命令从 AUR 存储库安装 docker-machine-driver-kvm2。

yaourt -Sy docker-machine-driver-kvm2

等待安装。

第 3 步 - 安装 Minikube 和 Kubectl

对于本指南,我们将从 AUR 存储库安装 Minikube 和 kubectl。

运行下面的 yaourt 命令。

yaourt -Sy minikube-bin kubectl-bin

安装完成后,检查 Minikube 版本和 kubectl 命令。

minikube version
whereis kubectl
kubectl -h

第 4 步 - 使用 Minikube 进行 Kubernetes 初始化

使用下面的 Minikube 命令初始化单节点 Kubernetes 集群。

minikube start --vm-driver kvm2

该命令将下载 Minikube ISO 文件并在系统上创建 KVM 虚拟机。

完成后,您将得到如下结果。

Kubernetes 已使用 Minikube 安装在本地计算机上,通过运行以下所有命令进行检查。

minikube status
kubectl cluster-info
kubectl get nodes

现在您将看到下面的结果。

Kubernetes 集群在 IP 地址为 192.168.39.78 的本地计算机上启动并运行,使用 Kubernetes v1.10 和一个名为 minikube 的单节点作为集群的主节点。

第 5 步 - 测试部署

在此步骤中,我们将通过为 Nginx Web 服务器创建新部署来测试 kubernetes。

创建一个名为 project/nginx/ 的新目录并转到它。

mkdir -p projects/nginx/
cd projects/nginx/

现在为我们的部署配置创建一个新的 yaml 文件。

vim nginx-deployment-service.yaml

并在下面粘贴配置。

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
  labels:
    app: nginx
spec:
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.14
        ports:
        - containerPort: 80
---
apiVersion: v1
kind: Service
metadata:
  name: nginx-service
  labels:
    run: nginx-service
spec:
  type: NodePort
  ports:
  - port: 80
    protocol: TCP
  selector:
    app: nginx

保存并退出。

现在通过运行下面的 kubectl 命令来创建部署。

kubectl create -f nginx-deployment.yaml

完成后,检查 Kubernetes 部署。

kubectl get deployments
kubectl describe deployments nginx-deployment

您将在列表中获得 nginx-deployment。

现在检查 Kubernetes 服务。

kubectl get services
kubectl describe services nginx-service

你会看到 NodePort nginx-service 在端口 32274 上运行。

检查 Kubernetes 集群 IP 并使用 curl 命令访问它。

minikube ip
curl -I http://192.168.39.49:32274/

您将从 Nginx Web 服务器获得响应。

下面是我们从网络浏览器访问时的结果。

第 6 步 - 访问 Kubernetes 仪表板

Minikube 提供了一个命令来访问在 Minikube 集群中运行的 Kubernetes 仪表板。

运行下面的命令。

minikube dashboard

该命令将使用系统上的默认 Web 浏览器打开 Kubernetes 仪表板。

下面是 Kubernetes 仪表板。

使用 Minikube 在本地计算机 Manjaro/Archlinux 上安装 Kubenrnetes 已成功完成。

参考

©2015-2025 艾丽卡 support@alaica.com