Microservice 资源说明

本文主要提供 ServiceMesh 类型 Microservice 的资源说明。

MicroService 资源参考

YAML 示例

apiVersion: asm.alauda.io/v1beta3
kind: MicroService
metadata:
  labels:
    app.cpaas.io/microservice-type: service-mesh
  name: xqren-s1
  namespace: xqren-ovn
spec:
  accessLogging:
    enabled: true
  auth:
    enabled: true
  deployments:
    - name: asm-test-image
  otelJavaAgent:
    enabled: false
  services:
    - name: xqren-s1
  sidecar:
    enabled: true
    cpuLimit: '0.1'
    memoryLimit: 256Mi
    envoyLogLevel: warning

顶层参数

参数名是否必需类型说明
apiVersionstringAPI 版本,必须为 asm.alauda.io/v1beta3
kindstring资源对象类型,必须为 MicroService
metadataobject服务的元数据,包括服务名称(name)、namespace(namespace)、labels(labels)和 annotations(annotations)。
specobject服务的详细信息,包括访问日志、Sidecar、OpenTelemetry Java Agent、Deployment 等服务配置选项。

spec 参数

  • deployments

    deployments 用于指定运行该服务的 Deployment。Deployment 必须与服务位于同一 namespace 中。

    参数名是否必需说明
    name与该服务关联的 Deployment 名称。
  • services

    services 用于描述与 deployments 一一对应关联的 Service。

    Service 必须满足以下条件:

    • 只有一个 Service 与该服务的 Deployment 关联,且该 Service 仅与所选中的 Deployment 关联。

    • Service 类型必须是 主机端口虚拟 IP

    • Service 支持 HTTP、HTTP2、gRPC 和 TCP 协议。

    参数名是否必需说明
    name服务名称。
  • accessLogging

    accessLogging 用于控制是否收集并在日志中输出当前服务被 Web 服务访问时的访问日志(access log)。

    | 参数名 | 是否必需 | 说明 | |----------------|----------|------| | enabled | 否 | 是否收集并在日志中输出当前服务被 Web 服务访问时的访问日志(access log)。 |

  • auth

    auth 用于控制为服务配置的黑白名单规则是否生效。

    | 参数名 | 是否必需 | 说明 | |----------------|----------|------| | enabled | 否 | 黑白名单规则是否生效,默认禁用。 |