kind 怎么用

kind 怎么用

什么是 Kind

Kind(Kubernetes in Docker) 是一个 Kubernetes 孵化项目,Kind 是一套开箱即用的 Kubernetes 环境搭建方案。顾名思义,就是将 Kubernetes 所需要的所有组件,全部部署在一个 Docker 容器中,可以很方便的搭建 Kubernetes 集群。

Kind 已经广泛的应用于 Kubernetes 上游及相关项目的 CI 环境中,官方文档中也把 Kind 作为一种本地集群搭建的工www.58yuanyou.com具推荐给大家。

项目地址:https://github.com/kubernetes-sigs/kind

Kind 可以做什么?

  1. 快速创建一个或多个 Kubernetes 集群
  2. 支持部署高可用的 Kubernetes 集群
  3. 支持从源码构建并部署一个 Kubernetes 集群
  4. 可以快速低成本体验一个最新的 Kubernetes 集群,并支持 Kubernetes 的绝大部分功能
  5. 支持本地离线运行一个多节点集群

Kind 有哪些优势?

  1. 最小的安装依赖,仅需要安装 Docker 即可
  2. 使用方法简单,只需 Kind Cli 工具即可快速创建集群
  3. 使用容器来模似 Kubernetes 节点
  4. 内部使用 Kubeadm 的官方主流部署工具
  5. 通过了 CNCF 官方的 K8S Conformance 测试

Kind 是如何工作的?

Kind 使用容器来模拟每一个 Kubernetes 节点,并在容器里面运行 Systemd 容器里的 Systemd 托管了 Kubelet Containerd ,然后容器内部的 Kubelet 把其它 Kubernet//www.58yuanyou.comes 组件:Kube-Apiserver Etcd CNI 等等组件运行起来。

Kind 内部使用了 Kubeadm 这个工具来做集群的部署,包括高可用集群也是借助 Kubeadm 提供的特性来完成的。在高用集群下还会额外部署了一个 Nginx 来提供负载均衡 VIP。

安装 Kind安装 Kind 依赖组件

Kind 把部署 Kubernetes 环境的依赖降低到了最小,仅需要机器安装 Docker 即可。

  1. 安装 Docker

这里以 Linux 系统为例:

$ curl -sSL https://get.daocloud.io/docker | sh

更多平台的安装方法可参考官方文档:https://docs.docker.com/install/

  1. 安装 Kubectl

如果你需要通过命令行管理集群,则需要安装 Kubectl。

这里以 Linux 系统为例:

$ curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.15.0/bin/linux/amd64/kubectl $ chmod +x ./kubectl $ sudo mv ./kubectl /usr/local/bin/kubectl

更多平台的安装方法可参考官方文档:https://kubernetes.io/docs/tasks/tools/install-kubectl/#inst//www.58yuanyou.comall-kubectl

安装 Kind

Kind 使用 Golang 进行开发,原生支持良好的跨平台特性,通常只需要直接下载构建好的二进制文件就可使用。

  1. 通过二进制安装
  • Linux
$ curl -Lo ./kind https://github.com/kubernetes-sigs/kind/releases/download/v0.5.1/kind-linux-amd64 $ chmod +x ./kind $ mv ./kind /usr/local/bin/kind
  • Windows
$ curl.exe -Lo kind-windows-amd64.exe https://github.com/kubernetes-sigs/kind/releases/download/v0.5.1/kind-windows-www.58yuanyou.comamd64 $ mv .kind-windows-amd64.exe c:kind.exe

更多平台的安装方法可参考官方文档:https://kind.sigs.k8s.io/docs/user/quick-start/

  1. 通过源码安装

如果本地环境已经配置好 Golang (1.11+) 的开发环境,你也可以直接通过源码进行安装。

$ go get sigs.k8s.io/kind@v0.5.1

运行完上述命令后,会将 Kind 的可执行文件放到 $GOPATH/bin 目录内。为了方便使用,你需要将此目录加入到 $PATH 中。

使用 Kind

安装完成之后,我们可以来看看 Kind 支持哪些命令行操作。

$ kind kind creates and manages local Kubernetes clusters using Docker container 'nodes'

Usage:kind [command]

Available Commands:build Build one of [base-image, node-image]create Creates one of [cluster]delete Deletes one of [cluster]export exports one of [logs]get Gets one of [clusters, nodes, kubeconfig-path]help Help about any commandload Loads images into nodesversion prints the kind CLI version

Flags:-h, --help help for kind--loglevel string logrus log level [panic, fatal, error, warning, info, debug] (default "warning")--version version for kind

Use "kind [command] --help" for more information about a command.

简单说下几个比较常用选项的含义:

  • build:用来从 Kubernetes 源代码构建一个新的镜像。
  • create:创建一个 Kubernetes 集群。
  • delete:删除一个 Kubernetes 集群。
  • get:可用来查看当前集群、节点信息以及 Kubectl 配置文件的地址。
  • load:从宿主机向 Kubernetes 节点内导入镜像。
使用 Kind 创建 Kubernetes 集群搭建一个单节点集群

搭建单节点集群是 Kind 最基础的功能,当然使用起来也很简单,仅需一条指令即可完成。

$ kind create vVidUkTcluster --name my-clusterCreating cluster "my-cluster" ...✓ Ensuring node image (kindest/node:v1.15.3)

内容版权声明:除非注明原创否则皆为转载,再次转载请注明出处。

文章标题: kind 怎么用

文章地址: www.58yuanyou.com/jiqiao/101790.html

相关推荐