Edit This Page

通过 LXD 实现 Kubernetes 本地开发

在本地运行 Kubernetes 比在公有云上部署和移除集群具有明显的开发优势,如更低的成本和更快的迭代。 理想情况下,Kubernetes 开发人员可以在本地容器内产生所有必需的节点,并在提交新配置时测试它们。 本文将展示如何将集群部署到本地机器的 LXD 容器上。

准备开始

安装 conjure-up,这是一个用来部署大型软件的工具。 将当前用户添加到 lxd 用户组中。

sudo snap install conjure-up --classic
sudo usermod -a -G lxd $(whoami)

<!– Note: If conjure-up asks you to “Setup an ipv6 subnet” with LXD, answer NO. ipv6 with Juju/LXD is currently unsupported.

部署 Kubernetes

通过以下命令启动部署:

conjure-up kubernetes

对于本教程,我们将会创建一个新的控制器 - 选择 localhost 云类型:

选择云类型

部署应用:

部署应用

等待 Juju 引导结束:

引导

等待应用被完全部署:

等待

执行最终的后处理步骤,来自动配置 Kubernetes 环境:

后处理

查看最终的摘要信息:

最终的摘要

访问集群

您可以通过运行以下命令来访问 Kubernetes 集群:

kubectl --kubeconfig=~/.kube/config

或者如果您已经运行过一次,它将创建一个新的配置文件,如摘要信息所示。

kubectl --kubeconfig=~/.kube/config.conjure-up

在本地机器上使用 LXD 的目的是为了模拟用户在云或裸机中部署的环境。每个节点都被视为一台机器,具有与生产环境相同的特性。 每个节点都是一个单独的容器,它在里面运行 Docker 容器和 kubectl(更多信息请参阅 集群简介)。

–>

注意:如果 conjure-up 要求您在 LXD 上 “配置一个 ipv6 子网”,请选择 NO。目前还不支持在 Juju/LXD 上使用 ipv6。 {% endcapture %}

反馈