繁体   English   中英

如何在 Docker 桌面上创建一个新的 Kubernetes 集群?

[英]How to create a new Kubernetes cluster on Docker Desktop?

我似乎无法弄清楚如何在我的计算机上运行实例的 Docker 桌面上创建一个全新的 Kubernetes 集群。 (这是 Mac 还是 PC 应该无关紧要)。

我知道如何设置当前集群上下文,但我只有一个集群,因此无法设置其他任何内容。

### What's my current context pointing to?
$ kubectl config current-context
docker-for-desktop

### Set the context to be "docker-for-desktop" cluster
$ kubectl config use-context docker-for-desktop
Switched to context “docker-for-desktop”

进一步的问题:

  1. 如果我有多个集群,那么只有其中一个(当前“设置”的)将同时运行而另一个停止/休眠?
  2. 集群彼此独立,所以如果我可以在一个集群周围玩耍,那么这应该不会影响另一个集群

确保复选框已启用

在此处输入图片说明

Kubernetes 配置文件描述了 3 个对象:集群用户上下文

集群- 集群名称 + 详细信息 - 主机和证书。

用户- 用户名和凭据,授权您使用任何集群主机。

上下文角色是在用户集群之间建立连接,因此当您使用该上下文时, kubectl将使用上下文对象中指定的用户凭据授权您针对上下文对象中指定的集群。 一个示例context对象:

apiVersion: v1
current-context: ""
kind: Config
preferences: {}

clusters:
- cluster:
    certificate-authority: xxxxxxxxx
    server: xxxxxxxxx
  name: gke_dev-yufuyjfvk_us-central1-a_standard-cluster-1

users:
- name: efrat-dev
  user:
    client-certificate: xxxxxxxxx
    client-key: xxxxxxxxx

contexts:
- context:
    cluster: gke_dev-yufuyjfvk_us-central1-a_standard-cluster-1
    user: efrat-dev
  name: gke-dev

kubectl config子命令有一组命令来在配置文件中生成集群、用户和上下文条目

来自 docker-desktop 的多个 k8s 集群

在幕后,当您启用 k8s 时,docker desktop 会将 kubernetes 组件下载为 docker 镜像,并且服务器会侦听https://localhost:6443 这一切都是自动完成的,因此除非您打算自己运行整个结构,否则我不认为您可以将其配置为运行多个集群。

关于您的进一步问题:

当您设置上下文时, kubectl会将current-context设置kubectl current-context ,并且您运行的每个kubectl都将使用上下文的用户凭据转到上下文的集群。 这并不意味着集群已经死了。 它根本不会影响他们。

使用 Docker Desktop,您可以使用诸如k3d 之类的开发工具创建多个集群。 在 Docker 桌面首选项下禁用 Kubernetes,因为您不需要它。 然后安装 XCode CLT、Homebrew 并使用 Brew 在本地安装 k3d。 接下来发出命令:

k3d cluster create one && \
k3d cluster create two

这将创建两个集群,自动切换上下文。 运行k3d cluster list列出可用的集群并使用k3d --help获取在线帮助。 免费提供适用于 macOS 的更深入的教程。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM