7.1.1 使用本地 Kubernetes 集群

在第 2 章中,我们使用了 minikube(https://minikube.sigs.k8s.io),一个在本地环境中运行 Kubernetes 集群的工具。我们使用 minikube CLI 依靠默认配置创建了本地 Kubernetes 集群。在本节中,您将看到如何为 minikube 定义自定义配置,以便在初始化新的本地 Kubernetes 集群来部署 Polar Bookshop 时使用。

注意:如果尚未安装 minikube,请参阅附录 A 中 A.3 节的安装说明。

由于我们在 Docker 之上运行 minikube,请记住先启动 Docker Engine。然后通过执行 minikube stop 命令确保默认集群未运行。从现在起,我们将不再使用默认集群,而是创建一个用于 Polar Bookshop 的自定义集群。使用 minikube,您可以通过 profile 标识来创建和控制多个集群。如果未指定 profile,minikube 会回退到默认集群。

警告:在本地 Kubernetes 集群上运行示例需要 Docker 至少有 2 个 CPU 和 4 GB 内存。如果您使用 Docker Desktop for Mac 或 for Windows,并且需要增加分配给 Docker Engine 的资源,请参阅产品文档以了解如何为您的特定操作系统执行此操作(https://docs.docker.com/desktop)。

让我们在 Docker 之上创建一个名为 polar 的新 Kubernetes 集群。这次,我们还要声明 CPU 和内存的资源限制:

$ minikube start --cpus 2 --memory 4g --driver docker --profile polar

您可以使用以下命令获取集群中所有节点的列表:

$ kubectl get nodes

NAME STATUS ROLES AGE VERSION
polar Ready control-plane,master 21s v1.24.3

我们刚刚创建的集群由单个节点组成,该节点托管 Control Plane 并充当部署容器化工作负载的工作节点。

您可以使用同一个 Kubernetes 客户端(kubectl)与不同的本地或远程集群交互。以下命令将列出所有可用的上下文:

$ kubectl config get-contexts

CURRENT NAME CLUSTER AUTHINFO
* polar polar polar

如果您有多个上下文,请确保 kubectl 配置为使用 polar。您可以通过运行以下命令验证当前上下文:

$ kubectl config current-context
polar

如果结果不是 polar,可以按如下方式更改当前上下文:

$ kubectl config use-context polar
Switched to context "polar".

在本章的剩余部分,我将假设您已拥有这个本地集群并且它正在运行。您可以随时使用 minikube stop --profile polar 停止集群,并使用 minikube start --profile polar 重新启动它。如果您想删除它并重新开始,可以运行 minikube delete --profile polar 命令。

在下一节中,您将通过部署 PostgreSQL 数据库来完成本地 Kubernetes 集群的设置。

results matching ""

    No results matching ""