有奖捉虫:办公协同&微信生态&物联网文档专题 HOT
本文描述如何使用 edgectl 脚本添加用户的第三方节点,和 CVM 以及 ECM 不同,此节点属于用户所有,可能位于用户 IDC 机房内、办公室或者各种类型边缘地域,这些机器可以通过互联网访问腾讯云服务。这种场景用户可以从云端下载 edgectl 脚本本地执行后,将节点加入到边缘集群中。

前置条件

请参考 集群开启内外网访问 使能外网访问或者内网访问能力。
注意
内网访问使能后,如您需要添加内网 CVM 机器,暂时只能使用脚本添加节点。

前提准备

按照以下条件准备好边缘节点:
节点来源:可使用 云服务器控制台边缘计算机器控制台 中已有的服务器、其他平台或自建机房的服务器。
节点处理器:支持 x86_64、ARM64、ARM。
支持的操作系统如下(经过测试可以适配):
Ubuntu 20.04/18.04/16.04
Centos 8.0/7.8/7.6/7.2
TencentOS Server 3.2/3.1/2.6/2.4
Tencent Linux Release 2.2 (Final)
Debian 10.2/9.0
SUSE Linux Enterprise Server 12 SP3
请确保需添加节点已安装 wgetsystemctliptables
节点网络需具备主动访问公网能力。
说明
由于不同用户部署的操作系统环境各不一致,不排除某些配置影响无法成功添加节点,这时请详细查看节点上 edgectl 的部署日志排查问题:/tmp/tkeedge-install.log

操作步骤

1. 登录 容器服务控制台,选择左侧导航栏中的集群
2. 在集群管理页,单击需要添加边缘节点的边缘集群 ID,进入该集群详情页。
3. 选择页面左侧节点管理 > 节点,进入节点列表页面,单击脚本添加节点
4. 在弹出的“添加边缘节点”窗口中,按照以下步骤进行配置,得到节点侧初始化脚本。
4.1 在“配置”步骤中,获取初始配置,并可修改以下参数值:



容器目录:设置容器和镜像存储目录,建议存储到数据盘。例如 /var/lib/docker。
过期时间:设置"安装脚本"命令的过期时间,可配置范围为 1分钟 ~ 24小时,默认配置为 24 小时。
4.2 单击下一步,添加自定义脚本:



pre-install脚本:这里可以设置节点接入的前置脚本,用于在特殊条件下执行做一些清理或者预配置相关工作,增强不同场景适配性。
post-install脚本:这里可以设置节点接入的后置脚本,用于在节点成功接入后,执行一些后续清理或者配置相关工作,增强不同场景适配性。
注意
在上图中,因为使能了“内网访问”,会提示需要执行命令,如果用户想要通过内网添加 CVM 节点,请复制黏贴这些指令到 pre-install 脚本;如果通过外网添加节点,则忽略这些指令。
4.3 在“安装脚本”步骤中,复制脚本命令用来获取到对应的节点初始化脚本。



5. 登录已准备好的服务器,并切换至 root 账户执行已复制的命令。
说明:
执行该命令会自动下载 edgectl 边缘节点管理工具。
此步骤获取的 edgectl 有效期为 “过期时间” 所设置的时间,请在有效期内完成添加节点操作。过期后请重新执行脚本添加节点操作,重新获取 edgectl。
6. 查看 edgectl 命令,运行初始化节点操作。更多 edgectl 操作请参见 edgectl 边缘节点管理工具说明
./edgectl -h

Usage:
edgectl command [flags]

Available Commands:
check Check the edge node if to be add to clusters
install Install components to edge node
clear Clear edge node and recovery as usual

Flags:
-h, --help Help for edgectl
./edgectl install -n Your-Node-Name -i Your-Interface-Name
说明
执行该命令会检查主机环境并安装边缘节点所需的组件,自动将节点注册至边缘集群。
受网络和安装速度影响,添加节点操作可能等待数分钟。
查看日志文件确认安装过程信息:/tmp/tke-edge-install.log
7. 确认命令执行成功后,前往“节点列表”页面并刷新,即可查看已新增的节点。您还可进行节点的其他操作,例如驱逐、移出、封锁、编辑标签或取消封锁等。

相关操作

关闭集群内外网访问

在集群的“基本信息”页面,关闭“外网访问”和“内网访问”即可。




边缘节点权限问题

1. 通过边缘集群 K8S 所管理的边缘节点,当前节点上权限默认设置为 system:node,关于 system:node 权限的说明请参考 Using Node Authorization
2. 在边缘节点上的 kubeconfig 文件将默认使用 system:node 权限,如需获取集群凭证用以操作集群,请参考 连接集群

边缘节点带 GPU 相关

边缘集群中已经提交了一个 nvidia-device-plugin 的 DaemonSet,镜像版本 nvidia-device-plugin:v0.9.0,若边缘节点需要部署 DaemonSet,执行以下命令便可自动部署到相应节点:
kubectl label nodes ${NODE_NAME} nvidia-device-enable=enable
取消可执行如下命令:
kubectl label nodes ${NODE_NAME} nvidia-device-enable-
其中 ${NODE_NAME} 为节点名称。

腾讯云可支持带 GPU 的边缘节点操作系统

支持的 NVIDIA 系列 GPU 版本:
GN10XGN10Xp
支持的 Linux 系统:
CentOS 7.2 64位
CentOS 7.6 64位
CentOS 7.7 64位
CentOS 7.8 64位
CentOS 7.9 64位
Ubuntu Server 18.04.1 LTS 64位
TencentOS Server 2.4
Tencent Linux Release 2.4
以上相应系统带 NVIDIA 系列 GPU 版本边缘集群会默认安装 GPU 驱动,其他系统用户可自行安装相应 GPU 驱动。

脚本添加带 GPU 的 CVM 节点

用脚本添加的边缘节点边缘集群不负责安装 GPU 驱动,GPU 驱动用户可自行安装。
注意
添加带 GPU 的 CVM 系统版本是 边缘节点系统 的子集,若边缘节点的系统不支持,添加节点可能会失败,请遵守 边缘节点的系统 要求。