微服务资源描述

本文档主要提供ServiceMesh类型微服务的资源描述。

微服务资源参考

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

顶层参数

参数名称必需类型描述
apiVersion字符串API版本,必须为asm.alauda.io/v1beta3
kind字符串资源对象的类型,必须为MicroService
metadata对象服务的元数据,包括服务名称(name)、命名空间(namespace)、标签(labels)及注释(annotations)。
spec对象有关服务的详细信息,包括访问日志、Sidecar、OpenTelemetry Java Agent、Deployment等服务配置选项。

spec参数

  • deployments

    deployments用于指定运行服务的Deployment。Deployment必须与服务在同一命名空间中。

    参数名称必需描述
    name与服务关联的Deployment的名称。
  • services

    services用于描述与deployments 一对一关联的服务。

    服务必须满足以下条件:

    • 只有一个服务与服务的Deployment关联,且该服务仅与选定的Deployment相关联。

    • 服务类型为NodePortClusterIP

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

    参数名称必需描述
    name服务的名称。
  • accessLogging

    accessLogging用于控制是否收集并输出当前服务的访问日志(access log),以便记录访问当前服务的Web服务的访问日志。

    参数名称必需描述
    enabled是否收集并输出访问当前服务的Web服务的访问日志。
  • auth

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

    参数名称必需描述
    enabled黑白名单规则是否生效,默认情况下禁用。