更新时间:2025-11-25 GMT+08:00
分享

部署EMS

创建安全组

使用安全组控制EMS服务的端口访问规则,可以更好保护EMS服务的安全性。

为工作负载配置安全组,推荐用户使用CCE Turbo。为了更好保障EMS服务的安全性,CCE Turbo需达到一定的版本要求,具体请参考使用注解为Pod绑定安全组。如果软件版本不满足要求且无法升级,可以跳过本章节,直接部署EMS工作负载

设置安全组可以控制节点和容器的端口访问规则,增强集群的安全性。建议用户基于CCE Turbo 云原生网络2.0的容器网络模型,为EMS的Pod设置安全组规则。Master节点、Node节点和ENI安全组参考CCE官网指导进行设置,EMS服务不做强制要求。

前提条件

需要使用CCE Turbo且软件版本满足要求

  1. 查询VPC网段。您可以在CCE管理页中单击配置中心 > 网络配置,可以查看当前集群的VPC网段。

    图1 查询VPC网段

  2. 查询默认容器子网安全组。在CCE管理页中单击“概览”可以查看当前CCE集群默认容器子网安全组。

    图2 查询子网安全组

  3. 进入安全组管理页,切换到正确Region。单击页面右上角“创建安全组”,创建名为ems-controller、ems-zookeeper、ems-server三个安全组,并记录下三个安全组的ID。

    图3 创建安全组

  4. 单击具体安全组名称,进入安全组信息页面。在“入方向规则”页签下,删除已有全部入方向规则。
  5. 单击“添加规则”,按表1配置入方向安全组。其中VPC网段的值由1获取,默认容器子网安全组的值由2获取。

    如果需要添加多条规则,建议单击“导入规则”进行批量添加。

    图4 添加规则
    表1 EMS安全组推荐配置表

    所属安全组

    优先级

    流量方向

    协议类型

    协议端口

    源地址类型

    源地址

    ems-controller

    1

    入方向

    TCP

    8081

    IP地址

    VPC网段

    ems-controller

    1

    入方向

    TCP

    5219

    安全组

    ems-server

    ems-controller

    1

    入方向

    TCP

    20051

    安全组

    默认容器子网安全组

    ems-server

    1

    入方向

    TCP

    8081

    IP地址

    VPC网段

    ems-server

    1

    入方向

    TCP

    5219

    安全组

    ems-server

    ems-server

    1

    入方向

    TCP

    5219

    安全组

    ems-controller

    ems-server

    1

    入方向

    TCP

    21859

    安全组

    ems-server

    ems-server

    1

    入方向

    TCP

    21859

    安全组

    ems-controller

    ems-server

    1

    入方向

    TCP

    20051

    安全组

    默认容器子网安全组

    ems-zookeeper

    1

    入方向

    TCP

    10000

    安全组

    ems-server

    ems-zookeeper

    1

    入方向

    TCP

    10000

    安全组

    ems-controller

    ems-zookeeper

    1

    入方向

    TCP

    11000

    安全组

    ems-server

    ems-zookeeper

    1

    入方向

    TCP

    11000

    安全组

    ems-controller

    ems-zookeeper

    1

    入方向

    TCP

    10001

    安全组

    ems-zookeeper

    ems-zookeeper

    1

    入方向

    TCP

    10002

    安全组

    ems-zookeeper

    ems-zookeeper

    1

    入方向

    TCP

    20051

    安全组

    默认容器子网安全组

