kind安装k8s集群

  • 安装docker
  • 安装kind
    • 设置kind命令自定补全
  • 安装kubectl命令包
    • 用二进制包安装kubectl
    • yum源安装kubectl
    • 设置kubectl命令行自动补全
  • 创建单节点集群
    • 创建集群配置文件,与集群交互
    • 安装 kubectl convert 插件
    • kubectl-convert用法示例
  • 创建多节点集群
    • 集群节点验证
  • 部署Kubernetes Dashboard
  • 查看节点
    • 查看节点名称
    • 进入kind-control-plane容器
    • 查看kind-control-plane节点中的镜像
    • 查看kind-control-plane节点中的容器

安装docker

https://blog.csdn.net/omaidb/article/details/121683661

安装kind

curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.11.1/kind-linux-amd64
chmod +x ./kind
mv kind /usr/bin/
which kind

设置kind命令自定补全

source /usr/share/bash-completion/bash_completion
source <(kubectl completion bash)
echo 'source <(kind completion bash)' >>~/.bashrc

安装kubectl命令包

用二进制包安装kubectl

# 下载最新版kubectl命令
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"# 赋予kubectl命令可执行权限
chmod +x kubectl# 将kubectl安装到/usr/local/bin目录
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl# 查看kubectl版本
kubectl version --client

yum源安装kubectl

# 添加k8s源
cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF# 安装组件
yum install -y kubectl

设置kubectl命令行自动补全

# 安装bash-completion
yum install -y bash-completionsource /usr/share/bash-completion/bash_completion
source <(kubectl completion bash)
echo 'source <(kubectl completion bash)' >>~/.bashrc

创建单节点集群

参考: https://kind.sigs.k8s.io/docs/user/quick-start/

# 创建集群
## 不指定--name时集群默认名称为kind
kind create cluster
## 指定--name,集群名为kind
kind create cluster --name kind# 查看创建的所有集群
kind get clusters# 查看集群信息(单集群)
kubectl cluster-info
## 有多个集群时查看集群信息,使用--context 集群name
kubectl cluster-info --context kind-kind# 删除集群
kind delete clusters kind# 查看集群节点列表
kubectl get nodes# 查看所有pods
kubectl get pods -A# 查看组件状态
kubectl get cs
# 参考 https://blog.51cto.com/u_2367685/3117365

创建集群配置文件,与集群交互

# 创建必要文件
mkdir -p $HOME/.kube
docker ps# 将容器中的的配置文件复制到宿主机
docker cp kind-control-plane:/etc/kubernetes/admin.conf $HOME/.kube/config
chown $(id -u):$(id -g) $HOME/.kube/config

安装 kubectl convert 插件

一个 Kubernetes 命令行工具 kubectl 的插件,允许你将清单在不同 API 版本间转换。 在将清单迁移到具有较新 Kubernetes 版本的未弃用 API 版本时,这个插件特别有用。 更多信息请访问 迁移到非弃用 API

下载kubectl convert插件

# 用以下命令下载最新发行版:
curl -LO https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl-convert

安装kubectl convert插件

sudo install -o root -g root -m 0755 kubectl-convert /usr/local/bin/kubectl-convert

验证插件是否安装成功

kubectl convert --help

如果你没有看到任何错误就代表插件安装成功了。

kubectl-convert用法示例

https://www.apiref.com/kubernetes-zh/488.html

创建多节点集群

# 使用资源清单创建
kind create cluster --config kind-example-config.yaml

多节点资源清单文件

# 创建一个master,两个node
kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
nodes:# 将虚拟机中的master的节点的30080端口映射到本地的8443端口
- role: control-planeextraPortMappings:- containerPort: 30080hostPort: 8443
# 要映射端口,自行添加即可- containerPort: 30880hostPort: 8880- role: worker
- role: worker

集群节点验证

kubectl --context kind get no

部署Kubernetes Dashboard

https://blog.csdn.net/omaidb/article/details/121746492

