ALIYUN::PVTZ::Zone is used to create a private zone.

For more information about private zones, see What is PrivateZone?

Syntax

{
  "Type": "ALIYUN::PVTZ::Zone",
  "Properties": {
    "ProxyPattern": String,
    "Remark": String,
    "ZoneName": String,
    "ZoneTag": String,
    "ZoneType": String
  }
}

Properties

Property Type Required Editable Description Constraint
ProxyPattern String No Yes Specifies whether to enable the recursive DNS proxy. Valid values:
  • ZONE: disables the recursive DNS proxy for the private zone.
  • RECORD: enables the recursive DNS proxy for the private zone.
Remark String No Yes The description of the private zone. None
ZoneName String Yes No The name of the private zone. None
ZoneTag String No No The tag of the private zone. This property is ignored if ZoneType is set to AUTH_ZONE.
ZoneType String No No The type of the private zone. Default value: AUTH_ZONE. Valid values:
  • AUTH_ZONE: the zone type from the authoritative zone list.
  • CLOUD_PRODUCT_ZONE: the zone type from the zone list of the cloud services that you use.

Response parameters

Fn::GetAtt

  • ZoneName: the name of the private zone.
  • ZoneId: the ID of the private zone.
  • ZoneType: the type of the private zone.
  • ZoneTag: the tag of the private zone.

Examples

JSON format

{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Parameters": {
    "ZoneName": {
      "Type": "String",
      "Description": "Zone name"
    },
    "ProxyPattern": {
      "Type": "String",
      "Description": "ZONE: completely hijack the entire zone.\nRECORD: Incomplete hijacking, recursive resolution agent.\nDefault to ZONE.",
      "AllowedValues": [
        "RECORD",
        "ZONE"
      ],
      "Default": "ZONE"
    },
    "ZoneTag": {
      "Type": "String",
      "Description": "Zone label. It will be ignored when ZoneType is AUTH_ZONE."
    },
    "ZoneType": {
      "Type": "String",
      "Description": "Zone type. For instance: AUTH_ZONE, CLOUD_PRODUCT_ZONE."
    },
    "Remark": {
      "Type": "String",
      "Description": "50 characters at most. It can only contain numbers, Chinese, English and special characters: \ " _ - , \".",
      "AllowedPattern": "^[-_,.\\uff0c\\u3002a-zA-Z0-9\\u4e00-\\u9fa5]{0,50}$",
      "MaxLength": 50
    }
  },
  "Resources": {
    "Zone": {
      "Type": "ALIYUN::PVTZ::Zone",
      "Properties": {
        "ZoneName": {
          "Ref": "ZoneName"
        },
        "ProxyPattern": {
          "Ref": "ProxyPattern"
        },
        "ZoneTag": {
          "Ref": "ZoneTag"
        },
        "ZoneType": {
          "Ref": "ZoneType"
        },
        "Remark": {
          "Ref": "Remark"
        }
      }
    }
  },
  "Outputs": {
    "ZoneName": {
      "Description": "Zone name.",
      "Value": {
        "Fn::GetAtt": [
          "Zone",
          "ZoneName"
        ]
      }
    },
    "ZoneId": {
      "Description": "Zone ID.",
      "Value": {
        "Fn::GetAtt": [
          "Zone",
          "ZoneId"
        ]
      }
    },
    "ZoneTag": {
      "Description": "Zone label.",
      "Value": {
        "Fn::GetAtt": [
          "Zone",
          "ZoneTag"
        ]
      }
    },
    "ZoneType": {
      "Description": "Zone type.",
      "Value": {
        "Fn::GetAtt": [
          "Zone",
          "ZoneType"
        ]
      }
    }
  }
}

YAML format

ROSTemplateFormatVersion: '2015-09-01'
Parameters:
  ProxyPattern:
    AllowedValues:
    - RECORD
    - ZONE
    Default: ZONE
    Description: 'ZONE: completely hijack the entire zone.

      RECORD: Incomplete hijacking, recursive resolution agent.

      Default to ZONE.'
    Type: String
  Remark:
    AllowedPattern: ^[-_,.\uff0c\u3002a-zA-Z0-9\u4e00-\u9fa5]{0,50}$
    Description: "50 characters at most. It can only contain numbers, Chinese, English\
      \ and special characters: \"_-,.\uFF0C\u3002\"."
    MaxLength: 50
    Type: String
  ZoneName:
    Description: Zone name
    Type: String
  ZoneTag:
    Description: Zone label. It will be ignored when ZoneType is AUTH_ZONE.
    Type: String
  ZoneType:
    Description: 'Zone type. For instance: AUTH_ZONE, CLOUD_PRODUCT_ZONE.'
    Type: String
Resources:
  Zone:
    Properties:
      ProxyPattern:
        Ref: ProxyPattern
      Remark:
        Ref: Remark
      ZoneName:
        Ref: ZoneName
      ZoneTag:
        Ref: ZoneTag
      ZoneType:
        Ref: ZoneType
    Type: ALIYUN::PVTZ::Zone
Outputs:
  ZoneId:
    Description: Zone ID.
    Value:
      Fn::GetAtt:
      - Zone
      - ZoneId
  ZoneName:
    Description: Zone name.
    Value:
      Fn::GetAtt:
      - Zone
      - ZoneName
  ZoneTag:
    Description: Zone label.
    Value:
      Fn::GetAtt:
      - Zone
      - ZoneTag
  ZoneType:
    Description: Zone type.
    Value:
      Fn::GetAtt:
      - Zone
      - ZoneType

To view more examples, visit PVTZ.json and PVTZ.yml. In the examples, the ALIYUN::PVTZ::Zone, ALIYUN::PVTZ::ZoneRecord, and ALIYUN::PVTZ::ZoneVpcBinder resource types are used.