跳到主要内容

边缘集群

边缘计算侧重在更为靠近用户的网络边缘提供 IT服务环境和云计算能力,强调靠近用户,从而提高处理效率、降低网络时延。

添加普通集群

边缘集群是由普通集群转化而来,因此平台首先得有对应的普通集群,用户根据业务需求将普通集群转化成边缘集群。

系统支持通过界面的方式创建集群,三种方式添加集群,分别是:接入服务商提供的主机、导入已有 Kubernetes集群、添加主机自建 Kubernetes集群。

接入服务商提供的主机

自定义添加主机是通过添加已有主机,提供已有主机的 IPSSH端口、用户名、密码的方式为集群添加主机。操作步骤如下所示。

(1) 平台导航进入[基础设施/集群管理],展示出集群管理页面。

(2) 点击左上角的“添加集群”,可看到选择添加方式,选择“接入服务商提供的主机”,如下图所示。

test

(3) 选择使用范围,输入集群名称、集群描述等信息,选择“自定义添加主机”。

(4) 在主机配置中,点击添加主机,在弹框中有两种添加主机的方式,分别为“不同用户名密码添加主机”、“相同用户名密码批量添加主机”,如下图所示。

test

相同用户名密码批量添加主机的配置页面如下图所示。

test
提示

主机用户名必须为 root,否则由于权限的问题添加的节点可能不成功。

(5) 为添加好的主机定义主机角色,可选角色为:master(控制节点主机)或 worker(计算节点主机),用户创建时可以创建单 master集群或多 master高可用集群,集群中的 master节点数量不能有两个。

提示

添加的节点必须 SSH连通,否则可能添加异常节点。

(6) 当 Master节点数量大于2时,高可用集群需要配置虚 IP,用于访问可漂移的 Master节点,需填写一个与节点 IP相同网段的空 IP即可,如下图所示。

集群配置中,可填写网络规划,默认为自动选择(系统将按照现有网络规避冲突的网段,自动选择 Pod CIDRService CIDR);若取消勾选自动选择,可自定义 pod CIDRService CIDR

支持选择 Docker存储驱动,在添加的主机中,需要满足所选的驱动类型的配置。驱动分为两种,分别是:Devicemapper loop(需确保添加主机的 docker未使用过 thinpool模式;若已使用过需手动卸载 docker,方能使 Devicemapper loop生效)、Devicemapper thinpool(若使用 thin pool模式,需手动配置存储池等参数后,方可正常使用 docker)。

备注

自定义的 Pod CIDRService CIDR不能与 VPCVPC内已有 Kubernetes集群使用的网段重复,创建成功后不能修改,Service地址段也不能和 Pod地址段重复。

(7) 单击<确定>即可创建,创建需要一定时间,待创建成功后,可点击进去集群详情,若创建失败,可点击查看日志,查看失败原因,如有需要,可点击重试安装,再次执行安装,或删除集群,重新配置。

导入已有Kubernetes集群

(1) 平台导航进入[基础设施/集群管理],进入展示出集群管理页面。

(2) 点击“添加集群”,可看到选择添加方式,选择“导入已有 Kubernetes集群”,提供图中所需要的参数,如下图所示。

test

(3) 若选择的认证方式为“API Token”的方式,需提供已有集群的 API TokenAPI Host;若选择 KubeConfig的认证方式,需上传一个 KubeConfig文件。

(4) 填写参数后,单击下方<确定>按钮即可。

(5) 添加好集群后,可点击集群名称,查看集群相关信息。

添加主机自建Kubernetes集群

(1) 平台导航进入[基础设施/集群管理],向我们展示出集群管理页面。

(2) 点击“添加集群”,可看到选择添加方式,选择“添加主机自建 Kubernetes集群”,如下图所示。

test

(3) 按照提示中给出的步骤,在主机中执行命令,即可添加集群。添加完成后,集群中只有 master节点,可通过平台界面另行添加worker节点。

边缘节点集群详情

集群管理是对平台上的集群资源的管理,包括集群基本信息、主机节点、分区管理、节点标签、网络方案、集群存储以及集群内插件的管理。

主机列表

可查看主机中各节点的资源使用情况、告警监控、调度状态、节点基本情况时间等详细信息。

用户可以对集群进行添加节点、查看主机详情、删除节点、监控、告警设置、进入集群终端、切换调度状态和节点维护等操作。

