网络
虚拟私有云 VPC
弹性公网IP EIP
弹性负载均衡 ELB
NAT网关 NAT
云专线 DC
虚拟专用网络 VPN
云连接 CC
VPC终端节点 VPCEP
企业路由器 ER
企业交换机 ESW
全球加速 GA
企业连接 EC
云原生应用网络 ANC
安全与合规
安全技术与应用
Web应用防火墙 WAF
企业主机安全 HSS
云防火墙 CFW
安全云脑 SecMaster
DDoS防护 AAD
数据加密服务 DEW
数据库安全服务 DBSS
云堡垒机 CBH
数据安全中心 DSC
云证书管理服务 CCM
威胁检测服务 MTD
认证测试中心 CTC
边缘安全 EdgeSec
应用中间件
微服务引擎 CSE
分布式消息服务Kafka版
分布式消息服务RabbitMQ版
分布式消息服务RocketMQ版
API网关 APIG
分布式缓存服务 DCS
多活高可用服务 MAS
事件网格 EG
管理与监管
统一身份认证服务 IAM
消息通知服务 SMN
云监控服务 CES
应用运维管理 AOM
应用性能管理 APM
云日志服务 LTS
云审计服务 CTS
标签管理服务 TMS
配置审计 Config
应用身份管理服务 OneAccess
资源访问管理 RAM
组织 Organizations
资源编排服务 RFS
优化顾问 OA
IAM 身份中心
云运维中心 COC
资源治理中心 RGC
解决方案
高性能计算 HPC
SAP
混合云灾备
开天工业工作台 MIW
Haydn解决方案工厂
数字化诊断治理专家服务
云生态
云商店
合作伙伴中心
华为云开发者学堂
华为云慧通差旅
开发与运维
软件开发生产线 CodeArts
需求管理 CodeArts Req
流水线 CodeArts Pipeline
代码检查 CodeArts Check
编译构建 CodeArts Build
部署 CodeArts Deploy
测试计划 CodeArts TestPlan
制品仓库 CodeArts Artifact
移动应用测试 MobileAPPTest
CodeArts IDE Online
开源镜像站 Mirrors
性能测试 CodeArts PerfTest
应用管理与运维平台 ServiceStage
云应用引擎 CAE
开源治理服务 CodeArts Governance
华为云Astro轻应用
CodeArts IDE
Astro工作流 AstroFlow
代码托管 CodeArts Repo
漏洞管理服务 CodeArts Inspector
联接 CodeArtsLink
软件建模 CodeArts Modeling
Astro企业应用 AstroPro
CodeArts 盘古助手
华为云Astro大屏应用
计算
弹性云服务器 ECS
Flexus云服务
裸金属服务器 BMS
云手机服务器 CPH
专属主机 DeH
弹性伸缩 AS
镜像服务 IMS
函数工作流 FunctionGraph
云耀云服务器(旧版)
VR云渲游平台 CVR
Huawei Cloud EulerOS
云化数据中心 CloudDC
网络
虚拟私有云 VPC
弹性公网IP EIP
弹性负载均衡 ELB
NAT网关 NAT
云专线 DC
虚拟专用网络 VPN
云连接 CC
VPC终端节点 VPCEP
企业路由器 ER
企业交换机 ESW
全球加速 GA
企业连接 EC
云原生应用网络 ANC
CDN与智能边缘
内容分发网络 CDN
智能边缘云 IEC
智能边缘平台 IEF
CloudPond云服务
安全与合规
安全技术与应用
Web应用防火墙 WAF
企业主机安全 HSS
云防火墙 CFW
安全云脑 SecMaster
DDoS防护 AAD
数据加密服务 DEW
数据库安全服务 DBSS
云堡垒机 CBH
数据安全中心 DSC
云证书管理服务 CCM
威胁检测服务 MTD
认证测试中心 CTC
边缘安全 EdgeSec
大数据
MapReduce服务 MRS
数据湖探索 DLI
表格存储服务 CloudTable
可信智能计算服务 TICS
推荐系统 RES
云搜索服务 CSS
数据可视化 DLV
数据接入服务 DIS
数据仓库服务 GaussDB(DWS)
数据治理中心 DataArts Studio
湖仓构建 LakeFormation
智能数据洞察 DataArts Insight
应用中间件
微服务引擎 CSE
分布式消息服务Kafka版
分布式消息服务RabbitMQ版
分布式消息服务RocketMQ版
API网关 APIG
分布式缓存服务 DCS
多活高可用服务 MAS
事件网格 EG
开天aPaaS
应用平台 AppStage
开天企业工作台 MSSE
开天集成工作台 MSSI
API中心 API Hub
云消息服务 KooMessage
交换数据空间 EDS
云地图服务 KooMap
云手机服务 KooPhone
组织成员账号 OrgID
云空间服务 KooDrive
管理与监管
统一身份认证服务 IAM
消息通知服务 SMN
云监控服务 CES
应用运维管理 AOM
应用性能管理 APM
云日志服务 LTS
云审计服务 CTS
标签管理服务 TMS
配置审计 Config
应用身份管理服务 OneAccess
资源访问管理 RAM
组织 Organizations
资源编排服务 RFS
优化顾问 OA
IAM 身份中心
云运维中心 COC
资源治理中心 RGC
区块链
区块链服务 BCS
数字资产链 DAC
华为云区块链引擎服务 HBS
解决方案
高性能计算 HPC
SAP
混合云灾备
开天工业工作台 MIW
Haydn解决方案工厂
数字化诊断治理专家服务
价格
成本优化最佳实践
专属云商业逻辑
云生态
云商店
合作伙伴中心
华为云开发者学堂
华为云慧通差旅
其他
管理控制台
消息中心
产品价格详情
系统权限
客户关联华为云合作伙伴须知
公共问题
宽限期保留期
奖励推广计划
活动
云服务信任体系能力说明
开发与运维
软件开发生产线 CodeArts
需求管理 CodeArts Req
流水线 CodeArts Pipeline
代码检查 CodeArts Check
编译构建 CodeArts Build
部署 CodeArts Deploy
测试计划 CodeArts TestPlan
制品仓库 CodeArts Artifact
移动应用测试 MobileAPPTest
CodeArts IDE Online
开源镜像站 Mirrors
性能测试 CodeArts PerfTest
应用管理与运维平台 ServiceStage
云应用引擎 CAE
开源治理服务 CodeArts Governance
华为云Astro轻应用
CodeArts IDE
Astro工作流 AstroFlow
代码托管 CodeArts Repo
漏洞管理服务 CodeArts Inspector
联接 CodeArtsLink
软件建模 CodeArts Modeling
Astro企业应用 AstroPro
CodeArts 盘古助手
华为云Astro大屏应用
存储
对象存储服务 OBS
云硬盘 EVS
云备份 CBR
高性能弹性文件服务 SFS Turbo
弹性文件服务 SFS
存储容灾服务 SDRS
云硬盘备份 VBS
云服务器备份 CSBS
数据快递服务 DES
云存储网关 CSG
专属分布式存储服务 DSS
数据工坊 DWR
地图数据 MapDS
键值存储服务 KVS
容器
云容器引擎 CCE
云容器实例 CCI
容器镜像服务 SWR
云原生服务中心 OSC
应用服务网格 ASM
华为云UCS
数据库
云数据库 RDS
数据复制服务 DRS
文档数据库服务 DDS
分布式数据库中间件 DDM
云数据库 GaussDB
云数据库 GeminiDB
数据管理服务 DAS
数据库和应用迁移 UGO
云数据库 TaurusDB
人工智能
AI开发平台ModelArts
华为HiLens
图引擎服务 GES
图像识别 Image
文字识别 OCR
自然语言处理 NLP
内容审核 Moderation
图像搜索 ImageSearch
医疗智能体 EIHealth
企业级AI应用开发专业套件 ModelArts Pro
人脸识别服务 FRS
对话机器人服务 CBS
语音交互服务 SIS
人证核身服务 IVS
视频智能分析服务 VIAS
城市智能体
自动驾驶云服务 Octopus
盘古大模型 PanguLargeModels
IoT物联网
设备接入 IoTDA
全球SIM联接 GSL
IoT数据分析 IoTA
路网数字化服务 DRIS
IoT边缘 IoTEdge
设备发放 IoTDP
企业应用
域名注册服务 Domains
云解析服务 DNS
企业门户 EWP
ICP备案
商标注册
华为云WeLink
华为云会议 Meeting
隐私保护通话 PrivateNumber
语音通话 VoiceCall
消息&短信 MSGSMS
云管理网络
SD-WAN 云服务
边缘数据中心管理 EDCM
云桌面 Workspace
应用与数据集成平台 ROMA Connect
ROMA资产中心 ROMA Exchange
API全生命周期管理 ROMA API
政企自服务管理 ESM
视频
实时音视频 SparkRTC
视频直播 Live
视频点播 VOD
媒体处理 MPC
视频接入服务 VIS
数字内容生产线 MetaStudio
迁移
主机迁移服务 SMS
对象存储迁移服务 OMS
云数据迁移 CDM
迁移中心 MGC
专属云
专属计算集群 DCC
开发者工具
SDK开发指南
API签名指南
DevStar
华为云命令行工具服务 KooCLI
Huawei Cloud Toolkit
CodeArts API
云化转型
云架构中心
云采用框架
用户服务
账号中心
费用中心
成本中心
资源中心
企业管理
工单管理
客户运营能力
国际站常见问题
支持计划
专业服务
合作伙伴支持计划
我的凭证
华为云公共事业服务云平台
工业软件
工业数字模型驱动引擎
硬件开发工具链平台云服务
工业数据转换引擎云服务

