kubeedge学习(3) kubeedge-counter-demo计数器演示

kubeedge-counter-demo计数器演示

计数器是一个伪设备,用户无需任何额外的物理设备即可运行此演示。

在这里插入图片描述

计数器运行在边缘侧,用户可以从云端在Web中对其进行控制,也可以从云端在Web中获取计数器值。

部署go环境

下载地址

https://studygolang.com/dl

tar xf go1.17.11.linux-amd64.tar.gz -C /usr/local/


vi /etc/profile
export GOROOT=/usr/local/go
export PATH=$GOROOT/bin:$PATH

构建镜像

下载代码

https://github.com/kubeedge/examples

cd examples-master/kubeedge-counter-demo/web-controller-app

make
make docker

请添加图片描述

cd examples-master/kubeedge-counter-demo/counter-mapper

make
make docker

请添加图片描述

查看镜像

docker images | grep "counter"

请添加图片描述

部署服务

cd /root/examples-master/kubeedge-counter-demo/crds

vi kubeedge-counter-instance.yaml


apiVersion: devices.kubeedge.io/v1alpha2
kind: Device
metadata:
  name: counter
  labels:
    description: 'counter'
spec:
  deviceModelRef:
    name: counter-model
  nodeSelector:
    nodeSelectorTerms:
    - matchExpressions:
      - key: ''
        operator: In
        values:
        - edge01   #修改之前部署的节点名字

status:
  twins:
    - propertyName: status
      desired:
        metadata:
          type: string
        value: 'OFF'
      reported:
        metadata:
          type: string
        value: '0'
        
        
 #部署
kubectl apply -f .

#如果出现下面的问题

unable to recognize “kubeedge-web-controller-app.yaml”: no matches for kind “Role” in version “rbac.authorization.k8s.io/v1beta1”
unable to recognize “kubeedge-web-controller-app.yaml”: no matches for kind “RoleBinding” in version “rbac.authorization.k8s.io/v1beta1”

解决方法

vi kubeedge-web-controller-app.yaml 

---
apiVersion: rbac.authorization.k8s.io/v1   #修改
kind: Role
metadata:
  name: kubeedge-counter
  namespace: default
rules:
- apiGroups: ["devices.kubeedge.io"]
  resources: ["devices"]
  verbs: ["get", "patch"]

---
apiVersion: rbac.authorization.k8s.io/v1  #修改
kind: RoleBinding
metadata:
  name: kubeedge-counter-rbac
  namespace: default
subjects:
  - kind: ServiceAccount
    name: default
roleRef:
  kind: Role
  name: kubeedge-counter
  apiGroup: rbac.authorization.k8s.io
  
#重新部署
kubectl apply -f .

验证

kubectl get pod 
NAME                                    READY   STATUS    RESTARTS   AGE
kubeedge-counter-app-6f88f7cb5c-9pd5k   1/1     Running   0          2m15s
kubeedge-pi-counter-68c86dc747-rdvh9    1/1     Running   0          2m15s

网页访问云端ip

请添加图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值