主机详情

用户查看主机详情的操作步骤如下所示。

(1) 平台导航进入[基础设施/集群管理],进入集群管理页面。

(2) 点击要查看主机详情的集群,进入集群总览页面,选择“主机列表”页签,点击要查看详情的主机,进入主机详情页面。

用户在主机详情页可以查看资源配额信息,版本信息,标签信息,节点状态监控信息,容器组信息。其中节点监控信息包括 DiskPressureMemoryPressurNetworkUnavailablePIDPressurekubelet readyRegister类型节点的状态信息,如下图所示。

test

(3) 切换至监控页面用户可以查看的常规指标信息有:CPU监控数据、内存、网络、磁盘、网络数据包、TCP数据。

test

GPU指标监控数据包括:GPU温度、GPU功率、GPU SM ClocksGPU Memory ClocksGPU UtilizationGPU Memory Utilization

(4) 切换至“告警策略”页面,用户可以为当前主机创建告警策略,还可以对告警策略执行删除、修改、停用/启用、查看记录,清除记录等操作,页面如下图所示。

进入终端

在添加主机节点的右侧,单击<终端/集群管理>按钮,即可进入集群管理的终端;上步会有信息类提示由于容器本身无状态且不可变的特性,以防容器销毁后,对容器内部做的改动无法保留,建议不要直接修改容器中内容(有状态容器中存储映射出来的目录除外)。

若单击<知道了>按钮,本次打开的终端中该提示消失;若单击<不再提醒>按钮,再次打开该节点将不再提示此信息;终端右上角可关闭或最小化终端。

切换调度状态

可分为正常调度和暂停调度两种状态:通过切换按钮来控制,正常调度允许分配新容器,暂停调度不允许分配新容器,正常运行的不受影响。

节点维护

节点维护会关闭节点调度,并迁移节点上容器。维护结束后,可点击退出维护结束维护状态,并开启节点调度。具体操作如下所示。

(1)主机节点列表右侧操作,点击节点维护。

(2)进入维护状态后将会关闭节点调度并疏散节点上容器。

如果该节点被集群网络出口、负载均衡占用,或存在绑定节点容器、host存储等特殊情况,将会弹框列出,如下图所示。

test

管理员确认迁移风险后,可以点击强制维护按钮,强制迁移容器。drain命令迁移容器有失败概率,如果迁移失败,管理员可以退出维护状态,重新进入节点维护。

监控

单击监控告警中左侧图标,可跳转到主机详情页中的监控页面。

告警设置

(1) 单击监控告警右侧图标,跳转到主机详情页中的“告警策略”页面,自定义告警策略名称,选择监控周期,如5分钟检测一次是否满足告警条件。

(2) 单击<下一步>设置告警规则,可设置 CPU利用率、磁盘使用率(节点磁盘的任意挂载点满足规则)、内存使用等告警策略;可点击“添加”或“删除”图标来添加或删除规则。

(3) 单击<上一步>重新配置参数设置,单击<下一步>配置告警行为,若选择发送通知,通知方式可以配置邮箱、短信、企业微信、Webhook和钉钉等方式,如下图所示。

test

主机详情

点击所要查看的主机名称即可进入该主机的详情页,该页可展示主机的基本信息及主机中容器相关信息,如下图所示。

test

还可查看主机的资源监控,包括 CPU、内存、网络的监控信息,如下图所示。

可跳转至该主机的所有告警策略;在跳转后的页面可执行创建告警策略、忽略、删除、修改、停用、启用策略等操作。

可对服务的调度进行管理,用户可在此处通过配置键值来添加对应的污点,从而对服务及节点的亲和性进行配置。

test

标签管理

通过该页面,用户可以管理维护基础设施中服务器节点的标签键值对。

通过标签可以实现诸多特性,本质上是实现主机节点的分类,平台用户使用标签,来实现特定规则的容器调度绑定策略。在 k8s中节点标签可以代表不同的拓扑域,例如机架、机房、物理服务器、地域、分区等等各种现实概念。例如“region:beijing”,标签键“region”是一个拓扑域,代表“地域”;标签值“beijing”代表地域为“北京”的node。此拓扑域用于设置应用的节点调度规则,基础设施管理员可以提前规划。