参数配置说明

更新时间:2025-02-17 GMT+08:00
分享

基础参数

表1 基础参数

参数名称

参数类型

是否必选

默认值

说明

参数规范

举例

name

string

必选

-

IaC3.0资源名

只能包括数字、字母、'-'、'_'、'.',必须以字母开头,字母或数字结尾。长度2-64。

说明:

如果没有配置clusterName,则资源名会被当做微服务集群名,参数规范则会以微服务集群名的为准。

WiseCloudFGCEventBuilderService_cluster1

type

string

必选

-

BaaS服务类型,operator要求必填,固定为WiseCloud::MicroService::NuwaContainer

固定为WiseCloud::MicroService::NuwaContainer

WiseCloud::MicroService::NuwaContainer

microserviceName

string

必选

-

微服务名称

微服务名称

WiseCloudFGCEventBuilderService

clusterName

string

非必选

(建议填写)

默认与name值相同

微服务集群名

只能包括数字、字母、'-'、'_'、'.',必须以字母开头,字母或数字结尾。长度2-56。

说明:

不填与name值相同,由于两字段限制不同,超过限制会报错。

cluster1

replicas

int

必选

-

Pod副本数

整数类型

说明:
  • 多AZ要配置AZ的倍数,如果部署了双AZ,那么此处要配置为2的倍数。
  • 如果使用了evs盘或者elb,为保证滚动升级每个AZ至少保留一个节点,那么单AZ至少要配置为2,双AZ至少配置为4。

