使用 kind 1 分钟启动一个本地 k8s 开发集群
kind 简介
Github 地址:https://github.com/kubernetes-sigs/kind
kind 是一个快速启动 kubernetes 集群的工具,适合本地 k8s 开发环境搭建,能在 1 分钟之内就启动一个非常轻量级的 k8s 集群。之所以如此之快,得益于其基于其把整个 k8s 集群用到的组件都封装在了 Docker 容器里,构建一个 k8s 集群就是启动一个 Docker 容器,如此简单,正如下面图片描述一样:
说说我为什么使用 kind 吧:
我之前本地 k8s 开发环境是基于 vagrant + virtualbox 来搭建,但是和 kind 比起来太重量级了,主要有如下痛点:
- 资源消耗严重:vagrant + virtualbox + kubernetes 这一套其实本质上还是 k8s 运行在 virtualbox 虚拟机上,这个资源消耗可想而知,我的电脑配置低,经常由于资源消耗太多导致电脑发热、风扇狂转、死机。。。
- 使用复杂:vagrant + virtualbox + kubernetes 虽然比直接二进制搭建简化了不少,但是还是有一定的技术门槛的,需要对 vagrant 有一定的了解,而且编写 vagrant 需要有一定的经验才能把集群配置好;
kind 使用
kind 的使用非常简单,其实就是一个命令行工具,通过这个工具创建、删除 k8s 集群,下面简单说下使用。
1.准备工作
- Kind 的主要功能目前需要有 Docker 环境的支持,可参考 Docker 官方文档进行安装;
- 安装操作 k8s 的 kubectl 命令行,安装方法可参考官方文档;
2.安装
到 github release 页下载对应操作系统的二进制文件到本地,并放到 PATH 环境变量:
https://github.com/kubernetes-sigs/kind/releases
3.创建集群
kind create cluster
完成后就可以直接 kubectl 操作集群了,kubeconfig 已经自动生效了,在 ~/.kube/config
路径。
$ kubectl get node
NAME STATUS ROLES AGE VERSION
kind-control-plane Ready master 53m v1.18.2
4.获取集群 kubeconfig 文件
kind get kubeconfig
5.销毁集群
kind delete cluster
执行 kind --help
获取帮助和其他支持的命令参数。
kind 配置
我们可以对要创建的集群进行一些定制化配置,kind 支持的配置见这里:https://kind.sigs.k8s.io/docs/user/configuration/
配置方法:
参照文档,编写配置 kind 配置文件 config.yaml,然后在 kind 创建集群的时候指定配置文件:
kind create cluster --config=/foo/bar/config.yaml
举例:
默认 kind 创建出来的集群 apiserver 监听的地址是:127.0.0.1:[随机端口],我要改成默认监听的地址是:0.0.0.0:6443,编写如下 config.yaml
kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
networking:# WARNING: It is _strongly_ recommended that you keep this the default# (127.0.0.1) for security reasons. However it is possible to change this.apiServerAddress: "0.0.0.0"# By default the API server listens on a random open port.# You may choose a specific port but probably don't need to in most cases.# Using a random port makes it easier to spin up multiple clusters.apiServerPort: 6443
创建集群时指定上面配置文件:
kind create cluster --config=config.yaml
总结
总而言之,kind 是一个非常轻量级的工具,能以最轻量的方式构建 k8s 集群,其设计理念是是一个 k8s 就是一个 Docker 容器,构建复杂的 k8s 集群变成了启动一个 Docker 容器,如此简单。
我对 kind 的评价是:快!快!快! 轻量!轻量!轻量! 效率!效率!效率!
使用 kind 1 分钟启动一个本地 k8s 开发集群相关推荐
- api k8s restful 创建pods_Kind:一个容器创建K8S开发集群
什么是 Kind kind:是一种使用Docker容器节点运行本地Kubernetes集群的工具.该类型主要用于测试Kubernetes,但可用于本地开发或CI. 注意:kind仍在开发中 部署 Ma ...
- docker 如何加入kubernetes_使用 Kind 在 5 分钟内快速部署一个 Kubernetes 高可用集群...
什么是 Kind Kind(Kubernetes in Docker) 是一个Kubernetes孵化项目,Kind是一套开箱即用的Kubernetes环境搭建方案.顾名思义,就是将Kubernete ...
- k8s 二进制集群部署
目录 写在之前 一. k8s简介 1. k8s 的整体架构 2. 部署说明 3. ansible host文件说明 二. 基础系统部署 1. 设置关闭防火墙及SELINUX 2. 关闭Swap 3.升 ...
- 这一篇 K8S(Kubernetes)集群部署 我觉得还可以
点赞再看,养成习惯,微信搜索[牧小农]关注我获取更多资讯,风里雨里,小农等你,很高兴能够成为你的朋友. 国内安装K8S的四种途径 Kubernetes 的安装其实并不复杂,因为Kubernetes 属 ...
- 自动化运维之k8s——Kubernetes集群部署、pod、service微服务、kubernetes网络通信
目录 一.Kubernetes简介 1.Kubernetes简介 2.kubernetes设计架构 3.Kubernetes核心组件 4.kubernetes设计结构 二.Kubernetes部署 1 ...
- 银河麒麟高级服务器操作系统V10上安装k8s单机集群
前言 本文介绍银河麒麟高级服务器操作系统V10上安装部署k8s单机集群及一些基础的kubectl指令 本文涉及部署脚本主要源自基于https://github.com/easzlab/kubeasz在 ...
- Rancher+K8S+Docker集群搭建
Rancher+K8S+Docker集群搭建 Ubuntu安装 准备工作:准备VMware+Ubuntu(ubuntu-18.04.5-live-server-amd64.iso) 1.1 虚拟机安装 ...
- Eclipse的下载、安装和WordCount的初步使用(本地模式和集群模式)
包括: Eclipse的下载 Eclipse的安装 Eclipse的使用 本地模式或集群模式 Scala IDE for Eclipse的下载.安装和WordCount的初步使用(本地模式和集群 ...
- nacos 本地测试_Nacos集群配置实例(windows下测试)
1.首先 fork 一份 nacos 的代码到自己的 github 库,然后把代码 clone 到本地. git地址:https://github.com/alibaba/nacos.git 2.然后 ...
- 使用国内的镜像源搭建 kubernetes(k8s)集群
概述 老话说的好:努力学习,提高自己,让自己知道的比别人多,了解的别人多. 言归正传,之前我们聊了 Docker,随着业务的不断扩大,Docker 容器不断增多,物理机也不断增多,此时我们会发现,登录 ...
最新文章
- 求最短路径——BFS、Dijkstra、Prim算法对比
- Nginx实现反向代理例子
- C语言程序练习-L1-023 输出GPLT (20分)
- 利用js刷新页面方法
- idea如何自制插件_Lice IntelliJ插件图标制作过程
- 实现自动文本摘要(python,java)
- python中什么是数据驱动_携程大牛谈自动化测试里的数据驱动和关键字驱动思路的理解...
- iBeiKe十周年照片~
- python乱码怎么办_Python爬虫结果是乱码怎么办?带你了解乱码的原因及其解决办法...
- 秩和比综合评价法(RSR)详解及Python实现和应用
- M语言中的操作符说明:大括号{}-列List,方括号[]-记录Record
- 哈工大2021年秋季学期数据结构期末试题
- 机器学习算法工程师--实习面经
- 用python将word转化成pdf
- scrapy爬取晋江免费小说(章节)+ cookie爬vip章节
- 用数据来看马拉多纳究竟有多么闪耀!!!
- 史上最全面试题汇总,没有之一,不接受反驳
- opencv-python将两个文件夹下的照片拼接一起,然后保存
- 通过堡垒机rdp 黑屏_如何绕过堡垒机远程登录
- JAVA基础-50道编程题
热门文章
- 最新腾讯防水墙滑块验证码破解,代码可以直接运行
- 什么是基站定位?基站定位的原理及特点
- 计算机组成原理下列数中最小的数位,计算机组成原理试题(四)
- 布尔运算(Boolean Operators)
- wifi共享代码实践java_笔记本实现共享wifi上网
- css3动画: 3d照片旋转transfrom
- 2048游戏(C语言)
- cdr2022更新24.1版CorelDRAW2022稳定版
- [已解决] Could not create connection to database server.
- CAD软件中怎么裁剪参照?