标签管理页面

  • 创建标签:通过创建标签按钮,可以创建一组完整的标签键值对,可以理解为将期望的分类先创建好,然后再“主机节点”的操作上进行添加绑定。
  • 修改标签:未进行绑定主机的标签,可以通过修改标签按钮来实现标签键值修改。
  • 删除标签:未进行绑定主机的标签,如再无需要,可以通过该操作进行删除。

主机列表页面

  • 标签筛选:通过标签筛选,可以实现筛选特定主机,更便于系统管理员进行管理维护。
  • 管理标签:主机列表操作列,点击管理标签按钮,可以查看当前主机所有的标签值,同时可以进行新增删除;主机详情页,管理标签卡片,也可以完成对标签的增删改操作。

应用创建流程

添加服务:前提系统管理员已在集群设置已开启了“允许绑定节点”功能,用户可以在添加服务流程中,绑定标签来实现部署在指定对应主机上这一能力。

网络出口

支持服务代理、负载均衡和服务网格出口三种网络代理服务。此处主要讲解服务代理和负载均衡,服务网格出口会在服务网格中讲解。

服务代理

切换[全局/基础设施/集群管理],选择某个集群点击名称进入详情,点击切换到网络出口页面,选择服务代理,如下图所示。

test

添加网络出口的步骤如下所示。

(1) 单击<添加网络出>口按钮,选择若干个代理节点(使用一个节点是单点代理服务,使用多个节点是高可用代理服务)作为服务网络代理,并选择对应网卡,保证和集群内外的网格都是通的。

(2) 选择服务出口类型,公网或内网,标识该服务出口是在内网中还是公网上。

(3) 填写一个网络出口名称。

(4) 提供一个服务出口 IP,需要保证此 IP能够映射到部署节点的网卡 IP,例如公有云环境,出口 IP使用公网 IP,映射到内网节点 IP

(5) 设置服务域名,该操作可选。

(6) 添加完成后,点击右下角<保存>按钮方可生效。

警告

添加代理节点时,要保证服务出口 IP已经映射到了代理节点 IP上,否则网络出口无法使用。

  • 编辑网络出口:点击右侧的<编辑>按钮,进入可编辑状态;编辑完成后点击保存按钮即可保存成功,点击取消按钮,则编辑的内容不生效。
  • 删除网络出口:单击右侧的删除按钮,删除网络出口。需注意的是“删除该网络出口后,已使用此网络出口的服务将不能通过此网络出口被访问”,所以删除网络出口时需谨慎,以免影响正在使用该网络出口的服务。
  • 查看网络出口详情:点击右侧的查看详情按钮,进入详情页面。可查看端口统计和端口使用详情。
  • 设置默认网络出口,单击“设置”按钮,如下图所示。

a. 选择一个网络出口作为默认的网络出口,单击<确定>按钮方可生效如下图所示。

b. 选择后,当创建服务或中间件时,默认选择该网络出口作为服务代理出口。

  • 用户可以通过“操作功能”对服务代理执行编辑,删除,查看详细信息的操作,在详细信息页面用户可以查看端口分配情况以及端口使用详情,如下图所示。
test
备注

初始状态,添加的第一个网络出口,作为默认网络出口。

负载均衡

切换[全局/基础设施/集群管理],选择某个集群点击名称进入详情,点击切换到网络出口页面,选择负载均衡,如下图所示。

test

创建负载均衡

点击创建负载均衡,进入到负载均衡创建页,如上图所示。

高级配置

日志管理可以开启日志输出到宿主机目录,通过配置文件可修改输出的格式。

编辑负载均衡

点击卡片右上角<编辑>操作,编辑负载均衡器配置,保存即可。

警告

编辑负载均衡器可能会导致负载均衡重启,使用该负载均衡的服务都无法访问,请谨慎操作。

编辑负载均衡的相关参数说明如下所示。

  • 备注名:负载均衡器名称。
  • 选择配置:根据实际需要,设置负载均衡器计算资源配置,具体配置可咨询现场工程师。
  • 部署方式:单点或高可用。
  • 部署节点:单点模式选择一个节点,高可用模式可选择两个以上节点。
  • 授权租户:可授权给某个租户、某几个租户或所有租户共享。
  • 备注:备注信息。
  • 高级配置:可自定义配置文件。
  • 删除负载均衡:点击卡片右上角“删除”操作,弹框确认即可。

插件管理

