UCS Tools 应用程序

UCS Tools 应用程序(又名 UCS 应用程序或 UCS App)是使用 UCS 微服务以 UCS 应用程序图规范格式创建的云应用程序的描述。

一个 UCS 应用程序包含

  • 基本信息 - 应用程序名称、描述、版本

  • 文档 - 关于如何构建、部署和与应用程序交互的详细文档

  • 依赖项 - 应用程序中使用的微服务列表以及要使用的微服务版本

  • 组件 - 要添加到应用程序的微服务和其他组件(以及它们的配置 - 参数、密钥等)的列表

  • 连接 - 不同微服务之间连接的列表

UCS 应用程序可以构建为使用 UCS StudioUCS 应用程序构建器 CLI 生成可部署的 helm chart。在构建应用程序时,这些工具会执行多项验证,例如微服务参数值验证、连接验证(例如连接的端点是否兼容)、其他需求满足情况(例如是否指定了微服务密钥)。

可以使用 UCS Studio GUI 或 UCS 应用程序构建器 CLI 工具获取可用微服务列表和有关微服务的详细信息。

可以根据这些工具提供的信息创建应用程序。

创建应用程序

可以通过以 UCS 应用程序规范格式手动编写 YAML 或使用 UCS Studio GUI 创建 UCS 应用程序。有关更多信息,请参阅 创建应用程序

示例应用程序 - 可视化格式

UCS Studio - Sample Application

基本信息

包含以下关于应用程序的信息

字段

描述

specVersion

应用程序遵循的 UCS 规范版本。当前 specVersion 是 2.5.0

name

应用程序名称

description

应用程序的简短描述

version

应用程序版本。遵循语义版本控制 https://semver.org/

doc

包含应用程序详细文档的文件的路径

依赖项

要在应用程序中使用的微服务及其版本的列表。格式是字符串列表 <microservice-type>:<microservice-version><microservice-version> 可以是固定版本,也可以是 NPM 版本范围规范的格式 https://github.com/npm/node-semver#ranges

组件

要添加到应用程序的微服务和其他组件(如configmap)的列表及其配置。每个组件应具有

字段

描述

name

微服务/组件的唯一字符串标识符,以便可以在应用程序中的其他位置引用它

type

微服务/组件的类型

parameters

用于设置微服务/组件参数值的对象。必须遵循组件的参数模式

secrets

在微服务上设置密钥。有关更多信息,请参阅 在 UCS 应用程序中实现密钥

连接

指定应用程序中微服务之间的连接,格式为 <microservice-name-with-egress-endpoint>/<egress-endpoint-name>: <microservice-name-with-ingress-endpoint>/<ingress-endpoint-name>,或者如果出口端点支持多个连接 (multi: true) -

<microservice-name-with-egress-endpoint>/<egress-endpoint-name>: [
    <microservice-name-with-ingress-endpoint1>/<ingress-endpoint-name1>,
    <microservice-name-with-ingress-endpoint2>/<ingress-endpoint-name2>
]

密钥

指定应用程序中使用的密钥及其配置详情。有关更多信息,请参阅 在 UCS 应用程序中实现密钥

应用程序功能

UCS 应用程序在微服务之上提供某些功能。这些功能包括

  • Vault Agent (vaultAgent) - 用于基于 Vault 服务器的密钥管理。本节包含有关 Vault 的连接和身份验证详细信息。有关更多信息,请参阅 使用 Vault 密钥

  • 证书 (certificates) - 用于基于 cert-managet 的证书管理。本节包含有关应添加到应用程序的证书的详细信息。有关更多信息,请参阅 使用 cert-manager 证书