部署EMS工作负载

  1. 添加节点标签。

    1. 登录CCE控制台,单击集群名称进入集群。
    2. 左侧导航栏选择“集群 > 节点管理”,单击“节点”标签,选中需要安装EMS的节点,并单击左上方“标签与污点管理”。
    3. 在弹出的窗口中,在“批量操作”下方单击“新增批量操作”,然后选择“添加/更新”,选择“K8S标签(Labels)”。

      填写需要增加标签的“键”为“ems”,“值”为“true”,单击“确定”。

      图5 添加节点标签

    EMS会识别集群中打上“ems=true”标签的节点,并且只在这些节点上部署工作负载。通过增加和删除标签,可以实现工作负载扩容与缩容。

  2. 创建EMS部署使用的命名空间。进入CCE集群页面,选择左侧“命名空间”,单击右侧“创建命名空间”,名称输入“ems-meta”,单击“确定”。

    图6 创建命名空间

  3. 从EMS提供的OBS桶下载链接,获取EMS部署所需的.tgz格式应用模板文件。
  4. 进入CCE集群页面,选择左侧“应用模板”,单击右侧“上传模板”,在“添加文件”时选择下载的.tgz格式的应用模板文件,添加后单击“上传”。

    图7 上传模板

  5. 在CCE“应用模板”中的“我的模板”页面,单击“安装”,实例名称输入“ems-deploy”,命名空间选择“ems-meta”,配置文件参考表2中的检查项,确定配置正确后单击右下角“安装”按钮进行安装。等待安装完成。

    图8 安装ems模板
    表2 应用模板参数配置检查表

    配置项

    参数说明

    参考值

    hugePages.num

    每个节点上用于存储数据的大页数,EMS采用2M的大页,所以此处表示2MB的个数

    说明:

    划分成大页后,普通页的内存会相应减少,需要合理规划上层推理进程的内存占用。

    大页内存容量*1024/2,例如主机上配置大页容量为500Gi,则这里应该是500*1024/2=256000

    hugePages.requestsMemory

    ems-server所需的最小大页数,如果主机上大页设置为500G,则配置为500Gi

    建议设置为DRAM容量值的一半

    hugePages.limitsMemory

    ems-server所需的最大大页数,如果主机上大页设置为500G,则配置为500Gi

    建议设置为DRAM容量值的一半

    emsController.image

    ems-controller工作负载的镜像地址

    EMS提供

    emsServer.image

    ems-server工作负载的镜像地址

    EMS提供

    sidecar.image

    sidecar容器的镜像地址

    EMS提供

    sidecar.imageCheck.sha256

    sidecar容器的哈希值,与sidecar镜像一一对应

    EMS提供

    zookeeper.image

    ems-zookeeper工作负载的镜像地址

    EMS提供

    zookeeper.zkSidecar.image

    zksidecar容器的镜像地址

    EMS提供

    emsSecurityGroup.emsServerSecurityGroupIDs

    ems-server工作负载的安全组

    3获取,如果没有配置安全组可保持为空

    emsSecurityGroup.emsControllerSecurityGroupIDs

    ems-controller工作负载的安全组

    3获取,如果没有配置安全组可保持为空

    emsSecurityGroup.emsZookeeperSecurityGroupIDs

    ems-zookeeper工作负载的安全组

    3获取,如果没有配置安全组可保持为空

    emsStorectrlApiService.enable

    APIService的创建开关

    false

    init.enable

    节点自动初始化功能开启开关

    true

    release.type

    服务的发布类型

    service

    userGroupId

    容器运行态的用户组

    1001

    zookeeper.pvc.enabled

    自动创建弹性云硬盘开关,用于zookeeper容器存储的业务管理数据

    集群是A3超节点:false

    其他情况:true

    zookeeper.zookeeperNumTotal

    zookeeper容器的副本数

    5

收集运维指标

配置运维指标可以让EMS运维接收到已部署EMS的CCE集群的监控指标,从而提升运维质量,更好地为您提供服务。EMS通过普罗插件收集指标信息,用户需要通过配置第三方监控平台,将EMS的监控平台采集地址配置到AOM上,以便EMS也能获取指标信息。

前提条件

需要EMS运维侧提供EMS监控平台采集地址和凭证。

  1. 登录CCE控制台
  2. 选择“集群管理”,在“集群管理”页面进入待部署的CCE集群。

    图9 集群管理

  3. 选择“集群 > 插件中心”进入 "插件中心"。

    • “插件类型”选择“云原生可观测性”。
    • “插件来源”选择“全部”,找到“云原生监控插件”插件单击“安装”。
      图10 安装插件

  4. 在安装插件页面根据表3进行配置。

    表3 安装插件配置信息

    配置项

    说明

    监控数据上报至AOM服务

    保持现状不修改。

    监控数据上报至第三方监控平台

    开启开关。

    数据上报地址:EMS提供

    认证方式:选择Bearer Token

    身份凭证:EMS提供

    跳过证书认证:选择“是”

    本地数据存储

    保持默认值

    插件规格

    保持默认值

    普罗高可用

    保持默认值

    采集分片数

    保持默认值

    自定义指标采集

    开启开关。

    采集周期:保持默认值

  5. 完成配置后,单击“安装”,等待安装完成。

配置上报CCE告警规则

  1. 登录CCE控制台,单击集群名称进入集群。
  2. 左侧导航栏选择“云原生观测 > 告警中心”,选择“告警规则”标签,单击页面中心的“开启告警中心”。
  3. 在“选择联系组”时,单击“新建联系组”,参考表4填写参数。新建联系组成功后,再进行选择。

    表4 新建联系组

    参数

    说明

    联系组名称

    请填写“ems-contact-group”。

    告警消息显示名

    即订阅终端接收消息的标题名称,请根据项目情况填写合适的名称。假设订阅终端是邮件,推送邮件消息时,若已设置告警消息显示名,发件人则呈现为所设置的显示名,若未设置告警消息显示名,发件人呈现为“username@example.com”。

    说明:

    用户可以在联系组创建完成后修改告警消息显示名。

    添加订阅终端

    添加一个或多个订阅终端来接收告警消息,终端类型包括短信和邮件。请根据终端类型输入正确的手机号码或电子邮件地址。

  4. 单击“确认”,完成配置,开启告警中心。

