- 最新动态
- 功能总览
- 产品介绍
- 计费说明
- 快速入门
- AppStage使用前准备
- AI原生应用引擎用户指南
- 开发中心用户指南
-
运维中心用户指南
- 运维中心简介
- 运维中心使用前准备
- 运维中心使用流程
- 进入运维中心
- 接入资源
- 部署应用
- 监控资源和应用
- 管理已纳管资源
- 管理运行时资源
- 管理工单
- 运营中心用户指南
- 最佳实践
- 开发指南
- API参考
- SDK参考
-
常见问题
- 权限管理
-
AI原生应用引擎
- 我创建的微调数据集会被其他用户调用去训练他们的大模型吗?
- 模型微调任务一直在等待中是什么原因?
- 大模型微调需要的数据有要求吗?
- AI原生应用引擎支持所有数据集进行数据标注吗?
- AI原生应用引擎中预置了哪些提示语?
- AI原生应用引擎训练好后的模型如何获取?
- 模型调测时,无法选择模型服务商API是什么原因?
- 我接入的模型需要满足什么要求才能在创建Agent时作为思考模型?
- Agent问答的时候报错“很抱歉,我的系统似乎遇到了一些故障问题,暂时无法为您提供服务”
- 自接入的模型在模型调测的时候报错是什么原因?
- 开源模型怎么部署?
- 平台有没有预置模型?
- 思考模型和问答模型的区别
- 工作流中知识库节点、LLM节点都需要配置实例,实例的API Key填什么?
- 工作流中工具节点的实例如何配置?
- 如何获取Agent发布时所需的API Key?
- 如何保证Agent每次问答都调用知识库?
- 工作流的返回是json格式,但是大模型会进行总结,如何以json格式直接输出?
- 如何在工作流中定制逻辑实现特定任务,比如时间格式转换、数组对象的push等
- 资产中心的工具怎么使用?
- Code代码节点的输入输出参数如何与其他节点进行交互和传递?
- Agent问答的时候没有回答
- 发布Agent的时候提示套餐校验失败
- 一站式创建Agent时如何取消选择默认模型,更换为其他模型
- 按照标题切分的时候,分段长度是什么意思?
- 工作流已启用,为什么在创建Agent时仍然无法选用?
- 如何通过调用Agent API将变量传递到工作流?
- 开发中心
- 运维中心部署服务
-
运维中心监控服务
- 如何查看EAP详细日志?
- 删除告警任务失败
- 告警后触发知识编排任务提示alert_type不存在
- 创建CES指标采集报错
- 如何卸载虚拟机上安装的filebeat?
-
异常检测Judge定时任务失败
- KeyError
- TypeError: not supported between instances of 'str' and 'float'
- TypeError("Cannot index by location index with a non-integer key")
- judge长时间处于SUBMIT状态直至失败
- fail to load model json
- judge日志无法查看,提示get request error
- judge日志大小1KB,且不刷新日志内容
- PSQLException: ERROR: invalid input syntax for type numeric
- PSQLException: ERROR: syntax error at or near
- too much null size
- judge_data_size(in):0
- ERROR - fail to load
- canceling statement due to user request
- 保存异常检测告警配置时报错
- 运维中心弹性资源服务
- 运维中心弹性网络服务
- 运维中心主机管理服务
- 运维中心微服务平台
-
运维中心负载均衡
-
SLB同步异常相关问题
- SSL_do_handshake() failed
- test nginx: nginx: [emerg] host not found in upstream "后端服务器名称" in /.../server...conf:17 nginx: .../nginx.conf test failed [FAILED
- no "ssl_certificate" is defined for the "listen ... ssl""
- no such file or directory......./ssl/dummy.pem
- test nginx: nginx: [alert] mmap(MAP_ANON|MAP_SHARED, 524288000) failed (12: Cannot allocate memory) nginx: [alert] munmap(FFFFFFFFFFFFFFFF, 524288000) failed
- duplicate value "error" in /opt/huawei/openresty/nginx/.../xxx.conf:40
- SLB同步检查不一致
- SLB一直同步,心跳异常
-
SLB部署失败相关问题
- FATAL Can't get local ip
- /etc/rc.d/init.d/functions: No such file or directory
- nginx is stopped
- will_upgrade\old_version:1.4.7
- Need to modify /etc/hosts,but no permission.
- system param fs.nr_open should not less than fs.file-max”or“system param net.ipv4.ip_local_port_range should >=30000
- some permission denied files in /opt/huawei/openresty/nginx/conf/
- Permission denied: '/opt/huawei/release/lf_test/SLB/
- install_slb_failed for /opt/huawei/openresty exists not for slb
- not all conf included in vhosts or slb_conf
- watchdog still running
- job 28e7241e42904334b failed
- [Service proxy.apply_sudo._wrapped_f]: fail to operator sudo,message: send request fail, status code: 400, error: None, message: illegal param\",\"status\":-2}
- some html not in /opt/huawei/openresty/nginx/html
- cannot access /opt/huawei/openresty/nginx/conf/ssl/sample/resty-auto-ssl-fallback.pem.Permission denined
- fail to operator sudo, message: send request fail, status code: 400, task: control sudo permission, status: failed
- some certificate not in /opt/huawei/openresty/nginx/conf/ssl
- crontab -l \n+ echo 'Permission denied crontab'
- 资源间绑定服务不一致
-
SLB同步异常相关问题
- 运维中心数据库治理
- 运维中心访问凭据管理服务
- 运营中心
- 管理控制台用户指南(即将下线)
- 业务控制台用户指南(即将下线)
-
运行时引擎用户指南(即将下线)
- AppStage运行时引擎简介
- AppStage运行时引擎使用前准备
- 进入AppStage运行时引擎
- 通过微服务平台管理微服务及相关资源
- 配置运行时引擎负载均衡
- 管理Cloud Map中的服务资源
- 配置运行时引擎数据库治理
- 配置访问凭据管理服务
- 文档下载
- 通用参考
链接复制成功!
IaC代码结构介绍
单文件描述结构
单文件描述结构样例如下:
├── package.json # 包描述文件(必须) └── specs # 规格总目录(必须) ├── cn_dev_default # cn_dev_default规格目录,可用于描述一个开发用途的服务环境所使用的基础设施 └── cn_product_default # cn_product_default规格目录,可用于描述一个生产用途的服务环境所使用的基础设施 └── meta.yaml # IaC主体描述文件
type: WiseCloud::Environment # 描述环境类型,当前仅支持 WiseCloud::Environment components: # 定义服务环境所包含的组件列表,每个组件包含一个资源列表 - name: environment # 组件名称 resources: # 资源列表 - name: fgc_cloudmap # 资源名称,同类型的资源的名称在整个服务环境中唯一 type: WiseCloud::Endpoint::CloudMap # 资源类型 properties: # 资源属性:具体包含哪些属性,由资源类型决定 ... - name: FGCActionInvokerService resources: ... - name: FGCAbilityCenterService resources: ... applyPipeline: default # 默认选用名为default的组件编排流水线 pipelines: # 定义可用的组件编排流水线 - name: default # 流水线的名称,作为流水线被引用的唯一标识 action: Serial # 串行编排 tasks: # 串行编排的任务列表 - name: apply-environment # 任务名称 action: Apply # 应用变更 component: # 变更组件的相关约束 name: environment # 变更的组件名称 - name: parallel-others action: Parallel # 并行编排 tasks: # 并行编排的任务列表 - name: apply-FGCActionInvokerService # 任务名称 action: Apply # 应用变更 component: # 变更组件的相关约束 name: FGCActionInvokerService # 变更的组件名称 - name: apply-FGCAbilityCenterService # 任务名称 action: Apply # 应用变更 component: # 变更组件的相关约束 name: FGCAbilityCenterService # 变更的组件名称
以上示例清晰地展示了IaC3.0的资源组织结构:
- Nuwa,CloudMap等资源,依照业务需要,可划分到不同的组件中。
- 一个组件可对应于一个微服务,或是服务内共享的中间件集合。
- 全体组件的集合,则汇总描述了整个服务环境的期望部署状态。
- 组件编排流水线,则是以组件为最小粒度来描述服务环境是如何做部署状态的迁移的。其可以处理组件间的升级依赖关系,以及通过多阶段方式提供灰度升级能力。
多文件描述结构
为了避免诸多资源的描述都集中于meta.yaml,而造成文件内容过长难以管理。通过引入resources.yaml和文件引用语法,可以将单文件结构改造为多文件描述目录结构,样例如下:
├── package.json # 包描述文件(必须) └── specs # 规格总目录(必须) ├── cn_dev_default # cn_dev_default规格目录,可用于描述一个开发用途的服务环境所使用的基础设施 └── cn_product_default # cn_product_default规格目录,可用于描述一个生产用途的服务环境所使用的基础设施 └── meta.yaml └── VirtualAppManangerService ├── config │ └── business_config.yaml │ └── nginx.conf ├── db │ └── schema.sql ├── values.yaml └── resources.yaml
- 引入resources.yaml
IaC3.0 支持当meta.yaml不编写components时,通过提取具体规格目录(如:cn_dev)的直接子目录(也称为组件目录)里的resources.yaml来自动构造出meta.yaml的components。
引入resources.yaml后目录结构样例如下:
├── meta.yaml # IaC主体描述文件,内容不包含components ├── WiseEyeChaosMonkeyMgrService # 组件一:ChaosMonkey管理服务 │ └── resources.yaml # 组件一的资源列表 ├── WiseEyeChaosMonkeyPortal # 组件二:ChaosMonkey网页服务 │ └── resources.yaml # 组件二的资源列表 ├── environment # 组件三:环境 │ └── resources.yaml # 组件三的资源列表 └── functions # 组件四:函数 └── resources.yaml # 组件四的资源列表
- 使用文件引用语法
尽管meta.yaml已支持分散到诸多的组件目录中,但是每个组件仍然存在更新频率不同的配置。例如:微服务所用的镜像版本号更新频率较高。IaC3.0支持使用文件引用语法:允许YAML通过$ref键值对跨文档引用其他文本文件的内容。应用$ref语法,可以自由实现将资源、属性分散到更多文件中去。建议将更新频率较高的属性分散到被引用文件中,保持主体文件的结构稳定。
- YAML文档整体引用
# resources.yaml - name: virtualapp type: Wisecloud::Nuwa::Runtime::MicroService properties: configs: - name: common.java.http.ssl_protocols value: TLSv1.2 sensitive: false - name: common.java.http.enabled_cipher_suites value: aes_128_gcm|aes_256_gcm sensitive: false globalConf: |- #user slb slb; worker_processes auto; #worker_cpu_affinity 0001 0010 0100 1000; pid logs/nginx.pid; ...... # yaml 文件中多行字符串可以使用|保留换行符,如:globalConf # |:文中自动换行,默认仅保留一行空行 # |+:文中自动换行,保留字符串后面所有的空行 # |-:文中自动换行,删除字符串后面所有的空行
将 properties > configs下的内容,放置于business_config.yaml。
# business_config.yaml - name: common.java.http.ssl_protocols value: TLSv1.2 sensitive: false - name: common.java.http.enabled_cipher_suites value: aes_128_gcm|aes_256_gcm sensitive: false
则resources.yaml 可修改为:
# resources.yaml - name: virtualapp type: Wisecloud::Nuwa::Runtime::MicroService properties: configs: $ref: 'config/business_config.yaml#' # 运行时,会将config/business_config.yaml的整个YAML文档对象,替换掉整个$ref键值对
将properties > globalConf下的内容,放置于nginx.conf
# nginx.conf #user slb slb; worker_processes auto; #worker_cpu_affinity 0001 0010 0100 1000; pid logs/nginx.pid; ......
则 resources.yaml 可修改为:
# resources.yaml - name: virtualapp type: Wisecloud::Nuwa::Runtime::MicroService properties: configs: $ref: 'config/business_config.yaml#' # 运行时,会将config/business_config.yaml的整个YAML文档对象,替换掉整个$ref键值对 globalConf: $ref: 'config/nginx.conf' # 运行时,引用的是config/nginx.conf这个配置文件内容所构成的字符串
- YAML文档片段引用
values: example_name: peak_tps: 200000
则在resources.yaml,可按照如下方式进行引用200000。
$ref: 'values.yaml#/values/example_name/peak_tps'
- 文本内容字符串引用
$ref: 'db/schema.sql' #引用的是schema.sql这个文本文件内容所构成的字符串
- YAML文档整体引用
带global的多文件描述结构
Spec包通过不同规格目录来描述同一个服务在不同用途环境下所需的基础设施。但是,同一服务的不同的规格仍然存在大量相同的配置,需要一种机制来完成不同规格间配置的复用。因此,IaC支持放置一个global目录,其与specs目录同级,用于放置被所有规格目录所复用的配置文件。而各具体规格目录,只需包含与 global 目录的增量差异文件即可。
当某个规格被选用于部署时,会先将该规格目录下所有文件与global目录进行合并,得到该规格目录最终的所有配置文件,再进行部署动作。
合并策略:若文件的相对路径相同,则规格目录下的文件保留, global目录下的文件被覆盖,其他文件则共存。
带global的多文件描述结构样例如下:
├── package.json # 包描述文件(必须) ├── global # global目录:放置所有规格目录所复用的配置文件 │ │ │ ├── meta.yaml # IaC 主体描述文件,内容不包含 components │ ├── WiseEyeChaosMonkeyMgrService # 组件一:ChaosMonkey 管理服务,名称需要为该服务下的微服务名称。 │ │ └── resources.yaml # 组件一的资源列表 │ ├── WiseEyeChaosMonkeyPortal # 组件二:ChaosMonkey 网页服务 │ │ └── resources.yaml # 组件二的资源列表 │ ├── environment # 组件三:环境 │ │ └── resources.yaml # 组件三的资源列表 │ └── functions # 组件四:函数 │ ├── resources.yaml # 组件四的资源列表 │ └── values.yaml # 组件四的values.yaml │ └── specs # 规格总目录(必须) ├── cn_dev_default # cn_dev_default 规格目录,一般可用于描述一个开发用途的服务环境所使用的基础设施 └── cn_product_default # cn_product_default 规格目录,一般可用于描述一个生产用途的服务环境所使用的基础设施 └── functions # 与global下functions目录的相对路径一致 └── values.yaml # 用于覆盖global下functions目录的values.yaml