1

pdbMaxUnavailable

string

非必选

-

Pod干扰预算

整数百分比,整数范围为[1, 50]

-

terminationGracePeriodSeconds

integer

非必选

-

优雅下线宽限期

1-65535

-

示例:

- name: WiseCloudFGCEventBuilderService_cluster1
  type: WiseCloud::MicroService::NuwaContainer
  properties:
    microserviceName: WiseEyeChaosMonkeyExecutor
    clusterName: cluster1
    replicas: 5

挂载信息

表2 挂载信息

参数名称

参数类型

是否必选

默认值

说明

参数规范

举例

name

string

必选

-

  • log_volume:日志卷
  • data_volume:data卷
  • sfs_volume:sfs卷
说明:

sfs的卷命名并非固定,此处的名称主要还是供container的volumeMounts引用。

  • log_volume

    每个POD的日志卷大小,log_volume_type不配置或者配置为local时,代表使用集群节点的本地盘,有如下注意事项:容器场景下对/opt/huawei/logs的日志卷大小限制为100G,当日志磁盘写满之后,k8s会驱逐该POD并重新拉起一个新的POD,在此过程中,会影响业务。请在log配置文件中配置绕接策略对总的日志大小不超过此限制,由于NUWA及中间件也会记录一部分日志,建议业务配置保存的log总大小不要超过90G。另外业务需要将所有的日志配置到AIOps sidecar日志服务中,以通过AIOps日志服务进行日志采集,否则POD销毁时会造成日志丢失。

    如果log_volume_type配置为evs,则根据实际的大小进行配置。

  • data_volume

    data卷大小,默认挂载了/opt/huawei/data的路径,最大支持配置为5Gi。data_volume_type配置为evs则不受此限制。

volumes:

- name: log_volume

size: 12Gi

type: local

- name: data_volume

size: 2Gi

type: local

size

string

必选

-

定义存储空间

type

string

可选

默认是local,代表使用集群节点本地存储。

  • evs
  • sfs

    参见右侧样例

sfs:

volumes:

- name: sfs_volume

id: 11a701c9-529f-4992-9291-bc47bbf5b4c5 # 如果是已有的存储,该值代表存储的资源id

type: sfs

shareLocation: xxx # 共享路径

mountOptions: ["vers=3","hard","nolock"]

local

示例:

- name: WiseCloudFGCEventBuilderService_cluster1
  type: WiseCloud::MicroService::NuwaContainer
  properties:    
    volumes:
      - name: log_volume
        size: 12Gi
        type: local
      - name: data_volume
        size: 2Gi
        type: local

容器配置

表3 容器配置

参数名称

参数类型

是否必选

默认值

说明

参数规范

举例

image

string

必选

-

镜像地址

