3 Star 16 Fork 3

xuh/经纬城市大脑边云计算平台

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
README.md 2.83 KB
一键复制 编辑 原始数据 按行查看 历史
wangf 提交于 3年前 . update 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
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/xuhcoder/eccgateway.git
git@gitee.com:xuhcoder/eccgateway.git
xuhcoder
eccgateway
经纬城市大脑边云计算平台
master

搜索帮助