当前位置: 首页 > news >正文

kind集群应用

单节点kind集群

Kind 是一个轻量级的 Kubernetes 集群管理工具,它通过 Docker 容器 运行 Kubernetes 节点,适用于 本地开发、测试和 CI/CD。以下是 仅针对 Linux 平台的 Kind 安装方法


1. 前提条件

  • Docker(必须已安装并运行)

    docker --version
    
  • kubectl(可选,但推荐,用于管理 Kubernetes 集群)

    • 检查是否安装:

      kubectl version --client
      
    • 如果没有,可以安装:•kubectl 官方安装指南


2. 安装 Kind(Linux 平台)

方法 1:直接下载二进制文件(推荐)

这是 最简单、最通用的安装方式,适用于大多数 Linux 发行版(如 Ubuntu、Debian、CentOS、Fedora 等)。

步骤:
  1. 下载 Kind 二进制文件(以 v0.22.0 为例):

    curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.30.0/kind-linux-amd64
    
    • 如果是 ARM 架构(如树莓派、AWS Graviton),请下载 kind-linux-arm64

      curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.30.0/kind-linux-arm64
      
  2. 赋予执行权限

    chmod +x ./kind
    
  3. 移动到 PATH 目录(如 /usr/local/bin

    sudo mv ./kind /usr/local/bin/kind
    
  4. 验证安装

    kind version
    

    正常输出示例:

    kind v0.22.0 go1.21.4 linux/amd64
    

方法 2:手动编译安装(高级用户)

如果你想从 源码编译 Kind(不推荐普通用户使用),可以运行:

git clone https://github.com/kubernetes-sigs/kind.git
cd kind
make build
sudo cp bin/kind /usr/local/bin/kind
kind version

推荐直接下载二进制文件,更简单可靠。


3. 验证 Docker 是否正常运行

Kind 依赖 Docker,确保 Docker 已启动并能正常运行:

docker ps

如果报错,先启动 Docker:

sudo systemctl start docker 
sudo systemctl enable docker # 设置开机自启

4. 创建一个 Kubernetes 集群

安装完成后,可以立即创建一个 默认的 Kubernetes 集群

# 创建集群(默认单节点)
kind create cluster# 检查集群状态
kubectl cluster-info --context kind-kind# 查看节点
kubectl get nodes# 删除集群(可选)
kind delete cluster

输出示例:

Kubernetes control plane is running at https://127.0.0.1:44701
CoreDNS is running at https://127.0.0.1:44701/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy

6.单节点创建deployment

# 创建deployment
kind load docker-image nginx:latest
kubectl create deployment nginx --image=nginx:latest

5.创建多节点Kubernetes集群

1. 创建一个配置文件
cat > kind-node.yaml <<EOF
kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
nodes:- role: control-plane- role: worker- role: worker
EOF
2. 使用该配置创建集群:
# 1. 创建集群
kind create cluster --name my-cluster --config kind-node.yaml# 2. 加载镜像(关键!)
kind load docker-image nginx:latest --name my-cluster# 3. 创建 3 副本 Deployment(使用 nginx:latest)
kubectl create deployment nginx --image=nginx:latest --replicas=2# (可选)查看 Pod
kubectl get pods -w# (可选).查看当前 kubectl 使用的上下文(即当前连接的集群)
kubectl config current-context

7.重点命令解析:

命令作用示例
kind create cluster创建一个新的 Kubernetes 集群(基于 Docker 容器)kind create clusterkind create cluster --name my-cluster
kind delete cluster删除一个集群kind delete clusterkind delete cluster --name my-cluster
kind get clusters查看当前所有的 kind 集群kind get clusters
kind load docker-image将 Docker 镜像加载到 kind 集群节点中kind load docker-image my-app:1.0
kind load image-archive将打包的镜像 tar 包加载到集群kind load image-archive my-images.tar
kind build node-image构建一个 kind 专用的 Kubernetes 节点镜像(高级用法)kind build node-image --type docker
kind get kubeconfig获取集群的 kubeconfig 文件路径kind get kubeconfig --name my-cluster
kind export kubeconfig将集群的 kubeconfig 导出到默认位置或指定文件kind export kubeconfig --name my-cluster
http://www.dtcms.com/a/357989.html

相关文章:

  • 《云原生架构从崩溃失控到稳定自愈的实践方案》
  • 「鸿蒙系统的编程基础」——探索鸿蒙开发
  • 第12章:推荐算法与实践
  • 科技感网页计时器.html
  • 设计模式:抽象工厂模式(Abstract Factory Pattern)
  • 在word以及latex中引用zotero中的参考文献
  • 单例模式的mock类注入单元测试与友元类解决方案
  • 云存储(参考自腾讯云计算工程师认证)
  • Twitter舆情裂变链:指纹云手机跨账号协同机制提升互动率200%
  • 使用电脑操作Android11手机,连接步骤
  • 【序列晋升】21 Spring Cloud Gateway 云原生网关演进之路
  • DVWA靶场通关笔记-CSRF(Impossible级别)
  • 【90页PPT】新能源汽车数字化转型SAP解决方案(附下载方式)
  • 汽车加气站操作工证考试的复习重点是什么?
  • 【自然语言处理与大模型】多机多卡分布式微调训练的有哪些方式
  • C++ constexpr:编译时计算的高效秘籍
  • 复现论文块体不锈钢上的光栅耦合表面等离子体共振
  • 10.2 工程学中的矩阵
  • hadoop安欣医院挂号看诊管理系统(代码+数据库+LW)
  • 使用 Ansible 和 Azure Pipelines 增强您的 DevOps
  • Midjourney绘画创作入门操作创作(广告创意与设计)
  • 腾讯云centos7.6的运维笔记——从yum的安装与更新源开始
  • C++ 之 【map和set的模拟实现】(只涉及map和set的插入、迭代器以及map的operator[]函数)
  • Altium Designer中电路板设计
  • 流式HTTP MCP服务器开发
  • Android中handler机制
  • 《RANKGUESS: Password Guessing Using Adversarial Ranking》——论文解读
  • 主从DNS和Web服务器搭建过程
  • Windows系统提示“找不到文件‘javaw‘”
  • 【C语言强化训练16天】--从基础到进阶的蜕变之旅:Day16