[ K8s Operator 开发完整教程 -2 ] kind 创建本地 Kubernetes 集群
![[ K8s Operator 开发完整教程-2 ] kind 创建本地 Kubernetes 集群](https://static001.geekbang.org/infoq/f5/f588eee2174c4f774fc9ff099b33c548.png)
关于教程
在《[ K8s Operator 开发完整教程-1 ] 总览》文章中,有讲述整理系列文章的初衷和创作思路。
本节目标
在本机环境安装好 kind;
利用 kind 创建一个 Kubernetes 集群;
验证 Kubernetes 集群可用;
理论准备
Kubernetes
在进阶到本教程时,我们默认各位都已对 Kubernetes 已经有了基本的了解,组件架构、常见资源、工作负载和常用操作等。
kind 是什么
kind 是以 Docker 容器为工作节点来运行本地 Kubernetes 的一款工具。
kind 相比要准备多台虚拟机或 ECS 来引导集群好便捷的多,即便与常见的 minikube 对比,也具有很大的优势。很适合我们快速创建一个实验环境。
这里也有完整 kind 官方文档便于后续学习。
环境准备
以作者本机为例,整理如下
操作系统:macOS 15.5.1
brew:Homebrew 4.1.6-22-gae0f563
Go:go version go1.20.2 darwin/amd64
IDE 或编辑器:VSCode 1.81.1
步骤
kind 安装
![](https://static001.geekbang.org/infoq/88/881bc5ce1d4f0c7d31ecc394376d00c7.png)
版本验证
![](https://static001.geekbang.org/infoq/86/86a8c3bc2596b567a88d3a52caf46060.png)
定义 Kubernetes 集群配置
创建如下文件,我们引导一个主节点、两个工作节点的集群。
该用法我们亦可在 kind 官方文档-配置-节点 章节找到。
kind 创建集群
安装过程如下
![](https://static001.geekbang.org/infoq/9b/9b7591a82d23210bc66a61c86e4ed157.png)
看到该图类似输出,就代表我们安装成功了。并提示我们现在可以使用 kubectl 切换集群上下文。
kubectl
Kubernetes 命令行工具 kubectl, 让你可以对 Kubernetes 集群运行命令。 你可以使用 kubectl 来部署应用、监测和管理集群资源以及查看日志。
kubectl 的安装,在这里不在赘述,可以直接参考 kubernetes 官方文档-安装工具 章节。
![](https://static001.geekbang.org/infoq/2b/2b321936413a489145d288c796acc415.png)
假如你也是 macOS,可以直接尝试 brew install kubectl
。安装成功可以试试
![](https://static001.geekbang.org/infoq/4d/4d7d4db8378c0ad1abc562f96d383267.png)
kubectl 使用技巧
设置命令别名,不需要每次都完整输入 kuberctl
自动补全
![](https://static001.geekbang.org/infoq/30/303868bcb4e05bcfc0415d7e9f3f4f19.png)
更多使用技巧可以参看官方文档-kubectl备忘单。
切换已创建好的集群上下文
![](https://static001.geekbang.org/infoq/f8/f8edc2da14329310aaec61abdc1d1cb2.png)
查看集群
看看集群工作节点是否符合预期和配置
![](https://static001.geekbang.org/infoq/46/4684ba2acfdb84c8918a6850bff242f0.png)
运行 pod 测试
![](https://static001.geekbang.org/infoq/4d/4de36e6c7b84eb5bc14c693cdc0cd4ca.png)
![](https://static001.geekbang.org/infoq/21/21fdbace58a34edae05b31bbe9e9f011.png)
假如你想知道 pod 是运行在哪个节点可以
![](https://static001.geekbang.org/infoq/31/31d2bbb39a61fb6d00e8451bf5e4ba0b.png)
验证业务
我们可以把本机端口的流量转发的集群内,比如
![](https://static001.geekbang.org/infoq/c1/c13e7353a51fada762819fe18b31b5c4.png)
以此来验证 pod 是否的确运行了 nginx,然后在浏览器请求 http://127.0.0.1:8888
![](https://static001.geekbang.org/infoq/80/8014f5a3f7852d5a25eadf57c27f1303.png)
显而易见,内容也是对的。
总结
如上实验步骤,我们主要是安装 kind 工具,简单验证集群,为下节内容做准备。
版权声明: 本文为 InfoQ 作者【baiyutang】的原创文章。
原文链接:【http://xie.infoq.cn/article/b686d00d5a6049fefc00eddeb】。文章转载请联系作者。
评论