接入日志

本章节介绍如何把部署了EMS的CCE集群应用日志接入到LTS。接入应用日志后,用户可以在LTS控制台管理和分析收集到的日志,从而提高服务的性能和可靠性。还可以将日志报表进行可视化展示,从而更好地监控和管理EMS的运行状态。

  1. 登录LTS控制台
  2. 创建日志组。

    1. 在“日志管理”下单击“创建日志组”。
      • “日志组名称”命名参考表5“日志组”列。
      • “日志存储时间(天)”选择保持默认30天。
    1. 其余参数请根据实际情况进行设置,其中{cluster_id}为CCE集群ID,可参考图11获取。设置完成后,单击“确定”,完成日志组的创建。
      图11 获取集群ID
      表5 EMS的日志文件与采集配置

      日志组

      日志流/采集配置名称

      挂载方式

      采集路径

      匹配规则

      ems-{cluster_id}

      ems-controller-{cluster_id}

      节点文件路径

      /var/log/ems/ems-controller/kv/kv_server/kv.INFO

      -

      节点文件路径

      /var/log/ems/ems-controller/mempool/run/dsware_kv_server_0.log

      节点文件路径

      /var/log/ems/ems-controller/deploy/key_deploy/key_deploy.log

      节点文件路径

      /var/log/ems/ems-controller/ds_ns_op.log

      节点文件路径

      /var/log/ems/ems-controller/register_cli.log

      节点文件路径

      /var/log/ems/ems-controller/scc/run/scc.log

      节点文件路径

      /var/log/ems/ems-controller/deploy/kv_server/_stdout_kv_server.log

      节点文件路径

      /var/log/ems/ems-controller-init-sidecar/dmk-sidecar-cli.log

      节点文件路径

      /var/log/ems/ems-controller-sidecar/dmk-sidecar.log

      ems-controller-ftds-{cluster_id}

      容器文件路径

      /var/log/ems/ftds/data/stat/*.ios

      K8S Namespace正则匹配:ems.*

      K8S Pod正则匹配:ems-controller.*

      容器文件路径

      /var/log/ems/ftds/data/stat/*.nmap

      容器文件路径

      /var/log/ems/ftds/run/client/*.log

      ems-server-{cluster_id}

      节点文件路径

      /var/log/ems/ems-server/kv/kv_server/kv.INFO

      -

      节点文件路径

      /var/log/ems/ems-server/mempool/run/dsware_kv_server_0.log

      节点文件路径

      /var/log/ems/ems-server/deploy/kv_server/_stdout_kv_server.log

      节点文件路径

      /var/log/ems/ems-server/deploy/key_deploy/key_deploy.log

      节点文件路径

      /var/log/ems/ems-server/scc/run/scc.log

      节点文件路径

      /var/log/ems/ems-server-init-sidecar/dmk-sidecar-cli.log

      节点文件路径

      /var/log/ems/ems-server-sidecar/dmk-sidecar.log

      ems-server-ftds-{cluster_id}

      容器文件路径

      /var/log/ems/ftds/data/stat/*.ios

      K8S Namespace正则匹配:ems.*

      K8S Pod正则匹配:ems-server.*

      容器文件路径

      /var/log/ems/ftds/data/stat/*.nmap

      容器文件路径

      /var/log/ems/ftds/run/client/*.log

      dmk_zk-zk_log-{cluster_id}

      容器文件路径

      /var/log/dfv/infrastructure/zookeeper4sl/*.log

      K8S Namespace正则匹配:ems.*

      K8S Pod正则匹配:ems-zookeeper.*

      容器文件路径

      /var/log/dfv/infrastructure/zookeeper4sl/*.log.0

      ems-sdk-{cluster_id}

      容器文件路径

      {路径前缀}/mempool/mplog_sdk/run/*.log

      K8S Namespace正则匹配:根据实际推理容器所在命名空间而定

      K8S Pod正则匹配:根据实际推理容器pod而定

      注意:

      ems-sdk-{cluster_id}日志流的采集“路径前缀”由部署时设置推理容器的环境变量“EMS_SDK_LOG”指定,配置之前请先登录推理容器,使用"env"命令检查。没有设置时默认值为“/var/log/ems”。

      容器文件路径

      {路径前缀}/ftds/data/stat/*

      容器文件路径

      {路径前缀}/cc/trace/*.log

      容器文件路径

      {路径前缀}/cc/metrics/*.log

      容器文件路径

      {路径前缀}/cc/run/*.log

      1. EMS根据微服务创建日志组,日志组的名称请设置为“微服务名称-{已部署EMS的CCE集群ID}”,共需要创建3个日志组。
      2. 每个日志组中有多个日志流配置,日志流名称请参考“日志流/采集配置”名称列进行配置,命名规范为“EMS微服务名称-模块名称-已部署EMS的CCE集群ID”, 用中划线隔开。
      3. 每个日志流可配置一个或者多个日志文件,文件目录请参考“采集路径”列进行配置。

  3. 创建日志流。

    1. 单击步骤2创建的日志组名称。
    2. 单击“创建日志流”。
      • “日志流名称”填写规划的日志流名称。参考表5“日志流/采集配置名称”列。
      • “企业项目”选择规划的企业项目。
      • “日志存储”选择打开。
      • “日志存储时间”选择关闭。
    3. 其他参数参考LTS文档设置,设置完成后,单击“确定”,完成日志流的创建。

  4. 接入日志,参考表5逐行配置。

    1. 选择“日志接入 > 接入中心”,单击“云容器引擎 CCE-应用日志”接入CCE,相关配置参数如下:
      “采集方式”选择“采集到自定义日志流”。
      • “CCE集群”设置成已部署EMS的CCE集群。
      • “所属日志组”选择步骤2创建的日志组。
      • “所属日志流”选择步骤3创建的日志流。
    2. 单击“下一步:检查依赖项”。
    1. “检查依赖项”全部通过,否则击“自动修复”等待直到检查全部通过。
    2. 单击“下一步:选择主机组(可选)”。默认主机组无需修改,然后单击“下一步:采集配置”。
    3. 在“采集配置”页面参数设置如下。
      • “采集配置名称”与“日志流名称”一致。参考表5“日志流/采集配置名称”列。
      • “数据源配置”的“类型”参考表5选择“挂载方式”列的值。“添加采集路径”时可配置一个或多个文件路径,请注意不要遗漏。
      • 当选择"容器文件路径"时参考表5选择“匹配规则”列的值填写"k8s匹配规则"。
      • “允许文件多次采集”选择开启。
      • 其余参数如无特殊需求保持默认,设置完成后单击“下一步:索引配置”。
    4. 在“索引配置”页面击“字段索引”下的“自动配置”按钮,单击“提交”,界面提示“日志接入成功”。

授权日志

用户需通过创建委托的方式,将日志资源权限委托给EMS运维账号,以便EMS运维账号能够获取日志。

  1. 使用管理员账号登录IAM控制台
  2. 在统一身份认证服务的左侧导航窗格中,选择“委托”页签,单击右上方的“创建委托”,根据表6填写信息并单击“完成”

    表6 创建委托

    配置参数

    参数说明

    委托名称

    输入格式为:ems-lts-{account-name}

    其中account-name为租户名称,您可以在当前页面右上角查看租户名

    委托类型

    请选择“普通账号”

    委托的账号

    输入EMS的承载租户账号名:op_svc_DWR_container1-cnsouthwest2

    持续时间

    选择“永久”

    描述

    请输入委托信息

  3. 在授权的确认弹窗中,单击“立即授权”。

    1. 通过搜索框查找并勾选“LTS FullAccess”权限,然后单击“下一步”。
      图12 勾选LTS FullAccess权限
    2. “选择授权范围方案”选择“指定区域项目资源”,Region选择CCE集群所在的Region。
      图13 选择授权范围方案
    3. 单击“确定”,委托创建完成。

下载日志

  1. 进入日志组,选择想要下载的日志,单击下载符号。

    图14 下载日志

  2. 选择下载的格式,并单击“前往创建转储”

    图15 前往创建转储

  3. 参考填写日志组名称、日志流名称,选择转储的OBS桶,转储格式选择Json格式。

    图16 配置转储

部署后检查

本章主要描述EMS的安装后检查,以确保EMS工作负载正常运行。

  1. 登录CCE控制台,单击集群名称进入部署EMS工作负载的集群。
  2. 左侧导航栏选择“Kubernetes 资源 > 工作负载”,“命名空间”选择“ems-deploy”。
  3. 以下事项的状态为“运行中”,表示EMS工作负载正常运行。

    • “无状态负载”页签下“ems-controller”的“状态”为“运行中”。
    • “守护进程集”页签下“ems-server”的“状态”为“运行中”。
    • “有状态负载”页签下“ems-zookeeper”的“状态”为“运行中”。

相关文档