linux怎么查看本机内存大小
226
2022-10-23
KubeEdge官方示例运行成功_Counter Demo 计数器
运行KubeEdge官方示例_Counter Demo 计数器
KubeEdge Counter Demo 计数器是一个伪设备,用户无需任何额外的物理设备即可运行此演示。计数器在边缘侧运行,用户可以从云侧在 Web 中对其进行控制,也可以从云侧在 Web 中获得计数器值,原理图如下:
先安装好kubeedge
#在k8s-master 上执行,查看节点 kubectl get node NAME STATUS ROLES AGE VERSION k8s-master Ready master 34h v1.19.2 k8s-node-1 Ready agent,edge 79m v1.19.3-kubeedge-v1.5.0
云端操作 在k8s-master 上执行
#下载示例代码 git clone $GOPATH/src/github.com/kubeedge/examples #使用官方的示例仓库github会比较慢,这里可以使用我的加速仓库 git clone $GOPATH/src/github.com/kubeedge/examples #创建 device model cd $GOPATH/src/github.com/kubeedge/examples/kubeedge-counter-demo/crds #创建model kubectl create -f kubeedge-counter-model.yaml #创建device cd $GOPATH/src/github.com/kubeedge/examples/kubeedge-counter-demo/crds #根据你的实际情况修改matchExpressions: vim kubeedge-counter-instance.yaml #主要修改的地方 - key: 'kubernetes.io/hostname' values: - k8s-node-1 #这里是节点名称 #运行yaml kubectl create -f kubeedge-counter-instance.yaml #部署云端应用 #云端应用web-controller-app用来控制边缘端的pi-counter-app应用,该程序默认监听的端口号为80,此处修改为8089 cd $GOPATH/src/github.com/kubeedge/examples/kubeedge-counter-demo/web-controller-app vim main.go beego.Run(":8089") #构建镜像 make all make docker #部署web-controller-app cd $GOPATH/src/github.com/kubeedge/examples/kubeedge-counter-demo/crds kubectl apply -f kubeedge-web-controller-app.yaml #部署边缘端应用 #边缘端的pi-counter-app应用受云端应用控制,主要与mqtt服务器通信,进行简单的计数功能。 #修改代码与构建镜像 #需要将Makefile中的GOARCH修改为amd64才能运行该容器。默认是arm架构的 cd $GOPATH/src/github.com/kubeedge/examples/kubeedge-counter-demo/counter-mapper vim Makefile GOARCH=amd64 go build -o pi-counter-app main.go #构建镜像 make all make docker #部署Pi Counter App cd $GOPATH/src/github.com/kubeedge/examples/kubeedge-counter-demo/crds kubectl apply -f kubeedge-pi-counter-app.yaml #说明:为了防止Pod的部署卡在`ContainerCreating`,这里直接通过docker save、scp和docker load命令将镜像发布到边缘端 #因为边缘端没有这个镜像,只能手动弄过去,或者先上传到私有镜像仓库, 边缘端配置私有仓库地址,就可以直接从私有仓库下载 #这里就手动弄到边缘端 docker save -o kubeedge-pi-counter.tar kubeedge/kubeedge-pi-counter:v1.0.0 #传到边缘端 scp kubeedge-pi-counter.tar root@172.16.72.142:/data/ #在边缘端执行 docker load -i kubeedge-pi-counter.tar #在边缘端查看容器启动日志,有没有报错 docker logs -f counter-container-id docker logs -f 8e2359446752
体验demo
KubeEdge Demo的云端部分和边缘端的部分都已经部署完毕
kubectl get pods -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
kubeedge-counter-app-6984dcb4dd-jz5nh 1/1 Running 0 32m 172.16.72.143 k8s-master
浏览器访问: hostNetwork 模式,所以直接访问即可,
表示测试成功
部署可能出现的问题
访问不了
ps 找到kubeedge-counter-appdocker exec -it 21b11899d52f /bin/bash修改不了,是个二进制文件了
修改源码,重新编译打包
cd $GOPATH/src/github.com/kubeedge/examples/kubeedge-counter-demo/web-controller-app vim views/layout.html #把这个替换成 https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js #重新编译打包 make all make docker cd $GOPATH/src/github.com/kubeedge/examples/kubeedge-counter-demo/crds #删除 kubectl delete -f kubeedge-web-controller-app.yaml #重新启动 kubectl apply -f kubeedge-web-controller-app.yaml
8080端口不通 ---又是坑--- 报错: dial tcp 127.0.0.1:8080: connect: connection refused
#查看云端日志 docker ps kubeedge-counter-app 找到容器id docker logs -f 6e768c3db4eb 报错: dial tcp 127.0.0.1:8080: connect: connection refused kubectl -s get nodes curl http://127.0.0.1:8080 8080端口不通 #查看kubelet日志 journalctl -xeu kubelet journalctl -f -u kubelet #报错 Failed to get system container stats for "/system.slice/docker.service": failed to get cg 原因:kubernetes和docker版本兼容性问题 vim /usr/lib/systemd/system/kubelet.service.d/10-kubeadm.conf [Service] CPUAccounting=true ## 添加 CPUAccounting=true 选项,开启 systemd CPU 统计功能 MemoryAccounting=true ## 添加 MemoryAccounting=true 选项,开启 systemd Memory 统计功能 systemctl daemon-reload systemctl restart kubelet 还是没有用------------8080端口不通-------- netstat -tpnl kubectl cluster-info vim /etc/kubernetes/manifests/kube-apiserver.yaml insecure-port字段值为0,表示默认禁用了8080端口 --insecure-port=8080 重启apiserver容器 -----成功8080通了------- docker restart ce5511548fe0
我们需要暴露 Kubernetes apiserver 的 端口8080用于与 cloudcore/kubectl 交互。请按照以下步骤在 Kubernetes apiserver 中启用 端口。这样可以在边缘节点执行 kubectl get nodes -s 192.169.0.10:8080等命令,就像在 master 节点上一样。kubectl get nodes -s 172.16.72.143:8080
-------计数器终于计数了-------成功----------------访问:logs -f dc59f4f3a877(kubeedge-counter-app)docker logs -f dc59f4f3a877(kubeedge-pi-counter)
参考链接: https://dogfei.cn/archives/kubeedgehttps://zhuanlan.zhihu.com/p/342626632
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~