查看节点

查看节点名称

[root@master1 ~]# kubectl get nodes
NAME                 STATUS   ROLES                  AGE    VERSION
kind-control-plane   Ready    control-plane,master   102m   v1.21.1

进入kind-control-plane容器

# 进入kind-control-plane容器
docker exec -ti kind-control-plane bash# 刷新kind-control-plane容器的ubuntu源
apt update# 安装bash-conpletion,实现命令自动补全
apt install bash-completion -y

查看kind-control-plane节点中的镜像

kind 创建的集群使用的是containerd 所以我们使用 crictl 命令来获取

# 查看kind-control-plane节点中的镜像root@kind-control-plane:/# crictl images
IMAGE                                      TAG                  IMAGE ID            SIZE
docker.io/kindest/kindnetd                 v20210326-1e038dc5   6de166512aa22       54MB
docker.io/rancher/local-path-provisioner   v0.0.14              e422121c9c5f9       13.4MB
k8s.gcr.io/build-image/debian-base         v2.1.0               c7c6c86897b63       21.1MB
k8s.gcr.io/coredns/coredns                 v1.8.0               296a6d5035e2d       12.9MB
k8s.gcr.io/etcd                            3.4.13-0             0369cf4303ffd       86.7MB
k8s.gcr.io/kube-apiserver                  v1.21.1              94ffe308aeff9       127MB
k8s.gcr.io/kube-controller-manager         v1.21.1              96a295389d472       121MB
k8s.gcr.io/kube-proxy                      v1.21.1              0e124fb3c695b       133MB
k8s.gcr.io/kube-scheduler                  v1.21.1              1248d2d503d37       51.9MB
k8s.gcr.io/pause                           3.5                  ed210e3e4a5ba       301kB

查看kind-control-plane节点中的容器

# 查看kind-control-plane节点中的容器root@kind-control-plane:/# crictl ps
CONTAINER           IMAGE               CREATED             STATE               NAME                      ATTEMPT             POD ID
1a32ee0d148ac       296a6d5035e2d       7 minutes ago       Running             coredns                   1                   934bbd0fd95bb
155bf11f718b0       6de166512aa22       7 minutes ago       Running             kindnet-cni               1                   2f44ffdc1d3fe
b749561a4981e       296a6d5035e2d       7 minutes ago       Running             coredns                   1                   428c0d326a0ed
9cba4431ea1e6       e422121c9c5f9       7 minutes ago       Running             local-path-provisioner    1                   cbea101878923
b994ed402de5f       0e124fb3c695b       7 minutes ago       Running             kube-proxy                1                   0c3c7f70ec8da
483e55f83aa58       94ffe308aeff9       7 minutes ago       Running             kube-apiserver            1                   aa6715c8a51ca
c10d6643cac5b       96a295389d472       7 minutes ago       Running             kube-controller-manager   1                   83c1e71ee8715
10c13dc22b245       1248d2d503d37       7 minutes ago       Running             kube-scheduler            1                   1244e11222811
2ed82ebd82e0e       0369cf4303ffd       7 minutes ago       Running             etcd                      1                   6482c67187c52