Runtime已预置如下镜像仓库地址,如果业务是从如下镜像仓库地址下载镜像,则只需要从组织名开始填写。

北京四:swr.cn-north-4.myhuaweicloud.com

乌兰察布一:swr.cn-north-9.myhuaweicloud.com

华南广州:swr.cn-south-1.myhuaweicloud.com

长度:1-256

说明:

镜像仓库(:前的一串)只能是小写。

-

ports

int[]

可选

0

如果使用Cloud Map,将此端口填写为在Cloud Map注册中心注册的端口

如果不使用Cloud Map,可将此项注释掉或者填写为0。

此参数只是起一个标识作用,并不是代表配置了此端口就代表端口一定打开。实际打开的端口以业务使用的为准,目前仅支持一个端口配置,数组类型是为后面可扩展。

端口范围:0-65535

ports:

- 8080

flavor

string

-

"2C4Gi"

主容器CPU&memory的规格

长度范围:1-32。需要满足CPU和memory的规格,比如1C2G,2C4G,4C8G,8C16G等。

flavor: 2C4G

armFlavor

string

可选

"2C4Gi"

参考flavor

双AZ arm混部时独立控制arm配置

arm配置建议:

按照业内通用的指导,arm cpu算力相对于x86下降,具体下降指标和使用场景密切相关。

对于计算密集型的业务,可以考虑增加配置,IO密集型可以同规格,具体性能还是以各自业务的实际性能测试为准。

同上

同上

gpu

int

可选

null

主容器使用的GPU规格(GPU即显卡);当前ERS管理的资源池中尚未提供GPU。

取值为整数,配1代表占用一块显卡,显卡不可分割。

-

stsEnable

bool

可选

TRUE

是否启用sts

-

TRUE

commandArgs

list(string)

可选

[]

启动参数

长度为0-256

-

volumeMounts

list(object)

可选

[]

此参数与volumes下的sfs挂载卷搭配使用,volumes中定义挂载卷的信息,此处引用并挂载在容器中运行

name要在volumes中有对应的值。

volumeMounts:

- name: sfs_volume1

mountPath: /opt/huawei/sfs1

- name: sfs_volume2

mountPath: /opt/huawei/sfs2

envs

type = list(object({

name = string

value = string

}))

可选

[]

配置环境变量

name和value的长度为不超过5000。

envs:

- name: "EVS_TEST"

value: "test_ENV"

hostAliases

type = list(object({

hostName = string

ip = string

}))

可选

[]

配置hosts

-

hostAliases:

- hostName: "a.b.com"

ip:"1:1:1:1:1:1:1:1"

- hostName: "c.d.com"

ip:"2.2.2.2"

为保证业务容器的稳定运行和资源利用率的提升,建议业务容器采用标准化容器规格,标准容器规格如表4所示。

表4 容器资源规格

vCPU

(cpu request)

Memory, GiB

(memory request/limit)

cpu和内存配比

备注

0.5

500M、1、2、4

1:1、1:2、1:4、1:8

X86和ARM

1u

1、2、4、8

1:1、1:2、1:4、1:8

X86和ARM

2u

2、4、8、16

1:1、1:2、1:4、1:8

X86和ARM

3u

3、6、12、24

1:1、1:2、1:4、1:8

ARM专属规格

4u

4、8、16、32

1:1、1:2、1:4、1:8

X86和ARM

6u

6、12、24、48

1:1、1:2、1:4、1:8

ARM专属规格

8u

8、16、32

1:1、1:2、1:4

X86和ARM

12u

12、24、48

1:1、1:2、1:4

ARM专属规格

14u

14、28、52

1:1、1:2、1:4(3.714)

X86和ARM

22U

22、44、76

1:1、1:2、1:4(3.45)

ARM专属规格

28U

28、56、104

1:1、1:2、1:4(3.714)

X86和ARM

42U

42、84、150

1:1、1:2、1:4(3.571)

ARM专属规格

  • 16C的规格请降低为14C,大于等于64G的内存请降低为52G或者48G。14C52G是标准规格,是从节点的分配率考虑的。
  • 如果要使用0.5G的内存,需要在IaC里面配置为500M,不能配置为0.5G。
  • 最小组网:CPU规格<=1u,且双AZ POD数量<=6个。

示例1(双AZ同构,或者不同构但同配置):

- name: WiseCloudFGCEventBuilderService_cluster1
  type: WiseCloud::MicroService::NuwaContainer
  properties:    
    containers:
      - image: swr.cn-north-4.myhuaweicloud.com/wiseeye/wiseeyechaosmonkeyservicewebsite:3.0.9.204.SP2
        flavor: 2C8G
        stsEnable: true
        ports:
          - 8080