插件管理包含两部分插件,一部分是平台的系统插件,分别对应平台中的日志、发现服务、监控等能力,同时提供了部分第三方实用插件,此类插件支持安装卸载等操作。

所有插件均可以设置,包括切换插件所在节点,以及设置插件所占用的 CPU、内存,来控制插件在集群中资源的限制。另外平台提供了部分第三方原生或开源的 Dashboard管理界面,直接可以打开管理插件。

进入集群后,右上角操作,点击集群插件管理,进入插件管理页面。

  • 安装插件:在系统初始化后,基础设施管理员可以根据业务环境需求,通过安装插件实现相应组件的部署;
  • 设置插件:通过该入口实现设置插件所占用的 CPU、内存以及节点绑定,以便于控制插件在集群中的资源限制。
  • 卸载插件:如果插件本身有异常,或者不再需要时,可以通过卸载插件来释放资源占用,完整的卸载掉插件。

开启单个边缘集群

(1) 基础设施管理员及系统管理员导航点击[基础设施/集群管理]菜单项,进入集群列表页面。

(2) 点击操作列的“支持边缘集群”按钮,进入集群配置页面。

(3) 弹框输入 master的密码,链接成功后,单击<确定>按钮,普通集群转化边缘集群配置完成。已配置集群列表的集群名称下方有边缘集群的标识,进入集群详情,点击“主机列表”,master增加 edgecloud的标签。

(4) 进入集群详情,点击“集群设置”,页面最下方增加支持边缘集群功能,当前显示“当前为边缘集群”。

test

边缘集群日志查看

(1) 点击[基础设施/集群管理],点击默认集群的下拉三角图标,点击支持边缘集群。

(2) 点击集群详情的集群设置,找到边缘集群,点击查看日志。

卸载边缘集群

(1) 基础设施管理员及系统管理员导航点击[基础设施/集群管理]菜单项,进入集群列表页面。

(2) 点击操作列的“卸载边缘集群”按钮,进入集群配置页面。

(3) 弹框输入 master的密码,单击<确定>按钮,卸载边缘集群操作完成。进入集群详情,点击“集群设置”,当前显示“当前为普通集群”。

开启高可用边缘集群

(1) 基础设施管理员及系统管理员导航点击[基础设施/集群管理]菜单项,进入集群列表页面。

(2) 点击操作列的“支持边缘集群”按钮,进入集群配置页面。

(3) 弹框输入所有 master的密码,链接成功后,单击<确定>按钮,普通集群转化边缘集群配置完成。已配置集群列表的集群名称下方有边缘集群的标识,进入集群详情,点击“主机列表”,master增加 edgecloud的标签。

test

(4) 进入集群详情,点击“集群设置”,页面最下方增加支持边缘集群功能,当前显示“当前为边缘集群”。

卸载高可用边缘集群

(1) 基础设施管理员及系统管理员导航点击[基础设施/集群管理]菜单项,进入集群列表页面。

(2) 点击操作列的“卸载边缘集群”按钮,进入集群配置页面。

(3) 弹框输入所有 master的密码,单击<确定>按钮,卸载高可用边缘集群操作完成。进入集群详情,点击“集群设置”,当前显示“当前为普通集群”。

添加边缘节点

(1) 基础设施管理员选择[基础设施/集群管理]页签,进入集群列表页面,找到要添加主机节点的边缘集群,点击边缘集群名称链接,进入集群详情页面,切换至“主机列表”页签,单击<添加主机节点>按钮。

(2) 节点类型选择“边缘节点”,通过自定义添加主机的方式添加,输入机器的IP地址,单击<确定>按钮,进入集群节点添加页面,如下图所示。

test

(3) 边缘节点添加完成后,主机节点列表显示如下图所示。

test
提示
  • 边缘云与中心云网络断开,边缘云可自治
  • 中心云会同步边缘云创建的租户和项目。
  • 多个边缘云的项目会同步到中心云。
  • 边缘云断开与中心云的网络后创建的项目在其网络重新连接后可同步至中心云。
  • 限于边缘节点的特性,目前有一些pod不支持跑在边缘节点。比如calico,fluentd,kube-proxy等,目前可以手动禁止该类pod部署到边缘节点中。以fluentd为例配置如下所示。
kubectl edit ds -n kube-system fluentd
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: node-role.kubernetes.io/agent
operator: DoesNotExist
containers: