ALIYUN::ASM::ServiceMesh

ALIYUN::ASM::ServiceMesh类型用于创建服务网格实例。

语法

{
  "Type": "ALIYUN::ASM::ServiceMesh",
  "Properties": {
    "EnableAudit": Boolean,
    "OPA": Map,
    "IstioVersion": String,
    "ApiServerPublicEip": Boolean,
    "LocalityLoadBalancing": Boolean,
    "Telemetry": Boolean,
    "OutboundTrafficPolicy": String,
    "AuditProject": String,
    "TraceSampling": Number,
    "Name": String,
    "Proxy": Map,
    "VpcId": String,
    "PilotPublicEip": Boolean,
    "IncludeIPRanges": String,
    "VSwitches": List,
    "Tracing": Boolean,
    "CustomizedZipkin": Boolean
  }
}

属性

属性名称

类型

必须

允许更新

描述

约束

VpcId

String

专有网络ID。

VSwitches

List

交换机ID。

ApiServerPublicEip

Boolean

是否使用公网地址暴露API Server。

取值:

  • true

  • false(默认值)

AuditProject

String

网格审计对应的日志项目名称。

默认值:mesh-log-{meshId}。

CustomizedZipkin

Boolean

是否启用自建Zipkin。

取值:

  • true

  • false

EnableAudit

Boolean

是否启用网格审计 。

取值:

  • true

  • false(默认值)

说明

您需要开通阿里云日志服务。

IncludeIPRanges

String

拦截对外访问的地址范围。

IstioVersion

String

Istio版本号。

LocalityLoadBalancing

Boolean

是否启用服务就近访问。

取值:

  • true

  • false(默认值)

Name

String

服务网格名称。

OPA

Map

开放策略代理。

更多信息,请参见OPA属性

OutboundTrafficPolicy

String

对外部服务的访问策略。

取值:

  • ALLOW_ANY

  • REGISTRY_ONLY

PilotPublicEip

Boolean

是否使用公网地址暴露Istio Pilot。

取值:

  • true

  • false(默认值)

Proxy

Map

代理。

更多信息,请参见Proxy属性

Telemetry

Boolean

开启采集Prometheus监控指标。

建议您使用阿里云Prometheus监控。

TraceSampling

Number

链路追踪采样百分比。

Tracing

Boolean

是否启用链路追踪。

取值:

  • true

  • false(默认值)

说明

您需要开通阿里云链路追踪服务。

OPA语法

"OPA": {
  "OPARequestCPU": String,
  "OpenAgentPolicy": Boolean,
  "OPALogLevel": String,
  "OPALimitCPU": String,
  "OPALimitMemory": String,
  "OPARequestMemory": String
}

OPA属性

属性名称

类型

必须

允许更新

描述

约束

OPALimitCPU

String

OPA代理容器的CPU资源限制。

OPALimitMemory

String

OPA代理容器的内存资源限制。

OPALogLevel

String

OPA代理容器日志级别。

OPARequestCPU

String

OPA代理容器的CPU资源请求。

OPARequestMemory

String

OPA代理容器的内存资源请求。

OpenAgentPolicy

Boolean

是否集成开放策略代理(OPA)插件。

取值:

  • true

  • false(默认值)

Proxy语法

"Proxy": {
  "ClusterDomain": String,
  "ProxyLimitCPU": String,
  "ProxyLimitMemory": String,
  "ProxyRequestCPU": String,
  "ProxyRequestMemory": String
}

Proxy属性

属性名称

类型

必须

允许更新

描述

约束

ClusterDomain

String

集群域名。

ProxyLimitCPU

String

CPU资源限制。

ProxyLimitMemory

String

内存资源限制。

ProxyRequestCPU

String

CPU所需资源。

ProxyRequestMemory

String

内存所需资源。

返回值

Fn::GetAtt

ServiceMeshId:服务网格ID。

示例

YAML格式

ROSTemplateFormatVersion: '2015-09-01'
Parameters:
  ZoneId:
    Type: String
    Description: Create an Availability Zone for an instance to ensure that the Availability Zone supports the creation of Memcache resource specifications.
    AssociationProperty: ALIYUN::ECS::Instance::ZoneId
    Label: Zone ID
  VPC:
    AssociationProperty: ALIYUN::ECS::VPC::VPCId
    Type: String
    Description: Please search the ID starts with (vpc-xxx)from console-Virtual Private Cloud
    Label: Existing VPC Instance ID
  VSwitch:
    AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
    Type: String
    Description: Please search the business VSwitch ID starts with(vsw-xxx)from console-Virtual Private Cloud-VSwitches
    Label: Existing VSwitch ID
    AssociationPropertyMetadata:
      VpcId: VPC
      ZoneId: ZoneId
Resources:
  ServiceMesh:
    Type: ALIYUN::ASM::ServiceMesh
    Properties:
      VpcId:
        Ref: VPC
      VSwitches:
        - Ref: VSwitch
Outputs:
  ServiceMeshId:
    Description: The ID of the ASM instance.
    Value:
      Fn::GetAtt:
        - ServiceMesh
        - ServiceMeshId

JSON格式

{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Parameters": {
    "ZoneId": {
      "Type": "String",
      "Description": "Create an Availability Zone for an instance to ensure that the Availability Zone supports the creation of Memcache resource specifications.",
      "AssociationProperty": "ALIYUN::ECS::Instance::ZoneId",
      "Label": "Zone ID"
    },
    "VPC": {
      "AssociationProperty": "ALIYUN::ECS::VPC::VPCId",
      "Type": "String",
      "Description": "Please search the ID starts with (vpc-xxx)from console-Virtual Private Cloud",
      "Label": "Existing VPC Instance ID"
    },
    "VSwitch": {
      "AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
      "Type": "String",
      "Description": "Please search the business VSwitch ID starts with(vsw-xxx)from console-Virtual Private Cloud-VSwitches",
      "Label": "Existing VSwitch ID",
      "AssociationPropertyMetadata": {
        "VpcId": "VPC",
        "ZoneId": "ZoneId"
      }
    }
  },
  "Resources": {
    "ServiceMesh": {
      "Type": "ALIYUN::ASM::ServiceMesh",
      "Properties": {
        "VpcId": {
          "Ref": "VPC"
        },
        "VSwitches": [
          {
            "Ref": "VSwitch"
          }
        ]
      }
    }
  },
  "Outputs": {
    "ServiceMeshId": {
      "Description": "The ID of the ASM instance.",
      "Value": {
        "Fn::GetAtt": [
          "ServiceMesh",
          "ServiceMeshId"
        ]
      }
    }
  }
}