目录
目录README.md

eccgateway

EndEdgeCloud web server.

编译

eccgateway打包 在根目录执行以下命令

bash build/build.sh

httpserver打包

进入cmd/httpserver目录,执行以下命令

docker build -t 10.5.26.86:8080/zjlab/httpserver:$(date +%Y%m%d) .

部署

ClusterRoleBinding修改

kubectl edit clusterrolebinding cluster-admin

k8s默认会创建clusterrolebinding,只绑定default下的名为default的serviceacount, 将其修改为绑定eec namespace下default的serviceaccount,如下所示

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
...
  name: cluster-admin
...
subjects:
- apiGroup: rbac.authorization.k8s.io
  kind: Group
  name: system:masters
- kind: ServiceAccount
  name: default
  namespace: eec  # 默认为default,修改为eec

修改eccgateway-secret.yaml中的证书内容,在master节点上执行secret中的命令,将输出结果填写在secret中 若/etc/kubernetes/admin.conf不存在,则使用kubectl的证书$HOME/.kube/config

  kubernetes-key: (cat /etc/kubernetes/admin.conf | grep client-key-data | awk '{print $2}')
  kubernetes-cert: (cat /etc/kubernetes/admin.conf | grep client-certificate-data | awk '{print $2}')
  kubernetes-ca:  (cat /etc/kubernetes/admin.conf | grep certificate-authority-data | awk '{print $2}')

将build/deploy目录下的文件拷贝至master节点,执行以下命令

kubectl create -f mysql-deployment.yaml

kubectl create -f mysql-service.yaml

kubectl create -f httpserver-deployment.yaml

kubectl create -f httpserver-service.yaml

kubectl create -f eccgateway-deployment.yaml

kubectl create -f eccgateway-service.yaml

kubectl create -f clusterCRD.yaml

kubectl create -f eecnode-configmap.yaml

使用kubectl建立云端集群,并给云端节点打上云端集群的labels

kubectl create -f cloud-cluster.yaml
kubectl label nodes {{节点名称}} kubeedge=cloudcore

验证

当pod运行后,执行以下命令,若返回namespaces下的所有pod,即认为pod运行正常

curl http://10.5.26.50:10193/kubernetes/api/v1/namespaces/default/pods

本地调试步骤

1、在eccgateway的根目录下,编译二进制

CGO_ENABLED=0 go build .

2、将要连接的集群的证书和集群配置文件放至eccgateway代码库根目录的ssl文件夹中

3、编辑conf/app.conf,修改参数

leaderElectionEnable = false

4、启动eccgateway

关闭选举功能,同时将日志输出打印至标准输出中

kubernetesCert=./ssl/ca.crt kubernetesKey=./ssl/ca.key \
KubernetesAddress=https://10.5.26.181:8443/ \
kubeconfig=ssl/config \
HarborUser=wangxj HarborPassword=Eec123456 \
HarborAddress=http://10.5.26.86:8080 \
./eccgateway --leader-election-enable false --logtostderr true
关于

本项目是面向城市大脑研发,融合设备端、边缘侧和云侧多个计算节点通过网络互联而构成的松耦合分布式系统。分布式系统对用户透明,通常具有分布性、自治性、并行性和全局性等特征。通过控制和管理端边云分布式环境中的软件和硬件资源,提供给用户和城市大脑其他软件的接口和环境。

568.0 KB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

©Copyright 2023 CCF 开源发展委员会
Powered by Trustie& IntelliDE 京ICP备13000930号