kind安装k8s集群相关推荐

  1. 使用sealos安装K8S集群时,需确保节点的swap是关闭的

    使用sealos安装K8S集群时,需确保节点的swap是关闭的,否则会安装失败

  2. 使用KubeKey安装K8S集群

    KubeKey [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9a5Ji2nE-1625797190511)(https://github.com/kubesphere ...

  3. yum安装k8s集群(单master两个node、阿里云镜像源)

    yum安装k8s集群(单master节点方式) 一.环境准备 1.系统要求 按量付费阿里云主机三台 要求:centos7.6~7.8:以下为 https://kuboard.cn/install/in ...

  4. [提示]普通用户使用sealos安装k8s集群的话,默认还是会装到root用户的home目录/root

    如果使用普通用户,使用sealos安装k8s集群的话,默认还是会装到root用户的home目录/root kubeadm init --config=/root/kubeadm-config.yaml ...

  5. Blazor+Dapr+K8s微服务之基于WSL安装K8s集群并部署微服务

     前面文章已经演示过,将我们的示例微服务程序DaprTest1部署到k8s上并运行.当时用的k8s是Docker for desktop 自带的k8s,只要在Docker for desktop中启用 ...

  6. k8s 安装_二进制安装k8s集群总结

    在之前文章里我们以学习为目的介绍了k8s集群的手动二进制安装,包括: ssl证书制作. docker的安装. 网络通讯组件flannel的安装. K8s基础组件的安装(etcd,master组件api ...

  7. 使用kubeadm安装k8s集群故障处理三则

    最近在作安装k8s集群,测试了几种方法,最终觉得用kubeadm应该最规范. 限于公司特别的网络情况,其安装比网上不能访问google的情况还要艰难. 慢慢积累经验吧. 今天遇到的三则故障记下来作参考 ...

  8. (亲测无坑)Centos7.x使用kubeadm安装K8s集群1.15.0版本

    基础环境配置 三台Centos7.x的服务器,主节点 cpu >=2,node节点>=1 注:(上述cpu为最低配置,否则集群安装部署会报错,无法启动,对其他硬件无硬性要求) 以下操作若无 ...

  9. 从零开始离线安装k8s集群

    本文主要用于在内网(离线)环境安装k8s集群:linux环境 centos7.6 主要步骤有: 安装docker 创建dokcer 私有镜像库 registry 安装kubernetes 安装flan ...

  10. 本地k8s集群搭建保姆级教程(4)-安装k8s集群Dashboard

    安装k8s集群管理UI 1 Dashboard安装 1.1 参考文档 Dashboard 是基于网页的 Kubernetes 用户界面. 你可以使用 Dashboard 将容器应用部署到 Kubern ...

最新文章

  1. OpenCV(项目)二维码识别(二维码、条形码)
  2. DB2 9 利用启示(733 测验)认证指南,第 7 部分: Java 编程(5)
  3. Redis数据类型应用场景及具体方法总结
  4. nssl1230-序列【位运算】
  5. boost windows编译
  6. 期权价格的上限和下限
  7. 冲突问题和核心对象和原生js 和 jquer的区别的两个区别(固定格式的区别和入口函数的区别)
  8. 支付宝区块链授权专利212件 位居全球第一!
  9. SuseLinux详解(3)——开启/关闭防火墙的方法
  10. python计算工资编程-老男孩学Python编程后薪资待遇高吗?
  11. 微信开发-点击链接自己主动加入关注
  12. 水电远程预付费管理系统
  13. 深度学习标签制作简易Python代码
  14. java混淆工具zelix比较_常用的5款java混淆器
  15. 利用uncode-schedule(冶卫军)构建分布式任务调度
  16. 15个经典面试问题及回答思路,经典好文
  17. 劳务派遣和灵活用工有什么不同?
  18. C语言数据结构 (清华大学出版社【严蔚敏版】参考)
  19. 不同大小硬盘对拷oracle,如何实现硬盘对拷_大小不一样的硬盘怎么实现对拷?_不同大小硬盘对拷...
  20. NYOJ 489-哭泣天使:最大流

热门文章

  1. 万兆铜缆--七类双绞线--光纤等内容
  2. php导入mib表,Linux snmp导入MIB库
  3. 计算机设置新网络,新买的电脑怎么设置网络连接
  4. win10休眠_最牛的win10优化设置方法大全
  5. 烟雨黑帽seo超级模板站群-可一键清除内页URL转换成单页-百度搜狗超级模板站群-多城市网站站群
  6. 分享全球范围内比较好用的17个免费空间(基本稳定好多年)
  7. PPP和PDP激活是什么区别
  8. linux网络重设,Linux ADSL拨号上网
  9. 目前人工智能技术,主要有应用于哪些领域?
  10. Spring Security 配置