示例2(arm、x86混部时,独立配置flavor):

- name: WiseCloudFGCEventBuilderService_cluster1
  type: WiseCloud::MicroService::NuwaContainer
  properties:    
    containers:
      - image: swr.cn-north-4.myhuaweicloud.com/wiseeye/wiseeyechaosmonkeyservicewebsite:3.0.9.204.SP2
        flavor: 2C8G
        armFlavor: 4C16G
        stsEnable: true
        ports:
          - 8080

容器健康检查

表5 容器健康检查

参数名称

参数类型

是否必选

默认值

说明

参数规范

举例

readinessProbe:

exec:

command:

list(string)

必须配置其中一种,且只能配置一种

[]

命令行检查方式

命令行检查方式\http请求检查方式\tcp端口检查三种方式只能选择一种。

readinessProbe:

exec:

command: ["echo", "hello"]

readinessProbe:

httpGet:

object

-

http请求检查方式

命令行检查方式\http请求检查方式\tcp端口检查三种方式只能选择一种。

readinessProbe:

httpGet:

path: /health

port: 8080

scheme: HTTP

readinessProbe:

tcpSocket:

port:

int

-

tcp端口检查

命令行检查方式\http请求检查方式\tcp端口检查三种方式只能选择一种。

readinessProbe:

tcpSocket:

port:8080

livenessProbe:

exec:

command:

list(string)

必须配置其中一种,且只能配置一种

[]

命令行检查方式

命令行检查方式\http请求检查方式\tcp端口检查三种方式只能选择一种。

livenessProbe:

exec:

command: ["echo", "hello"]

livenessProbe:

httpGet:

object

-

http请求检查方式

命令行检查方式\http请求检查方式\tcp端口检查三种方式只能选择一种。

livenessProbe:

httpGet:

path: /health.html

port: 8080

scheme: HTTP

livenessProbe:

tcpSocket:

port:

int

-

tcp端口检查

命令行检查方式\http请求检查方式\tcp端口检查三种方式只能选择一种。

livenessProbe:

tcpSocket:

port:8080

initialDelaySeconds

int

可选

10s

表示容器启动多少秒之后开始探测,单位秒。默认值为10s。

不小于5

readinessProbe:

exec:

command: ["echo", "hello"]

initialDelaySeconds: 10

periodSeconds: 20

successThreshold :1

failureThreshold: 3

timeoutSeconds:5

periodSeconds

int

可选

20s

间隔周期,表示每多少秒探测一次容器,单位秒,默认值为20s。

不大于180

successThreshold

int

可选

1

表示连续检测多少次成功后则记作成功。默认值为1。

不大于10,liveness探针只能为1。

failureThreshold

int

可选

3

表示连续检测多少次失败当做是失败处理,并会重启容器。默认值为3。

不大于10

示例:

livenessProbe:
  httpGet:
    path: /health
    port: 8080
    scheme: HTTP
  initialDelaySeconds: 20
  timeoutSeconds: 3
  periodSeconds: 10
  successThreshold: 1
  failureThreshold: 3
readinessProbe:
  httpGet:
    path: /health
    port: 8080
    scheme: HTTP
  initialDelaySeconds: 20
  timeoutSeconds: 3
  periodSeconds: 10
  successThreshold: 1
  failureThreshold: 10
      - name: APIGateway
        type: WiseCloud::Agent::APIGateway
        version: x.x.x.x
        flavor: 1C2G
        param:
          $ref: 'config/sidecar_apigw_param.json

sidecar配置

表6 sidecar配置

参数名称

参数类型

是否必选

默认值

说明

参数规范

举例

sidecars

type = list(object)

-

[]

由于POD销毁或被驱逐时,日志文件会丢失,因此AIOps Log Sidecar为必选参数,需要业务配置此sidecar及时将日志进行采集。

  • name:sidecar的名称,比如AIOpsLog。
  • type:sidecar的类型,详见代码示例。
  • version:sidecar的版本。
  • cpu:sidecar容器的

    cpu,配置举例:0.5 或者 2 或者 500m,配置为null或者"“时,代表使用系统默认值。

  • memory:sidecar的内存,单位为M Mi G Gi,配置举例:100M 0.5G 2G,配置为null或者”"时,代表使用系统默认值。注意M和Mi的区别,M是1000的倍比,Mi是1024的倍比。
  • param:sidecar的配置参数,不同sidecar的配置参数不一样,具体可以参考各个sidecar的配置方式。

详见代码示例,按照业务需求配置所需的sidecar。

示例:

sidecars:
      - name: AIOpsLog
        type: WiseCloud::Agent::AIOpsLog
        version: 3.3.0.100
        flavor: 0.4C500M
        param:
          $ref: 'config/sidecar_aiops_param.json'
      - name: RASP
        type: WiseCloud::Agent::RASP
        version: 2.2.0.102.SP5
        flavor: 0.3C500M
        param: ''
      - name: BIFlume
        type: WiseCloud::Agent::BIFlume
        version: x.x.x.x
        flavor: 0.2C500M
        param:
          $ref: 'config/sidecar_biflume_param.json'
      - name: APIGateway
        type: WiseCloud::Agent::APIGateway
        version: x.x.x.x
        flavor: 1C2G
        param:
          $ref: 'config/sidecar_apigw_param.json

网络配置

表7 网络配置

参数名称

参数类型

是否必选

默认值

说明

参数规范

举例

isolatedDomain

string

可选

-

隔离域

只有CCE_TURBO集群支持,老CCE集群不支持。如果不配置,则使用ENS隔离域规划中对应的隔离域,见上面隔离域说明链接中的说明。

-

slbEnable

bool

可选

FALSE

是否启用slb

“否”仅针对第一次添加SLB信息时有效。

如果之前有部署过,并且配置为“是”,此时再修改为“否”是无效的。

-

示例:

- name: WiseCloudFGCEventBuilderService_cluster1
  type: WiseCloud::MicroService::NuwaContainer
  properties:    
    network:
      slbEnable: true
      isolatedDomain: $ {创建的隔离域名称}

SLB配置(可选)

表8 SLB配置

参数名称

参数类型

是否必选

默认值

说明

参数规范

举例

port

int32

必选

null

微服务在SLB上暴露的端口

-

8080

weight

int32

必选

null

微服务在SLB上负载的权重

-

20

timeout

int32

必选

null

微服务调用转发的超时时间

-

20

maxFails

int32

必选

null

微服务调用的失败次数

-

3

targetGroup

object{

name,

loadBalancer

}

必选

""

微服务注册到SLB上的后端服务器组名

  • 用于创建RouteRule,其中的name为必选,对应NuwaRuntime的backendClusterName,其它为可选。
  • 在routes配置的情况下,loadBalancer也属于必选,不配置routes的话,loadBalancer则是可选。
  • loadBalancer当前仅支持配置roundRobin(加权轮询)且不支持修改为其它策略,如需修改可登录SLB管理台修改。

name: chaosmonekey_portal_static

loadBalancer:

strategy: roundRobin

listenerGroupName

string

必选

""

微服务前端关联的SLB Listenser Group实例IaC名称

对应NuwaRuntime中的slbServiceName,长度为[1, 64]

SLB下需要存在这个监听,为空时不会创建RouteRule。

chaos_slb_listener_lhq

routes

array[

location: string]

可选

[]

微服务的路由规则

不推荐使用,请直接使用slb的iac3.0创建。

/fgc/v1

示例:

- name: WiseCloudFGCEventBuilderService_cluster1
  type: WiseCloud::MicroService::NuwaContainer
  properties:    
    bindSlb:
      - port: 8080
        grayStatus: 1
        weight: 20
        maxFails: 3
        timeout: 20
        listenerGroupName: chaos_slb_listener_lhq
        targetGroup:
          name: chaosmonekey_portal_static
          loadBalancer:
            strategy: roundRobin

证书配置

表9 证书配置

参数名称

参数类型

是否必选

默认值

说明

参数规范

举例

certConfigs

type = list(object({

name = string

tag = string

}))

可选

[]

证书配置

  • name:证书名称
  • tag:证书tag

# 业务证书配置

certConfigs:

name: "server" # 证书名称

tag: "default" # 证书tag

daemonSet

表10 daemonSet

参数名称

参数类型

是否必选

默认值

说明

参数规范

举例

daemonSet

type = list(object)

可选

[]

目前仅支持AIOps DaemonSet和BI DaemonSet,挂载hostpath提供存储持久化到node的能力。

  • name:AIOps or BI
  • type:DaemonSet的类型,详见代码示例
  • enable:true|false,是否启用
  • logPath:推送日志路径(非文件名),选填。
  • AIOps固定为'/opt/huawei/logs'
  • limitSize: 日志存储限制,选填,默认值为100G。仅AIOps生效。
  • groups:日志配置组名,必填。当前BI场景支持1个或多个分组,AIOps场景有且只能填写一个分组并且提前在AIOps管理面创建好。

详见代码示例

示例:

