kubeedge-counter-demo 示例

本文是基于github上提供的kubeedge-counter-demo进行的。

1、准备工作

1)kubeedge v1.3.1版本安装成功,并正常运行。

2)本文接下来的验证将使用边缘节点bluejoy-jing进行(如果你参考本文进行相关验证,后续边缘节点名称的配置需要根据你的实际情况进行更改)。

3)本示例要求的kubeedge版本必须是v1.2.1+ 。
在这里插入图片描述
4)确保kubernetes apiserver开启了以下配置:

 --insecuret-port=8080
 --insecure-bind-address=0.0.0.0

可以通过修改/etc/kubernetes/manifests/kube-apiserver.yaml文件,并重启k8s-apiserver组件的pod来进行更改。

5)从github上clone示例代码

mkdir /home/bluejoy/kubeedge/kubeedge-example/
git clone https://github.com/kubeedge/examples.git

2、创建device model和device

2.1 创建device model

cd /home/bluejoy/kubeedge/kubeedge-example/examples/kubeedge-counter-demo/crds
kubectl create -f kubeedge-counter-model.yaml

2.2 创建device

根据你的实际情况修改matchExpressions:

cd /home/bluejoy/kubeedge/kubeedge-example/examples/kubeedge-counter-demo/crds
vim kubeedge-counter-instance.yaml
apiVersion: devices.kubeedge.io/v1alpha1
kind: Device
metadata:
  name: counter
  labels:
    description: 'counter'
    manufacturer: 'test'
spec:
  deviceModelRef:
    name: counter-model
  nodeSelector:
    nodeSelectorTerms:
    - matchExpressions:
      - key: 'kubernetes.io/hostname'
        operator: In
        values:
        - bluejoy-jing

status:
  twins:
    - propertyName: status
      desired:
        metadata:
          type: string
        value: 'OFF'
      reported:
        metadata:
          type: string
        value: '0'
kubectl create -f kubeedge-counter-instance.yaml

3. 运行kubeedge Web App

3.1 修改代码

web-controller-app程序默认监听的端口号为80,此处修改为8089,如下所示:
cd /home/bluejoy/kubeedge/kubeedge-example/examples/kubeedge-counter-demo/web-controller-app
vim main.go
package main

import (
        "github.com/astaxie/beego"
        "github.com/kubeedge/examples/kubeedge-counter-demo/web-controller-app/controller"
)

func main() {
        beego.Router("/", new(controllers.TrackController), "get:Index")
        beego.Router("/track/control/:trackId", new(controllers.TrackController), "get,post:ControlTrack")

        beego.Run(":8089")
}

3.2 构建镜像

cd /home/bluejoy/kubeedge/kubeedge-example/examples/kubeedge-counter-demo/web-controller-app
make all
make docker

注意:构建镜像时,请将源码拷贝到GOPATH对应的路径下,如果开启了go mod请关闭。

3.3 部署kubeedge web app

cd /home/bluejoy/kubeedge/kubeedge-example/examples/kubeedge-counter-demo/crds
kubectl apply -f kubeedge-web-counter-app.yaml

3.4 查看部署结果
在浏览器中打开如下网址:http://192.168.56.105:8089/
在这里插入图片描述

4. 运行Pi Counter App

4.1 构建镜像

cd /home/bluejoy/kubeedge/kubeedge-example/examples/kubeedge-counter-demo/counter-mapper
make all
make docker

注意:构建镜像时,请将源码拷贝到GOPATH对应的路径下,如果开启了go mod请关闭。

4.2 部署Pi Counter App

cd /home/bluejoy/kubeedge/kubeedge-example/examples/kubeedge-counter-demo/crds
kubectl apply -f kubeedge-pi-counter-app.yaml

5、通过Web App来控制counter的

5.1 访问Web App

在浏览器中打开如下网址:http://192.168.56.105:8089/
在这里插入图片描述

5.2 执行ON命令

在web页面上选择ON,并点击Execute,可以再edge节点上通过以下命令查看执行结果:

docker logs -f counter-container-id

在这里插入图片描述

5.3 查看counter STATUS

在web页面上选择STATUS,并点击Execute,会在Web页面上返回counter当前的status,如下所示:
在这里插入图片描述
也可以在云端通过如下命令查看status的值:

kubectl get device counter -o yaml -w

在这里插入图片描述

5.4 执行OFF命令

在web页面上选择OFF,并点击Execute,可以再edge节点上通过以下命令查看执行结果:

docker logs -f counter-container-id

在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 25
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 25
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值