oci core vcn
Overview
A virtual cloud network (VCN). For more information, see Overview of the Networking Service.
To use any of the API operations, you must be authorized in an IAM policy. If you’re not authorized, talk to an administrator. If you’re an administrator who needs to write policies to give users access, see Getting Started with Policies.
Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.
Here is an example on how to use this:
oci_core_vcn { 'tenant (root)/my_vcn':
ensure => 'present',
cidr_block => '10.0.0.0/16',
freeform_tags => {'test' => 'yes'},
}
This documentation is generated from the Ruby OCI SDK.
Attributes
| Attribute Name | Short Description |
|---|---|
| absent_states | The OCI states, puppet will detect as the resource being absent. |
| cidr_block | The CIDR IP address block of the VCN. |
| compartment | The Puppet® name of the resource identified by compartment_id. |
| compartment_id | The OCID of the compartment that contains the object. |
| default_dhcp_options | The Puppet® name of the resource identified by default_dhcp_options_id. |
| default_dhcp_options_id | The OCID for the VCN’s default set of DHCP options. |
| default_route_table | The Puppet® name of the resource identified by default_route_table_id. |
| default_route_table_id | The OCID for the VCN’s default route table. |
| default_security_list | The Puppet® name of the resource identified by default_security_list_id. |
| default_security_list_id | The OCID for the VCN’s default security list. |
| defined_tags | Defined tags for this resource. |
| disable_corrective_change | Disable the modification of a resource when Puppet® decides it is a corrective change. |
| disable_corrective_ensure | Disable the creation or removal of a resource when Puppet® decides is a corrective change. |
| dns_label | within this subnet (for example, bminstance-1.subnet123.vcn1.oraclevcn.com). |
| ensure | The basic property that the resource should be in. |
| freeform_tags | Free-form tags for this resource. |
| id | The OCID of the resource. |
| ipv6_cidr_block | /48 CIDR block from the supported ranges (see IPv6 Addresses. |
| ipv6_public_cidr_block | For an IPv6-enabled VCN, this is the IPv6 CIDR block for the VCN’s public IP address space. |
| is_ipv6_enabled | Whether IPv6 is enabled for the VCN. |
| lifecycle_state | The VCN’s current state. |
| name | The full name of the object. |
| oci_timeout | The maximum time to wait for the OCI resource to be in the ready state. |
| oci_wait_interval | The interval beween calls to OCI to check if a resource is in the ready state. |
| present_states | The OCI states, puppet will detect as the resource being present. |
| provider | resource. |
| synchronized | Specifies if Puppet® waits for OCI actions to be ready before moving on to an other resource. |
| tenant | The tenant for this resource. |
| time_created | The date and time the VCN was created, in the format defined by RFC3339. |
| vcn_domain_name | oraclevcn.com domain. |
| vcn_name | The name of the vcn. |
absent_states
The OCI states, puppet will detect as the resource being absent.
Back to overview of oci_core_vcn
cidr_block
The CIDR IP address block of the VCN.
Example: 172.16.0.0/16
This documentation is generated from the Ruby OCI SDK.
Back to overview of oci_core_vcn
compartment
The Puppet® name of the resource identified by compartment_id.
See the documentation of compartment_id for all details.
This documentation is generated from the Ruby OCI SDK.
Back to overview of oci_core_vcn
compartment_id
The OCID of the compartment that contains the object.
Rather use the property compartment instead of a direct OCID reference.
This documentation is generated from the Ruby OCI SDK.
Back to overview of oci_core_vcn
default_dhcp_options
The Puppet® name of the resource identified by default_dhcp_options_id.
See the documentation of default_dhcp_options_id for all details.
This documentation is generated from the Ruby OCI SDK.
Back to overview of oci_core_vcn
default_dhcp_options_id
The OCID for the VCN’s default set of DHCP options. Rather use the property default_dhcp_options instead of a direct OCID reference.
This documentation is generated from the Ruby OCI SDK.
Back to overview of oci_core_vcn
default_route_table
The Puppet® name of the resource identified by default_route_table_id.
See the documentation of default_route_table_id for all details.
This documentation is generated from the Ruby OCI SDK.
Back to overview of oci_core_vcn
default_route_table_id
The OCID for the VCN’s default route table. Rather use the property default_route_table instead of a direct OCID reference.
This documentation is generated from the Ruby OCI SDK.
Back to overview of oci_core_vcn
default_security_list
The Puppet® name of the resource identified by default_security_list_id.
See the documentation of default_security_list_id for all details.
This documentation is generated from the Ruby OCI SDK.
Back to overview of oci_core_vcn
default_security_list_id
The OCID for the VCN’s default security list. Rather use the property default_security_list instead of a direct OCID reference.
This documentation is generated from the Ruby OCI SDK.
Back to overview of oci_core_vcn
defined_tags
Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Example: {"Operations": {"CostCenter": "42"}}
This documentation is generated from the Ruby OCI SDK.
Back to overview of oci_core_vcn
disable_corrective_change
Disable the modification of a resource when Puppet® decides it is a corrective change.
(requires easy_type V2.11.0 or higher)
When using a Puppet® Server, Puppet® knows about adaptive and corrective changes. A corrective change is when Puppet® notices that the resource has changed, but the catalog has not changed. This can occur for example, when a user, by accident or willingly, changed something on the system that Puppet® is managing. The normal Puppet® process then repairs this and puts the resource back in the state as defined in the catalog. This process is precisely what you want most of the time, but not always. This can sometimes also occur when a hardware or network error occurs. Then Puppet® cannot correctly determine the current state of the system and thinks the resource is changed, while in fact, it is not. Letting Puppet recreate remove or change the resource in these cases, is NOT wat you want.
Using the disable_corrective_change parameter, you can disable corrective changes on the current resource.
Here is an example of this:
crucial_resource {'be_carefull':
...
disable_corrective_change => true,
...
}
When a corrective ensure does happen on the resource Puppet® will not modify the resource and signal an error:
Error: Corrective change present requested by catalog, but disabled by parameter disable_corrective_change
Error: /Stage[main]/Main/Crucial_resource[be_carefull]/parameter: change from '10' to '20' failed: Corrective change present requested by catalog, but disabled by parameter disable_corrective_change. (corrective)
Back to overview of oci_core_vcn
disable_corrective_ensure
Disable the creation or removal of a resource when Puppet® decides is a corrective change.
(requires easy_type V2.11.0 or higher)
When using a Puppet® Server, Puppet® knows about adaptive and corrective changes. A corrective change is when Puppet® notices that the resource has changed, but the catalog has not changed. This can occur for example, when a user, by accident or willingly, changed something on the system that Puppet® is managing. The normal Puppet® process then repairs this and puts the resource back in the state as defined in the catalog. This process is precisely what you want most of the time, but not always. This can sometimes also occur when a hardware or network error occurs. Then Puppet® cannot correctly determine the current state of the system and thinks the resource is changed, while in fact, it is not. Letting Puppet recreate remove or change the resource in these cases, is NOT wat you want.
Using the disable_corrective_ensure parameter, you can disable corrective ensure present or ensure absent actions on the current resource.
Here is an example of this:
crucial_resource {'be_carefull':
ensure => 'present',
...
disable_corrective_ensure => true,
...
}
When a corrective ensure does happen on the resource Puppet® will not create or remove the resource and signal an error:
Error: Corrective ensure present requested by catalog, but disabled by parameter disable_corrective_ensure.
Error: /Stage[main]/Main/Crucial_resource[be_carefull]/ensure: change from 'absent' to 'present' failed: Corrective ensure present requested by catalog, but disabled by parameter disable_corrective_ensure. (corrective)
Back to overview of oci_core_vcn
dns_label
A DNS label for the VCN, used in conjunction with the VNIC’s hostname and subnet’s DNS label to form a fully qualified domain name (FQDN) for each VNIC within this subnet (for example, bminstance-1.subnet123.vcn1.oraclevcn.com). Not required to be unique, but it’s a best practice to set unique DNS labels for VCNs in your tenancy. Must be an alphanumeric string that begins with a letter. The value cannot be changed.
You must set this value if you want instances to be able to use hostnames to resolve other instances in the VCN. Otherwise the Internet and VCN Resolver will not work.
For more information, see DNS in Your Virtual Cloud Network.
Example: vcn1
This documentation is generated from the Ruby OCI SDK.
Back to overview of oci_core_vcn
ensure
The basic property that the resource should be in.
Valid values are present, absent.
Back to overview of oci_core_vcn
freeform_tags
Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags.
Example: {"Department": "Finance"}
This documentation is generated from the Ruby OCI SDK.
Back to overview of oci_core_vcn
id
The OCID of the resource. This is a read-only property.
This documentation is generated from the Ruby OCI SDK.
Back to overview of oci_core_vcn
ipv6_cidr_block
If you enable IPv6 for the VCN (see isIpv6Enabled), you may optionally provide an IPv6 /48 CIDR block from the supported ranges (see IPv6 Addresses. The addresses in this block will be considered private and cannot be accessed from the internet. The documentation refers to this as a custom CIDR for the VCN.
If you don’t provide a custom CIDR for the VCN, Oracle assigns the VCN’s IPv6 /48 CIDR block.
Regardless of whether you or Oracle assigns the ipv6CidrBlock, Oracle also assigns the VCN an IPv6 CIDR block for the VCN’s public IP address space (see the ipv6PublicCidrBlock of the {Vcn} object). If you do not assign a custom CIDR, Oracle uses the same Oracle-assigned CIDR for both the private IP address space (ipv6CidrBlock in the Vcn object) and the public IP addreses space (ipv6PublicCidrBlock in the Vcn object). This means that a given VNIC might use the same IPv6 IP address for both private and public (internet) communication. You control whether an IPv6 address can be used for internet communication by using the isInternetAccessAllowed attribute in the {Ipv6} object.
For important details about IPv6 addressing in a VCN, see IPv6 Addresses.
Example: 2001:0db8:0123::/48
This documentation is generated from the Ruby OCI SDK.
Back to overview of oci_core_vcn
ipv6_public_cidr_block
For an IPv6-enabled VCN, this is the IPv6 CIDR block for the VCN’s public IP address space. The VCN size is always /48. This CIDR is always provided by Oracle. If you don’t provide a custom CIDR for the ipv6CidrBlock when creating the VCN, Oracle assigns that value and also uses it for ipv6PublicCidrBlock. Oracle uses addresses from this block for the publicIpAddress attribute of an {Ipv6} that has internet access allowed.
Example: 2001:0db8:0123::/48
This documentation is generated from the Ruby OCI SDK.
Back to overview of oci_core_vcn
is_ipv6_enabled
Whether IPv6 is enabled for the VCN. Default is false. You cannot change this later. For important details about IPv6 addressing in a VCN, see IPv6 Addresses.
Example: true
This documentation is generated from the Ruby OCI SDK.
Back to overview of oci_core_vcn
lifecycle_state
The VCN’s current state.
This documentation is generated from the Ruby OCI SDK.
Back to overview of oci_core_vcn
name
The full name of the object.
Back to overview of oci_core_vcn
oci_timeout
The maximum time to wait for the OCI resource to be in the ready state.
Back to overview of oci_core_vcn
oci_wait_interval
The interval beween calls to OCI to check if a resource is in the ready state.
Back to overview of oci_core_vcn
present_states
The OCI states, puppet will detect as the resource being present.
Back to overview of oci_core_vcn
provider
The specific backend to use for this oci_core_vcn resource. You will seldom need to specify this — Puppet® will usually discover the appropriate provider for your platform.Available providers are:
- sdk
- This provider uses the Oracle Ruby OCI SDK to do its work.
Back to overview of oci_core_vcn
synchronized
Specifies if Puppet® waits for OCI actions to be ready before moving on to an other resource.
Back to overview of oci_core_vcn
tenant
The tenant for this resource.
Back to overview of oci_core_vcn
time_created
The date and time the VCN was created, in the format defined by RFC3339.
Example: 2016-08-25T21:10:29.600Z
This documentation is generated from the Ruby OCI SDK.
Back to overview of oci_core_vcn
vcn_domain_name
The VCN’s domain name, which consists of the VCN’s DNS label, and the oraclevcn.com domain.
For more information, see DNS in Your Virtual Cloud Network.
Example: vcn1.oraclevcn.com
This documentation is generated from the Ruby OCI SDK.
Back to overview of oci_core_vcn
vcn_name
The name of the vcn.
