{ "additionalProperties": false, "description": "Tier-0 configuration for external connectivity.", "extends": { "$ref": "PolicyConfigResource }, "id": "Tier0", "module_id": "PolicyConnectivity", "policy_hierarchical_children": [ "ChildCommunityList", "ChildEvpnConfig", "ChildIPSecVpnService", "ChildL2VPNService", "ChildLocaleServices", "ChildPolicyDnsForwarder", "ChildPrefixList", "ChildStaticRoutes", "ChildTier0RouteMap", "ChildTier0SecurityFeatures" ], "properties": { "_create_time": { "$ref": "EpochMsTimestamp, "can_sort": true, "description": "Timestamp of resource creation", "readonly": true }, "_create_user": { "description": "ID of the user who created this resource", "readonly": true, "type": "string" }, "_last_modified_time": { "$ref": "EpochMsTimestamp, "can_sort": true, "description": "Timestamp of last modification", "readonly": true }, "_last_modified_user": { "description": "ID of the user who last modified this resource", "readonly": true, "type": "string" }, "_links": { "description": "The server will populate this field when returing the resource. Ignored on PUT and POST.", "items": { "$ref": "ResourceLink }, "readonly": true, "title": "References related to this resource", "type": "array" }, "_protection": { "description": "Protection status is one of the following: PROTECTED - the client who retrieved the entity is not allowed to modify it. NOT_PROTECTED - the client who retrieved the entity is allowed to modify it REQUIRE_OVERRIDE - the client who retrieved the entity is a super user and can modify it, but only when providing the request header X-Allow-Overwrite=true. UNKNOWN - the _protection field could not be determined for this entity.", "readonly": true, "title": "Indicates protection status of this resource", "type": "string" }, "_revision": { "description": "The _revision property describes the current revision of the resource. To prevent clients from overwriting each other's changes, PUT operations must include the current _revision of the resource, which clients should obtain by issuing a GET operation. If the _revision provided in a PUT request is missing or stale, the operation will be rejected.", "title": "Generation of this resource config", "type": "int" }, "_schema": { "readonly": true, "title": "Schema for this resource", "type": "string" }, "_self": { "$ref": "SelfResourceLink, "readonly": true, "title": "Link to this resource" }, "_system_owned": { "description": "Indicates system owned resource", "readonly": true, "type": "boolean" }, "advanced_config": { "$ref": "Tier0AdvancedConfig, "description": "NSX specific configuration for tier-0", "required": false, "title": "Advanced configuration for tier-0" }, "arp_limit": { "description": "Maximum number of ARP entries per transport node.", "maximum": 50000, "minimum": 5000, "required": false, "title": "ARP limit per transport node", "type": "int" }, "children": { "description": "subtree for this type within policy tree containing nested elements.", "items": { "$ref": "ChildPolicyConfigResource }, "required": false, "title": "subtree for this type within policy tree", "type": "array" }, "default_rule_logging": { "default": false, "deprecated": true, "description": "Indicates if logging should be enabled for the default whitelisting rule. This field is deprecated and recommended to change Rule logging field. Note that this field is not synchronized with default logging field.", "required": false, "title": "Enable logging for whitelisted rule", "type": "boolean" }, "description": { "can_sort": true, "maxLength": 1024, "title": "Description of this resource", "type": "string" }, "dhcp_config_paths": { "description": "DHCP configuration for Segments connected to Tier-0. DHCP service is configured in relay mode.", "items": { "type": "string" }, "maxItems": 1, "minItems": 0, "required": false, "title": "DHCP configuration for Segments connected to Tier-0", "type": "array", "x-vmw-cross-reference": [ { "leftType": [ "Tier0" ], "relationshipType": "DHCP_SERVER_CONFIG_RELATIONSHIP", "rightType": [ "DhcpServerConfig" ] }, { "leftType": [ "Tier0" ], "relationshipType": "DHCP_RELAY_CONFIG_RELATIONSHIP", "rightType": [ "DhcpRelayConfig" ] } ] }, "disable_firewall": { "default": false, "description": "Disable or enable gateway fiewall.", "required": false, "title": "Disable gateway firewall", "type": "boolean" }, "display_name": { "can_sort": true, "description": "Defaults to ID if not set", "maxLength": 255, "title": "Identifier to use when displaying entity in logs or GUI", "type": "string" }, "failover_mode": { "default": "NON_PREEMPTIVE", "description": "Determines the behavior when a Tier-0 instance in ACTIVE-STANDBY high-availability mode restarts after a failure. If set to PREEMPTIVE, the preferred node will take over, even if it causes another failure. If set to NON_PREEMPTIVE, then the instance that restarted will remain secondary. This property is not used when the ha_mode property is set to ACTIVE_ACTIVE. Only applicable when edge cluster is configured in Tier0 locale-service.", "enum": [ "PREEMPTIVE", "NON_PREEMPTIVE" ], "required": false, "title": "Failover mode", "type": "string" }, "federation_config": { "$ref": "FederationGatewayConfig, "description": "Additional config for federation.", "readonly": true, "title": "Federation releated config" }, "force_whitelisting": { "default": false, "deprecated": true, "description": "This field is deprecated and recommended to change Rule action field. Note that this field is not synchronized with default rule field.", "required": false, "title": "Flag to add whitelisting FW rule during realization", "type": "boolean" }, "ha_mode": { "default": "ACTIVE_ACTIVE", "description": "Specify high-availability mode for Tier-0. Default is ACTIVE_ACTIVE. When ha_mode is changed from ACTIVE_ACTIVE to ACTIVE_STANDBY, inter SR iBGP (in BGP) is disabled. Changing ha_mode from ACTIVE_STANDBY to ACTIVE_ACTIVE will enable inter SR iBGP (in BGP) and previously configured preferred edge nodes (in Tier0 locale-service) are removed.", "enum": [ "ACTIVE_ACTIVE", "ACTIVE_STANDBY" ], "required": false, "title": "High-availability Mode for Tier-0", "type": "string" }, "id": { "can_sort": true, "title": "Unique identifier of this resource", "type": "string" }, "internal_transit_subnets": { "description": "Specify subnets that are used to assign addresses to logical links connecting service routers and distributed routers. Only IPv4 addresses are supported. When not specified, subnet 169.254.0.0/24 is assigned by default in ACTIVE_ACTIVE HA mode or 169.254.0.0/28 in ACTIVE_STANDBY mode.", "items": { "format": "ip-cidr-block", "type": "string" }, "maxItems": 1, "required": false, "title": "Internal transit subnets in CIDR format", "type": "array" }, "intersite_config": { "$ref": "IntersiteGatewayConfig, "description": "Inter site routing configuration when the gateway is streched.", "required": false, "title": "Inter site routing configuration" }, "ipv6_profile_paths": { "description": "IPv6 NDRA and DAD profiles configuration on Tier0. Either or both NDRA and/or DAD profiles can be configured.", "items": { "type": "string" }, "maxItems": 2, "minItems": 0, "required": false, "title": "IPv6 NDRA and DAD profiles configuration", "type": "array", "x-vmw-cross-reference": [ { "leftType": [ "Tier0" ], "relationshipType": "IPV6_NDRA_PROFILE_RELATIONSHIP", "rightType": [ "Ipv6NdraProfile" ] }, { "leftType": [ "Tier0" ], "relationshipType": "IPV6_DAD_PROFILE_RELATIONSHIP", "rightType": [ "Ipv6DadProfile" ] } ] }, "marked_for_delete": { "default": false, "description": "Intent objects are not directly deleted from the system when a delete is invoked on them. They are marked for deletion and only when all the realized entities for that intent object gets deleted, the intent object is deleted. Objects that are marked for deletion are not returned in GET call. One can use the search API to get these objects.", "readonly": true, "required": false, "title": "Indicates whether the intent object is marked for deletion", "type": "boolean" }, "overridden": { "default": false, "description": "Global intent objects cannot be modified by the user. However, certain global intent objects can be overridden locally by use of this property. In such cases, the overridden local values take precedence over the globally defined values for the properties.", "readonly": true, "required": false, "title": "Indicates whether this object is the overridden intent object", "type": "boolean" }, "parent_path": { "description": "Path of its parent", "readonly": true, "required": false, "title": "Path of its parent", "type": "string" }, "path": { "description": "Absolute path of this object", "readonly": true, "required": false, "title": "Absolute path of this object", "type": "string" }, "rd_admin_field": { "$ref": "IPAddress, "description": "If you are using EVPN service, then route distinguisher administrator address should be defined if you need auto generation of route distinguisher on your VRF configuration.", "required": false, "title": "Route distinguisher administrator address" }, "realization_id": { "description": "This is a UUID generated by the system for realizing the entity object. In most cases this should be same as 'unique_id' of the entity. However, in some cases this can be different because of entities have migrated thier unique identifier to NSX Policy intent objects later in the timeline and did not use unique_id for realization. Realization id is helpful for users to debug data path to correlate the configuration with corresponding intent.", "readonly": true, "required": false, "title": "A unique identifier assigned by the system for realizing intent", "type": "string" }, "relative_path": { "description": "Path relative from its parent", "readonly": true, "required": false, "title": "Relative path of this object", "type": "string" }, "resource_type": { "description": "The type of this resource.", "readonly": false, "type": "string" }, "tags": { "items": { "$ref": "Tag }, "maxItems": 30, "title": "Opaque identifiers meaningful to the API user", "type": "array" }, "transit_subnets": { "description": "Specify transit subnets that are used to assign addresses to logical links connecting tier-0 and tier-1s. Both IPv4 and IPv6 addresses are supported. When not specified, subnet 100.64.0.0/16 is configured by default. The value in VRF tier-0 is always inherited from the parent.", "items": { "format": "ip-cidr-block", "type": "string" }, "required": false, "title": "Transit subnets in CIDR format", "type": "array" }, "unique_id": { "description": "This is a UUID generated by the GM/LM to uniquely identify entites in a federated environment. For entities that are stretched across multiple sites, the same ID will be used on all the stretched sites.", "readonly": true, "required": false, "title": "A unique identifier assigned by the system", "type": "string" }, "vrf_config": { "$ref": "Tier0VrfConfig, "description": "VRF config, required for VRF Tier0.", "required": false, "title": "VRF config" } }, "title": "Tier-0 configuration", "type": "object" }