边缘节点常见问题

节点启动后怎么没有启动80和443端口?

此时可以在日志中可以看到 no available servers to startup 的提示。

有以下几个可能的原因:

  • 可能原因1:你在管理界面中停用了这个节点
  • 可能原因2:你没有部署服务到这个节点所在的集群

同一个边缘节点可以被两个集群使用吗?

可以,在v0.2.6之后增加了单个节点多个集群设置,你可以在”边缘节点 – 集群节点 – 节点列表 – 节点详情 – 修改设置”里修改单个节点的所属集群,其中主集群可以设置一个,从集群可以设置多个。

节点启动正常,但是管理界面显示离线

常见的几个可能原因:

  1. 节点带宽可能已满:比如流量比较大时,或者被攻击时,带宽占满导致无法从节点发送更多的数据,所以无法更新节点状态,此时只需要等待节点使用带宽下降时会自动恢复,无需过多关注;
  2. 节点进程没有启动:请在节点服务器上检查 edge-node 进程是否在运行:px ax|grep edge-node,如果没有在运行,请启动:edge-node start,启动后检查进程和日志(/var/log/edge-node.log)有无异常;
  3. 检查节点是否正在使用正确的配置,请检查节点安装目录下 configs/api_node.yaml (GoEdge v1.2.7之前是configs/api.yaml)文件里的nodeIdsecret是否和节点安装界面上显示的内容一致;如果不一致,请修改后,重启edge-node进程(edge-node restart)生效;并且每个节点的配置文件内容都不相同,不能相互拷贝使用;
  4. 检查节点是否已连接到API节点,或者节点和API节点之间连接不稳定;请检查节点运行日志中是否出现异常,首先在管理界面的节点运行日志中查看是否有异常,如果管理界面中没有出现相关日志,说明节点启动时连接不到API节点,可以到节点所在服务器上找到edge-node安装目录下的 logs/run.log(或者查看/var/log/edge-node.log),检查是否有异常提示;
  5. 检查节点服务器上的时间和管理界面上的时间是否一致(可以使用date命令查看)。

节点和API节点之间连接不稳定

如果边缘节点和API节点之间连接不稳定,可以考虑使用一个中转的网络服务,更多参考 API节点中转

检查时钟

请同步你的所有节点服务器时钟,以使得所有服务器上的时间一致,可以使用 date 命令查看服务器当前时间:

date
如果发现时钟和管理平台所在服务器不一致,可以通过rdate或者ntpdate同步:
rdate -s utcnist.colorado.edu
或者
ntpdate pool.ntp.org

如果发现rdate或者ntpdate命令不存在,请安装对应的命令。

同时也请检查各个服务器上的时区设置是否一致,可以使用:

timedatectl
来查看当前服务器时间的时区。

节点自动升级是连接的外网吗?

节点自动升级功能 不需要 连接外网,实现原理为API节点安装包内包含了新版本的节点安装文件,升级API节点之后,就可以将这些安装文件发送到节点,从而实现解压升级。所以,此功能不会连接外网,更不会产生网络安全问题。

节点可以不使用root安装吗?

可以不使用root用户安装,但是,因为需要监听小端口(<1024的端口)需要root权限,所以远程登录的用户必须可以使用sudo启动edge-node进程。

可以使用负载均衡器对多个节点负载均衡吗?

可以使用负载均衡器(LoadBalancer,简称LB)对多个边缘节点再次负载均衡:

          |----|
User <--> | LB | <--> Node1
          |    | <--> Node2
          |    | <--> Node3
          |----|
步骤如下:

  1. 先使用LB反向代理到这些边缘节点;需要注意的是需要用户IP和节点绑定起来(比如使用Sticky算法),不然有可能出现单个用户同时访问多个节点导致意外情况的发生;
  2. 将这些边缘节点的IP设置为LB的IP,手动或者自动将域名解析到这个IP,这样用户访问的就是LB,然后LB会自动转发到边缘节点。

同一台服务器可以安装两个节点吗?

不可以,除非你使用类似于Docker的容器,然后把节点程序(edge-node)安装在容器中。

节点可以克隆吗?

节点程序、虚拟机、操作系统都可以克隆,但是克隆后,需要修改节点上的配置文件configs/api_node.yaml(GoEdge v1.2.7以前是configs/api.yaml)才能正常使用。

节点配置文件api_node.yaml可以通用吗?

不可以,每个节点都不同,不能相互复制使用,否则会导致数据混乱。

节点上可以安装其他Web服务吗?

节点上可以安装nginx或者httpd等Web服务,但是端口不能和节点正在使用的端口(通常是80/443)冲突。

边缘节点用到nginx、traffic server了吗?

GoEdge边缘节点没有用到httpd、nginx、openrestry或者Apache Traffic Server等任何第三方网络服务软件。

GoEdge文档