daemonSet:  
      - name: AIOps
        type: WiseCloud::Agent::AIOps
        enable: true
        logPath: '/opt/huawei/logs'
        limitSize: 100G
        groups: ["logConfigGroupName"]
      - name: BI
        type: WiseCloud::Agent::BI
        enable: false
        logPath: '/opt/huawei/logs/bi'
        groups: ["ODS_V001_DM_service1", "ODS_V001_DM_service2"]
        paramJson: "{\"dataGroups\":[{\"dataGroup\":\"ODSName_BatchFileExampleDS\",\"agentType\":\"batch\",\"batchConfig\":{\"datapushInputs\":{\"jobType\":\"file\",\"dayPeriod\":{\"startTime\":\"10:00:00\",\"offset\":\"1\"},\"file\":{\"sources\":[{\"pattern\":\"/opt/huawei/hcy/*.txt\",\"filename\":\"test.txt\"}]}},\"datapushOutput\":{\"postfix\":\"txt\",\"permitEmptyFile\":true},\"advanced\":{\"extendFields\":{\"datapushInput.isUtc\":false,\"datapushInput.file.sourcePolicy\":3,\"datapushInput.file.countThreshold\":0,\"datapushInput.file.sizeThreshold\":0,\"sendThreadCount\":3,\"datapushInput.file.fileRetryTimes\":3,\"datapushInput.file.fileWaitTimes\":3}}}},{\"dataGroup\":\"ODSName_StreamFileExampleDS\",\"agentType\":\"stream\",\"streamConfig\":{\"filebeatInputs\":{\"type\":\"log\",\"enabled\":true,\"paths\":[\"/opt/huawei/logs/*.log\",\"/opt/huawei/logs/*.txt\"]},\"advanced\":{\"extendFields\":{\"filebeatInputs.harvester_limit\":5,\"queue.mem.events\":4096,\"queue.mem.flush.min_events\":2048}}}}]}"
        # 配置json格式化

业务配置

表11 业务配置

参数名称

参数类型

是否必选

默认值

说明

参数规范

举例

configs

object(private = object(

name = string

prefix = string

version = string

schema = object

records = object)

public = object(

name = string

prefix = string))

{}

配置项的根字段,包含两个属性,分别是private和public,分别为业务配置项和公共配置项,其下各个字段的描述如下所示。

-

见下文样例

prefix

string

""

配置项的归属路径

仅限于publicConfig

/public/cloudeye/wiseEyeConfigService

schema

object(type = string

properties = object(

key1 = object(

type = string

description = string

format = string)))

{}

配置项属性,properties属性为key-object格式,key是配置名称 ,object是配置项各项描述,其中format指配置项类型,默认为notype,如果是敏感配置项为sensitive。

如果是非敏感配置项,可以不在schema中声明,以减少维护工作量。

仅限于privateConfig

见下文样例

records

object(key1 = string

key2 = string)

{}

描述配置,key-value格式,key为配置名称 ,value为配置值。

value仅支持字符串类型

如果是数字、布尔值、对象和数组,需要加单引号,例:'10'、'true'、'{"test": 1}'、'[1,2]'。

仅限于privateConfig

records:

test: '{"a":"a","b":"b"}'

timeout: '10'

enableSa: 'true'

name

string

""

配置项名称,对应NuwaRuntime的Container[0].configTag,对应PublicConfig和PrivateConfig的name。

配合动态配置生效,需要nuwa基础镜像版本要保持在3.0.11版本以上,否则报错。

publicConfig/privateConfig均有

限制:8位以内的小写字母和数字

见下文样例

version

string

""

配置版本,对应NuwaRuntime的Container[0].configVeersion,对应PrivateConfig的version。

配合动态配置生效,需要nuwa基础镜像版本要保持在3.0.11版本以上,否则报错。

仅限于privateConfig

见下文样例

示例:

# resources.yaml
- name: WiseCloudFGCEventBuilderService_cluster1
  type: WiseCloud::MicroService::NuwaContainer
  properties:
    configs:
      $ref: 'config/business_config.yaml#'
# business_config.yaml 
public:
  prefix: /com.huawei.wiseeye
  name: public5
private:
  version: 1.0.0      #(配合动态配置生效,需要nuwa基础镜像版本要保持在3.0.11版本以上,否则报错)
  name: fgcva         #(配合动态配置生效,需要nuwa基础镜像版本要保持在3.0.11版本以上,否则报错)
  schema:
    type: object
    properties:
      AIOPSCONFIG_AIOPSSERVER:      # 默认为format: notype,如果非敏感项,可以不填
        format: notype              # 默认为notype,如果非敏感项,可以不填
      AIOPSCONFIG_AIOPSTOKENURI:    # 敏感项必须填
        format: sensitive           # 敏感项必须填
  records:                          # 必填
    AIOPSCONFIG_AIOPSSERVER: https://XX.XX.XX.XX:XXXX/     
    test: '{"a":"a","b":"b"}'   # 仅支持字符串类型,[]、{}的值,yaml会识别为对象和数组,必须加单引号
    timeout: '10'               # 仅支持字符串类型,数字和布尔值也要加引号
    enableSa: 'true'

