
回复
EdgeMesh 满足边缘场景下的新需求(如边缘资源有限、边云网络不稳定、网络结构复杂等),即实现了高可用性、高可靠性和极致轻量化:
用户价值
步骤1: 去除 K8s master 节点的污点(master不可调度)
kubectl taint nodes --all node-role.kubernetes.io/master-
步骤2: 给 Kubernetes API 服务添加过滤标签(kube-proxy跟EdgemEdge代理有冲突)
kubectl label services kubernetes service.edgemesh.kubeedge.io/service-proxy-name=""
步骤3 启用 KubeEdge 的边缘 Kube-API 端点服务:启用 KubeEdge 的边缘 Kube-API 端点服
步骤1: 在云端,开启 dynamicController 模块,配置完成后,需要重启 cloudcore
# 使用yaml文件
vim /etc/kubeedge/config/cloudcore.yaml
modules:
...
dynamicController:
enable: true
...
# 如果使用容器
kubectl edit cm cloudcore -n kubeedge
# 修改 dynamicController :false 为 true
步骤2: 在边缘节点,打开 metaServer 模块(如果你的 KubeEdge < 1.8.0,还需关闭旧版 edgeMesh 模块),配置完成后,需要重启 edgecore
vim /etc/kubeedge/config/edgecore.yaml
modules:
...
edgeMesh:
enable: false
...
metaManager:
metaServer:
enable: true
...
步骤3: 在边缘节点,配置 clusterDNS 和 clusterDomain,配置完成后,需要重启 edgecore
vim /etc/kubeedge/config/edgecore.yaml
modules:
...
edged:
clusterDNS: 169.254.96.16
clusterDomain: cluster.local
...
如果 KubeEdge >= v1.12.0,请这样配置:
vim /etc/kubeedge/config/edgecore.yaml
modules:
...
edged:
...
tailoredKubeletConfig:
...
clusterDNS:
- 169.254.96.16
clusterDomain: cluster.local
...
步骤4: 最后,在边缘节点,测试边缘 Kube-API 端点功能是否正常
curl 127.0.0.1:10550/api/v1/services
获取数据# Heml安装脚本
wget https://get.helm.sh/helm-v3.5.3-linux-amd64.tar.gz
tar zxf helm-v3.5.3-linux-amd64.tar.gz
cp -pr linux-amd64/helm /usr/local/bin/
helm version
安装EdgeMesh:
kubectl -n kubeedge edit configmap edgemesh-agent-cfg
helm install edgemesh --namespace kubeedge \
--set agent.image=kubeedge/edgemesh-agent:v1.12.0 \
--set agent.relayNodes[0].nodeName=k8s-node1,agent.relayNodes[0].advertiseAddress="{xxx}" \
https://raw.githubusercontent.com/kubeedge/edgemesh/release-1.12/build/helm/edgemesh.tgz