滚动升级策略

表12 滚动升级策略

参数名称

参数类型

是否必选

默认值

说明

参数规范

举例

rollingUpdateStrategy

type = object({

maxSurge = string

maxUnavailable = string

})

可选

maxSurge : "25%"

maxUnavailable: 0

滚动升级策略配置

  • maxSurge:滚动升级时最多可以多启动多少个pod。
  • maxUnavailable:滚动升级时最大可以删除多少个pod。

整数:最小值为0

百分比:0% ~ 100%

  • maxSurge和maxUnavailable不能同时为0
  • maxUnavailable不能设置为100或者100%,避免升级时集群没有可用的pod。

rollingUpdateStrategy:

maxSurge = "50%"

maxUnavailable = "25%"

优雅下线

表13 优雅下线

参数名称

参数类型

是否必选

默认值

说明

参数规范

举例

preStopConfig

type = object({

execCommand = list

})

必选

[]

优雅退出处理

-

preStopConfig:

execCommand: ["/bin/bash", "-c", "sleep 20"]

terminationGracePeriodSeconds

int

可选

30

优雅退出宽限时间,此时间为整个POD的最大退出时间。

-

terminationGracePeriodSeconds: 30

灰度策略

表14 灰度策略

参数名称

参数类型

是否必选

默认值

说明

参数规范

举例

grayStage

type = object({grayInstances =

number

grayProcess=

stringgrayStatus = number })

可选

null

灰度升级策略配置。

  • grayInstances:灰度升级的实例数比例,范围为1~100。
  • grayStatus:灰度实例对接SLB时的状态,1:生产,2:灰度。
  • grayProcess:灰度状态,只能填"INGRAY"和"FINISHED"。

-

grayStage:

grayInstances: 50

grayProcess: "INGRAY"

grayStatus: 2

示例:

- name: WiseCloudFGCEventBuilderService
  type: WiseCloud::MicroService::NuwaContainer
  properties:    
    grayStage: 
      grayInstances: 50
      grayProcess: "INGRAY"
      grayStatus: 2

水平自动伸缩(HPA)

如果业务不需要使用hpa,请不要配置hpa相关参数。hpa开关配置关闭,也会创建hpa资源,只是不会生效扩缩容。

表15 水平自动伸缩(HPA)

参数

说明

是否必填

备注

hpa_scale_disabled

是否禁用hpa,false表示不禁用;true表示禁用。

取值为false时开启hpa。

polling_interval

负载检测周期,单位秒。

-

origin_instances

初始副本数,不配置则使用min_instances值。

-

min_instances

最小副本数

不配置默认为1。

max_instances

最大副本数

不配置默认为1。

hpa_scale_triggers

扩缩容指标配置,目前仅支持cpu/memory。

仅统计主容器资源。

hpa_scale_up_rules

扩容规则,定义稳定时间窗,减少扩容毛刺。

-

hpa_scale_down_rules

缩容规则,定义稳定时间窗,减少缩容毛刺。

-

hpa_scale_up_policies

扩容策略,定义扩容步长。

-

hpa_scale_down_policies

缩容策略,定义缩容步长。

-

示例:

在resources.yaml中添加hpa参数如下:

hpa:     #弹性伸缩配置
    $ref: 'config/hpa.yaml#/recommend'

在config目录,增加一个hpa.yaml文件,存放hpa的相关配置项。

recommend:
   disabled: true       #true表示关闭hpa,false表示开启hpa
   pollingInterval: 5   #负载检测周期,单位秒
   minReplicas: 2       #最小副本数
   maxReplicas: 4       #最大副本数
   triggers:            #业务根据时间情况选择弹性伸缩策略
      -type: CPU        #业务容器的CPU利用率大于40%则触发扩容条件
       metadata:
            averageUtilization: 40%     
      -type: Memory                     #业务容器的内存利用率大于60%则触发扩容条件
       metadata:
           averageUtilization: 60%     

指定分组和资源标签

表16 指定分组和资源标签

参数名称

参数类型

是否必选

默认值

说明

参数规范

举例

resourceTag

type = object

({group = stringfeatures = string})

可选

  • group:指定集群部署的分组。
  • features:指定集群部署的标签信息。

此处配置的信息要在Runtime页面提前预置好。

resourceTag:

group: "common"

features: "dev"

提示

您即将访问非华为云网站,请注意账号财产安全

文档反馈

文档反馈

意见反馈

0/500

标记内容

同时提交标记内容