โมดูลนี้ให้การบูตเริ่มต้นที่จำเป็นในการจัดหาเครือข่ายคลาวด์เสมือนใหม่ (VCN) ใหม่และบริการเสริมอื่น ๆ ใน Oracle Cloud Infrastructure (OCI)
VCN เป็นรากฐานหลักของเครือข่ายใน OCI โมดูลนี้ให้ความสามารถในการสร้างทรัพยากรต่อไปนี้:
| ทรัพยากร | สร้างโดยค่าเริ่มต้น? |
|---|---|
| VCN | ไม่ (ไม่บังคับ) |
| เกตเวย์อินเทอร์เน็ต | ไม่ (ไม่บังคับ) |
| Nat Gateway | ไม่ (ไม่บังคับ) |
| เกตเวย์บริการ | ไม่ (ไม่บังคับ) |
| เกตเวย์การกำหนดเส้นทางแบบไดนามิก | ไม่ (ไม่บังคับ) |
| ป้อมปราการ | ไม่ (ไม่บังคับ) |
ด้วยการใช้โมดูลนี้เครือข่ายคลาวด์พื้นฐานจะถูกสร้างขึ้นรวมถึงเส้นทางการสื่อสารพื้นฐานพื้นฐาน (สำหรับกรณีการใช้งานส่วนใหญ่แม้ว่าจะไม่ใช่ทั้งหมด) สำหรับสถานการณ์ที่จำเป็นต้องใช้ VPN-connect, FastConnect หรือ VCN peering บริการเหล่านี้จะต้องสร้างขึ้นบน VCN ที่ปรับใช้โดยโมดูลนี้
มีการจัดทำตัวอย่างเต็มรูปแบบหลายอย่างในไดเรกทอรี examples อ้างถึง README.md ในแต่ละไดเรกทอรีตัวอย่างสำหรับทิศทางเฉพาะสำหรับแต่ละตัวอย่าง
ในการเริ่มต้นอย่างรวดเร็วสำหรับการปรับใช้ขั้นต่ำคุณสามารถใช้ตัวอย่างต่อไปนี้:
module "oci_network" {
source = "../../"
#source = "oracle-terraform-modules/default-vcn/oci"
default_compartment_id = "${var.compartment_id}"
}
สิ่งนี้จะปรับใช้ VCN โดยใช้ค่าเริ่มต้นของโมดูล ตรวจสอบ readme นี้สำหรับคำอธิบายโดยละเอียดของพารามิเตอร์เหล่านี้
โดยทั่วไปแล้วโมดูลบริการหลักนี้จะใช้ในการปรับใช้โดยไม่จำเป็นต้องมีการเข้าถึงเพิ่มเติม คุณอาจต้องเข้าถึงป้อมปราการหากมีการร้องขอให้สร้างเป็นส่วนหนึ่งของโซลูชัน
คุณสามารถจัดการสภาพแวดล้อมที่ปรับใช้ได้โดยใช้ Terraform (ดีที่สุด), OCI CLI, OCI Console (UI) โดยตรงผ่าน API ฯลฯ
| คุณลักษณะ | ชนิดข้อมูล | ที่จำเป็น | ค่าเริ่มต้น | ค่าที่ถูกต้อง | คำอธิบาย |
|---|---|---|---|---|---|
| default_compartment_id | สาย | ใช่ | ไม่มี | สตริงของช่อง ocid | นี่คือ OCID เริ่มต้นที่จะใช้เมื่อสร้างวัตถุ (เว้นแต่จะถูกแทนที่สำหรับวัตถุใด ๆ ที่เฉพาะเจาะจง) สิ่งนี้จะต้องเป็น OCID ของช่องที่มีอยู่ก่อน (จะไม่สร้างช่อง) |
| vcn_options | แผนที่ | เลขที่ | ดูด้านล่าง | ดูด้านล่าง | พารามิเตอร์เสริมที่สามารถใช้ในการปรับแต่ง VCN |
| ที่มีอยู่ _vcn_id | สาย | เลขที่ | โมฆะ | OCID ของ VCN ที่มีอยู่แล้ว | หากไม่ควรสร้าง VCN ใหม่ควรให้ OCID ของ VCN ที่มีอยู่ที่นี่ ทรัพยากรที่สร้างขึ้นทั้งหมดจะเป็นส่วนหนึ่งของ VCN ที่มีอยู่แล้วนี้ (หากไม่มี VCN) |
โปรดทราบว่าเมื่อมีการสร้าง VCN ทรัพยากรเริ่มต้น (ตารางเส้นทางรายการความปลอดภัยและตัวเลือก DHCP) จะถูกทิ้งไว้ตามที่เป็นอยู่ (ไม่ได้รับการแก้ไขในทางใดทางหนึ่ง) บ่อยครั้งที่ทรัพยากรเหล่านี้ไม่ได้ใช้ ดูเอกสารเกี่ยวกับทรัพยากรเริ่มต้นส่วนประกอบเริ่มต้นที่มาพร้อมกับ VCN ของคุณและรายการความปลอดภัยเริ่มต้นสำหรับข้อมูลเพิ่มเติม
vcn_options
แอตทริบิวต์ vcn_options เป็นแอตทริบิวต์แผนที่เสริม โปรดทราบว่าหากมีการใช้แอตทริบิวต์นี้ต้องระบุคีย์/ค่าทั้งหมด (Terraform ไม่อนุญาตให้ใช้คีย์/ค่าแผนที่เริ่มต้นหรือเป็นตัวเลือก) มันมีคีย์ที่กำหนดต่อไปนี้ (และค่าเริ่มต้น):
| สำคัญ | ชนิดข้อมูล | ค่าเริ่มต้น | ค่าที่ถูกต้อง | คำอธิบาย |
|---|---|---|---|---|
| display_name | สาย | "VCN" | ชื่อใด ๆ ที่ยอมรับได้สำหรับ OCI API | ใช้เพื่อกำหนดชื่อเฉพาะสำหรับ VCN ของคุณ |
| ช่อง _id | สาย | โมฆะ | ช่อง ocid | ช่อง OCID ที่มีอยู่ก่อน (หากไม่ควรใช้ช่องเริ่มต้น) หากค่านี้เป็นโมฆะช่อง OCID เริ่มต้นจะถูกใช้ |
| กำหนด _tags | แผนที่ (สตริง) | - | แผนที่ของชื่อแท็กและค่าใด ๆ ที่ยอมรับได้ของ OCI API | หากควรตั้งค่าแท็กที่กำหนดไว้ในทรัพยากรนี้ให้ทำกับแอตทริบิวต์นี้ |
| freeform_tags | แผนที่ (สตริง) | - | แผนที่ของชื่อแท็กและค่าใด ๆ ที่ยอมรับได้ของ OCI API | หากควรตั้งค่าแท็ก freeform ใด ๆ บนทรัพยากรนี้ให้ทำกับแอตทริบิวต์นี้ |
| CIDR | สาย | "10.0.0.0/16" | IPv4 CIDR | ระบุ IPv4 CIDR ที่จะใช้สำหรับ VCN |
| enable_dns | บูล | จริง | จริง/เท็จ | ไม่ว่าจะเปิดใช้งาน DNS บน VCN หรือไม่ |
| dns_label | สาย | "VCN" | ชื่อ DNS ที่ถูกต้อง | ระบุฉลาก DNS ที่จะใช้สำหรับ VCN หากค่านี้เป็นโมฆะ DNS จะถูกปิดใช้งานสำหรับ VCN |
ตัวอย่าง
ตัวอย่างต่อไปนี้สร้าง VCN ด้วย CIDR ที่ 10.0.0.0/24, ชื่อแสดงของ การทดสอบโมดูล , ฉลาก DNS ของ TestVCN และใช้ช่องเริ่มต้น OCID (ไม่แสดงในตัวอย่างด้านบน)
module "oci_network" {
... /snip - shortened for brevity...
vcn_options = {
display_name = "Module test"
cidr = "10.0.0.0/24"
enable_dns = true
dns_label = "testvcn"
compartment_id = null
defined_tags = null
freeform_tags = null
}
}
| คุณลักษณะ | ชนิดข้อมูล | ที่จำเป็น | ค่าเริ่มต้น | ค่าที่ถูกต้อง | คำอธิบาย |
|---|---|---|---|---|---|
| create_igw | บูล | เลขที่ | เท็จ | จริง/เท็จ | ไม่ว่าจะเป็น IGW ใน VCN หรือไม่ |
| igw_options | แผนที่ | เลขที่ | ดูด้านล่าง | ดูด้านล่าง | พารามิเตอร์เสริมที่สามารถใช้ในการปรับแต่ง IGW |
igw_options
แอตทริบิวต์ igw_options เป็นแอตทริบิวต์แผนที่เสริม โปรดทราบว่าหากมีการใช้แอตทริบิวต์นี้ต้องระบุคีย์/ค่าทั้งหมด (Terraform ไม่อนุญาตให้ใช้คีย์/ค่าแผนที่เริ่มต้นหรือเป็นตัวเลือก) มันมีคีย์ที่กำหนดต่อไปนี้ (และค่าเริ่มต้น):
| สำคัญ | ชนิดข้อมูล | ค่าเริ่มต้น | ค่าที่ถูกต้อง | คำอธิบาย |
|---|---|---|---|---|
| display_name | สาย | "IGW" | ชื่อใด ๆ ที่ยอมรับได้สำหรับ OCI API | ใช้เพื่อกำหนดชื่อเฉพาะสำหรับ IGW ของคุณ |
| ช่อง _id | สาย | โมฆะ | ช่อง ocid | ช่อง OCID ที่มีอยู่ก่อน (หากไม่ควรใช้ช่องเริ่มต้น) หากค่านี้เป็นโมฆะช่อง OCID เริ่มต้นจะถูกใช้ |
| กำหนด _tags | แผนที่ (สตริง) | - | แผนที่ของชื่อแท็กและค่าใด ๆ ที่ยอมรับได้ของ OCI API | หากควรตั้งค่าแท็กที่กำหนดไว้ในทรัพยากรนี้ให้ทำกับแอตทริบิวต์นี้ |
| freeform_tags | แผนที่ (สตริง) | - | แผนที่ของชื่อแท็กและค่าใด ๆ ที่ยอมรับได้ของ OCI API | หากควรตั้งค่าแท็ก freeform ใด ๆ บนทรัพยากรนี้ให้ทำกับแอตทริบิวต์นี้ |
| เปิดใช้งาน | บูล | จริง | จริง/เท็จ | ไม่ว่าควรเปิดใช้งาน IGW หรือไม่ |
ตัวอย่าง
module "oci_network" {
... /snip - shortened for brevity...
igw_options = {
display_name = "my_igw"
compartment_id = null
defined_tags = null
freeform_tags = null
enabled = false
}
}
ตัวอย่างข้างต้นจะสร้าง IGW (เปิดใช้งาน) ใน VCN ด้วยชื่อที่แสดงของ MY_IGW และใช้ช่องเริ่มต้น OCID (ไม่แสดงในตัวอย่างด้านบน)
| คุณลักษณะ | ชนิดข้อมูล | ที่จำเป็น | ค่าเริ่มต้น | ค่าที่ถูกต้อง | คำอธิบาย |
|---|---|---|---|---|---|
| create_natgw | บูล | เลขที่ | เท็จ | จริง/เท็จ | ไม่ว่าควรจะสร้าง NATGW ใน VCN หรือไม่ |
| natgw_options | แผนที่ | เลขที่ | ดูด้านล่าง | ดูด้านล่าง | พารามิเตอร์เสริมที่สามารถใช้ในการปรับแต่ง NATGW |
natgw_options
แอตทริบิวต์ natgw_options เป็นแอตทริบิวต์แผนที่เสริม โปรดทราบว่าหากมีการใช้แอตทริบิวต์นี้ต้องระบุคีย์/ค่าทั้งหมด (Terraform ไม่อนุญาตให้ใช้คีย์/ค่าแผนที่เริ่มต้นหรือเป็นตัวเลือก) มันมีคีย์ที่กำหนดต่อไปนี้ (และค่าเริ่มต้น):
| สำคัญ | ชนิดข้อมูล | ค่าเริ่มต้น | ค่าที่ถูกต้อง | คำอธิบาย |
|---|---|---|---|---|
| display_name | สาย | "Natgw" | ชื่อใด ๆ ที่ยอมรับได้สำหรับ OCI API | ใช้เพื่อกำหนดชื่อเฉพาะสำหรับ IGW ของคุณ |
| ช่อง _id | สาย | โมฆะ | ช่อง ocid | ช่อง OCID ที่มีอยู่ก่อน (หากไม่ควรใช้ช่องเริ่มต้น) หากค่านี้เป็นโมฆะช่อง OCID เริ่มต้นจะถูกใช้ |
| กำหนด _tags | แผนที่ (สตริง) | - | แผนที่ของชื่อแท็กและค่าใด ๆ ที่ยอมรับได้ของ OCI API | หากควรตั้งค่าแท็กที่กำหนดไว้ในทรัพยากรนี้ให้ทำกับแอตทริบิวต์นี้ |
| freeform_tags | แผนที่ (สตริง) | - | แผนที่ของชื่อแท็กและค่าใด ๆ ที่ยอมรับได้ของ OCI API | หากควรตั้งค่าแท็ก freeform ใด ๆ บนทรัพยากรนี้ให้ทำกับแอตทริบิวต์นี้ |
| block_traffic | บูล | เท็จ | จริง/เท็จ | ไม่ว่า NATGW ควรปิดกั้นการรับส่งข้อมูลหรือไม่ |
ตัวอย่าง
module "oci_network" {
... /snip - shortened for brevity...
natgw_options = {
display_name = "my_natgw"
compartment_id = null
defined_tags = null
freeform_tags = null
block_traffic = false
}
}
ตัวอย่างข้างต้นจะสร้าง NATGW ใน VCN ด้วยชื่อที่แสดงของ MY_NATGW มันจะไม่บล็อกการรับส่งข้อมูลและจะใช้ช่อง OCID เริ่มต้น (ไม่แสดงในตัวอย่างด้านบน)
| คุณลักษณะ | ชนิดข้อมูล | ที่จำเป็น | ค่าเริ่มต้น | ค่าที่ถูกต้อง | คำอธิบาย |
|---|---|---|---|---|---|
| create_svcgw | บูล | เลขที่ | เท็จ | จริง/เท็จ | ไม่ว่าควรจะสร้าง SVCGW ใน VCN หรือไม่ |
| svcgw_options | แผนที่ | เลขที่ | ดูด้านล่าง | ดูด้านล่าง | พารามิเตอร์เสริมที่สามารถใช้ในการปรับแต่ง SVCGW |
svcgw_options
แอตทริบิวต์ svcgw_options เป็นแอตทริบิวต์แผนที่เสริม โปรดทราบว่าหากมีการใช้แอตทริบิวต์นี้ต้องระบุคีย์/ค่าทั้งหมด (Terraform ไม่อนุญาตให้ใช้คีย์/ค่าแผนที่เริ่มต้นหรือเป็นตัวเลือก) มันมีคีย์ที่กำหนดต่อไปนี้ (และค่าเริ่มต้น):
| สำคัญ | ชนิดข้อมูล | ค่าเริ่มต้น | ค่าที่ถูกต้อง | คำอธิบาย |
|---|---|---|---|---|
| display_name | สาย | "SVCGW" | ชื่อใด ๆ ที่ยอมรับได้สำหรับ OCI API | ใช้เพื่อกำหนดชื่อเฉพาะสำหรับ SVCGW ของคุณ |
| ช่อง _id | สาย | โมฆะ | ช่อง ocid | ช่อง OCID ที่มีอยู่ก่อน (หากไม่ควรใช้ช่องเริ่มต้น) หากค่านี้เป็นโมฆะช่อง OCID เริ่มต้นจะถูกใช้ |
| กำหนด _tags | แผนที่ (สตริง) | - | แผนที่ของชื่อแท็กและค่าใด ๆ ที่ยอมรับได้ของ OCI API | หากควรตั้งค่าแท็กที่กำหนดไว้ในทรัพยากรนี้ให้ทำกับแอตทริบิวต์นี้ |
| freeform_tags | แผนที่ (สตริง) | - | แผนที่ของชื่อแท็กและค่าใด ๆ ที่ยอมรับได้ของ OCI API | หากควรตั้งค่าแท็ก freeform ใด ๆ บนทรัพยากรนี้ให้ทำกับแอตทริบิวต์นี้ |
| บริการ | รายการ (สตริง) | โมฆะ | OCID (S) ของบริการ OCI Service Gateway ที่ถูกต้อง | ให้บริการที่ควรได้รับอนุญาตจากเกตเวย์บริการ ใช้เอาต์พุตโมดูล svcgw_services สำหรับรายการบริการในภูมิภาค (ดูตัวอย่างด้านล่าง) |
ตัวอย่าง
module "oci_network" {
... /snip - shortened for brevity...
svcgw_options = {
display_name = "my_svcgw"
compartment_id = null
defined_tags = null
freeform_tags = null
services = [
module.oci_network.svcgw_services.0.id
]
}
}
ตัวอย่างข้างต้นจะสร้าง SVCGW ใน VCN ด้วยชื่อที่แสดงของ My_SVCGW ใช้ช่องเริ่มต้น OCID (ไม่แสดงในตัวอย่างข้างต้น) และจะใช้บริการแรกในรายการบริการที่มีอยู่ในภูมิภาค
| คุณลักษณะ | ชนิดข้อมูล | ที่จำเป็น | ค่าเริ่มต้น | ค่าที่ถูกต้อง | คำอธิบาย |
|---|---|---|---|---|---|
| create_drg | บูล | เลขที่ | เท็จ | จริง/เท็จ | ไม่ว่าจะเป็น DRG ใน VCN หรือไม่ |
| drg_options | แผนที่ | เลขที่ | ดูด้านล่าง | ดูด้านล่าง | พารามิเตอร์เสริมที่สามารถใช้ในการปรับแต่ง DRG |
drg_options
แอตทริบิวต์ drg_options เป็นแอตทริบิวต์แผนที่เสริม โปรดทราบว่าหากมีการใช้แอตทริบิวต์นี้ต้องระบุคีย์/ค่าทั้งหมด (Terraform ไม่อนุญาตให้ใช้คีย์/ค่าแผนที่เริ่มต้นหรือเป็นตัวเลือก) มันมีคีย์ที่กำหนดต่อไปนี้ (และค่าเริ่มต้น):
| สำคัญ | ชนิดข้อมูล | ค่าเริ่มต้น | ค่าที่ถูกต้อง | คำอธิบาย |
|---|---|---|---|---|
| display_name | สาย | "drg" | ชื่อใด ๆ ที่ยอมรับได้สำหรับ OCI API | ใช้เพื่อกำหนดชื่อเฉพาะสำหรับ DRG ของคุณ |
| ช่อง _id | สาย | โมฆะ | ช่อง ocid | ช่อง OCID ที่มีอยู่ก่อน (หากไม่ควรใช้ช่องเริ่มต้น) หากค่านี้เป็นโมฆะช่อง OCID เริ่มต้นจะถูกใช้ |
| กำหนด _tags | แผนที่ (สตริง) | - | แผนที่ของชื่อแท็กและค่าใด ๆ ที่ยอมรับได้ของ OCI API | หากควรตั้งค่าแท็กที่กำหนดไว้ในทรัพยากรนี้ให้ทำกับแอตทริบิวต์นี้ |
| freeform_tags | แผนที่ (สตริง) | - | แผนที่ของชื่อแท็กและค่าใด ๆ ที่ยอมรับได้ของ OCI API | หากควรตั้งค่าแท็ก freeform ใด ๆ บนทรัพยากรนี้ให้ทำกับแอตทริบิวต์นี้ |
| ROUTE_TABLE_ID | สาย | โมฆะ | OCID ของตารางเส้นทาง OCI ที่ถูกต้องและถูกต้องใด ๆ | นี่เป็นทางเลือก แต่ในกรณีที่ต้องการสมาคมตารางเส้นทาง (กับ DRG) เป็นสถานที่ที่จะสร้างความสัมพันธ์นี้ |
ตัวอย่าง
module "oci_network" {
... /snip - shortened for brevity...
drg_options = {
display_name = "my_drg"
compartment_id = null
defined_tags = null
freeform_tags = null
route_table_id = null
}
}
ตัวอย่างข้างต้นจะสร้าง SVCGW ใน VCN ด้วยชื่อที่แสดงของ My_drg ใช้ช่องเริ่มต้น OCID (ไม่แสดงในตัวอย่างด้านบน) และจะไม่เชื่อมโยงตารางเส้นทางใด ๆ กับ DRG
แอตทริบิวต์ route_tables เป็นแอตทริบิวต์แผนที่เสริม โปรดทราบว่าหากมีการใช้แอตทริบิวต์นี้ต้องระบุคีย์/ค่าทั้งหมด (Terraform ไม่อนุญาตให้ใช้คีย์/ค่าแผนที่เริ่มต้นหรือเป็นตัวเลือก) คีย์ระบุชื่อที่แสดงสำหรับตารางเส้นทางในขณะที่ค่าเป็นแผนที่ที่กำหนดคุณลักษณะ ค่าคือแผนที่ที่มีคีย์ที่กำหนดต่อไปนี้ (และค่าเริ่มต้น):
| สำคัญ | ชนิดข้อมูล | ค่าเริ่มต้น | ค่าที่ถูกต้อง | คำอธิบาย |
|---|---|---|---|---|
| ช่อง _id | สาย | โมฆะ | ช่อง ocid | ช่อง OCID ที่มีอยู่ก่อน (หากไม่ควรใช้ช่องเริ่มต้น) หากค่านี้เป็นโมฆะช่อง OCID เริ่มต้นจะถูกใช้ |
| กำหนด _tags | แผนที่ (สตริง) | - | แผนที่ของชื่อแท็กและค่าใด ๆ ที่ยอมรับได้ของ OCI API | หากควรตั้งค่าแท็กที่กำหนดไว้ในทรัพยากรนี้ให้ทำกับแอตทริบิวต์นี้ |
| freeform_tags | แผนที่ (สตริง) | - | แผนที่ของชื่อแท็กและค่าใด ๆ ที่ยอมรับได้ของ OCI API | หากควรตั้งค่าแท็ก freeform ใด ๆ บนทรัพยากรนี้ให้ทำกับแอตทริบิวต์นี้ |
| ROUTE_RULES | รายการ (วัตถุ) - ดูด้านล่าง | - | ดูด้านล่าง | นี่เป็นทางเลือก แต่เป็นสถานที่ที่กำหนดค่ากฎเส้นทาง |
route_rules
| สำคัญ | ชนิดข้อมูล | ค่าเริ่มต้น | ค่าที่ถูกต้อง | คำอธิบาย |
|---|---|---|---|---|
| next_hop_id | สาย | ไม่มี | OCID ของทรัพยากรฮอปครั้งต่อไป | นี่คือที่ระบุไว้ถัดไป |
| dst_type | สาย | ไม่มี | cidr_block , service_cidr_block | ระบุประเภทของปลายทางที่ได้รับในแอตทริบิวต์ DST |
| DST | สาย | ไม่มี | ปลายทาง OCI ที่ถูกต้อง (CIDR หรือบริการ CIDR) | ระบุปลายทาง (เครือข่ายระยะไกล) ที่จะใช้สำหรับกฎเส้นทางนี้ |
ตัวอย่าง
module "oci_network" {
... /snip - shortened for brevity...
route_tables = {
rt1 = {
display_name = "my_drg"
compartment_id = null
defined_tags = null
freeform_tags = null
route_rules = [
{
dst = "0.0.0.0/0"
dst_type = "CIDR_BLOCK"
next_hop_id = local.next_hop_ids["igw"]
}
]
}
}
}
ตัวอย่างด้านบนจะสร้างตารางเส้นทางใน VCN ด้วยชื่อที่แสดงของ RT1 โดยใช้ช่องเริ่มต้น OCID (ไม่แสดงในตัวอย่างด้านบน) ซึ่งมีกฎเส้นทางหนึ่งเส้นทาง (ชี้เส้นทางเริ่มต้นไปยังเกตเวย์อินเทอร์เน็ต)
แอตทริบิวต์ dhcp_options เป็นแอตทริบิวต์แผนที่เสริม โปรดทราบว่าหากมีการใช้แอตทริบิวต์นี้ต้องระบุคีย์/ค่าทั้งหมด (Terraform ไม่อนุญาตให้ใช้คีย์/ค่าแผนที่เริ่มต้นหรือเป็นตัวเลือก) คีย์ระบุชื่อที่แสดงสำหรับตารางเส้นทางในขณะที่ค่าเป็นแผนที่ที่กำหนดคุณลักษณะ ค่าคือแผนที่ที่มีคีย์ที่กำหนดต่อไปนี้ (และค่าเริ่มต้น):
| สำคัญ | ชนิดข้อมูล | ค่าเริ่มต้น | ค่าที่ถูกต้อง | คำอธิบาย |
|---|---|---|---|---|
| ช่อง _id | สาย | โมฆะ | ช่อง ocid | ช่อง OCID ที่มีอยู่ก่อน (หากไม่ควรใช้ช่องเริ่มต้น) หากค่านี้เป็นโมฆะช่อง OCID เริ่มต้นจะถูกใช้ |
| Server_type | สาย | "VCNLOCALPLUSINTERNET" | VCNLOCALPLUSINTERNET , CustomDNSServer | หนึ่งในค่าที่อนุญาตโดย OCI API |
| search_domain_name | สาย | "$ {oci_core_vcn.this.dns_label} .oraclevcn.com" ถ้า local.vcn_with_dns ถูกตั้งค่า null เป็นอย่างอื่น | ระบุชื่อ DNS ที่ถูกต้องที่จะใช้ | สิ่งนี้จะได้รับเป็นโดเมนที่จะค้นหา |
| forwarder_1_ip | สาย | โมฆะ | ที่อยู่ IP ที่ถูกต้องใด ๆ | สิ่งนี้ใช้เมื่อระบุเซิร์ฟเวอร์ DNS ที่กำหนดเอง |
| forwarder_2_ip | สาย | โมฆะ | ที่อยู่ IP ที่ถูกต้องใด ๆ | สิ่งนี้ใช้เมื่อระบุเซิร์ฟเวอร์ DNS ที่กำหนดเอง |
| forwarder_3_ip | สาย | โมฆะ | ที่อยู่ IP ที่ถูกต้องใด ๆ | สิ่งนี้ใช้เมื่อระบุเซิร์ฟเวอร์ DNS ที่กำหนดเอง |
ตัวอย่าง
module "oci_network" {
... /snip - shortened for brevity...
dhcp_options = {
custom = {
compartment_id = null
server_type = local.dhcp_option_types["custom"]
forwarder_1_ip = "10.0.0.11"
forwarder_2_ip = "10.0.2.11"
forwarder_3_ip = null
search_domain_name = "test.local"
}
vcn = {
compartment_id = null
server_type = local.dhcp_option_types["vcn"]
forwarder_1_ip = null
forwarder_2_ip = null
forwarder_3_ip = null
search_domain_name = null
}
}
}
ตัวอย่างข้างต้นจะสร้างตัวเลือก DHCP สองตัวเลือกหนึ่งชื่อที่ กำหนดเอง ซึ่งมีที่อยู่ IP สองที่ใช้และอ้างอิงประเภทตัวเลือก DHCP ที่กำหนดเอง ตัวเลือก VCN DHCP นั้นค่อนข้างพื้นฐานเพียงแค่ระบุว่าควรใช้ VCNLOCALPLUSINTERNET และชื่อ VCN
แต่ละทรัพยากรที่ไม่ต่อเนื่องที่สร้างขึ้นโดยโมดูลจะถูกส่งออกเพื่อให้สามารถเข้าถึงแอตทริบิวต์ที่ส่งคืนทั้งหมดสำหรับทรัพยากร
| ทรัพยากร | กลับมาเสมอ? | คำอธิบาย |
|---|---|---|
| โฆษณา | ใช่ | รายการโฆษณาที่มีอยู่สำหรับภูมิภาคที่คุณทำงาน |
| VCN | เลขที่* | ทรัพยากร VCN ที่สร้างขึ้นโดยโมดูล |
| IGW | เลขที่* | ทรัพยากร IGW ที่สร้างขึ้นโดยโมดูล (หากมีการร้องขอ/สร้าง) |
| natgw | เลขที่* | ทรัพยากร NATGW ที่สร้างขึ้นโดยโมดูล (หากมีการร้องขอ/สร้าง) |
| SVCGW | เลขที่* | ทรัพยากร SVCGW ที่สร้างขึ้นโดยโมดูล (หากมีการร้องขอ/สร้าง) |
| svcgw_services | ใช่ | บริการที่สามารถใช้งานได้ |
| DRG | เลขที่* | ทรัพยากร DRG และ DRGattachment ที่สร้างขึ้นโดยโมดูล (หากมีการร้องขอ/สร้าง) โปรดทราบว่า DRG สามารถเข้าถึงได้ผ่าน drg.drg และ drgattachment ผ่าน drg.drg_attachment |
| ROUTE_TABLES | เลขที่* | ตารางเส้นทางที่สร้าง/จัดการโดยโมดูล (หากมีการร้องขอ/สร้าง) แผนที่จะถูกส่งคืนซึ่งคีย์คือชื่อของตารางเส้นทางและค่าเป็นรายการเต็มรูปแบบของแอตทริบิวต์ทรัพยากรทั้งหมด |
| dhcp_options | เลขที่* | ตัวเลือก DHCP สร้าง/จัดการโดยโมดูล (หากมีการร้องขอ/สร้าง) แผนที่จะถูกส่งคืนโดยที่คีย์คือชื่อของตัวเลือก DHCP และค่าเป็นรายชื่อทั้งหมดของแอตทริบิวต์ทรัพยากรทั้งหมด |
*ส่งคืนเฉพาะเมื่อมีการร้องขอทรัพยากรเท่านั้น
โปรดทราบว่าคุณอาจยังคงอ้างอิงผลลัพธ์ (แม้ว่าพวกเขาจะไม่ได้ส่งคืน) โดยไม่ทำให้เกิดข้อผิดพลาดใน Terraform (มันต้องฉลาดพอที่จะรู้ว่าจะไม่โยนข้อผิดพลาดในกรณีเหล่านี้)
vcn_options , igw_options ฯลฯ ) คุณต้องให้ทั้งหมด แผนที่ไม่ได้มีความคิดเกี่ยวกับตัวเลือก (หรือค่าเริ่มต้น) สำหรับคีย์ภายในแผนที่โดยกำหนดให้ผ่านคีย์/ค่าทั้งหมด (หากผ่านคีย์หนึ่งปุ่มจะต้องผ่านปุ่มทั้งหมดจะต้องผ่าน)terraform destroy จากนั้น terraform apply terraform apply ใช้ Error: Cycle: module.oci_network.oci_core_nat_gateway.this[0], module.oci_network.output.natgw, module.oci_network.oci_core_service_gateway.this[0], module.oci_network.output.svcgw, module.oci_network.oci_core_service_gateway.this[0] (destroy), module.oci_network.oci_core_nat_gateway.this[0] (destroy), module.oci_network.oci_core_vcn.this[0] (destroy), module.oci_network.oci_core_drg_attachment.this[0], module.oci_network.oci_core_route_table.this[1] (destroy), module.oci_network.oci_core_drg_attachment.this[0] (destroy), module.oci_network.output.drg, local.next_hop_ids, module.oci_network.var.route_tables, module.oci_network.oci_core_route_table.this (prepare state), module.oci_network.oci_core_route_table.this[0] (destroy), module.oci_network.oci_core_internet_gateway.this[0] (destroy), module.oci_network.oci_core_internet_gateway.this[0], module.oci_network.output.igw
ดูบันทึกย่อการเปิดตัวสำหรับข้อมูลบันทึกย่อ
โมดูลนี้ได้รับการพัฒนาและทดสอบโดยใช้ Terraform บน MacOS Mojave เวอร์ชัน 10.14.5
user-mac$ terraform --version
Terraform v0.12.3
+ provider.oci v3.31.0
โครงการนี้เป็นโอเพ่นซอร์ส Oracle ชื่นชมการมีส่วนร่วมใด ๆ ที่ทำโดยชุมชนโอเพ่นซอร์ส
ลิขสิทธิ์ (c) 2020 Oracle และ/หรือ บริษัท ในเครือ
ได้รับใบอนุญาตภายใต้ใบอนุญาต Universal Permissive v 1.0 ดังที่แสดงได้ที่ https://oss.oracle.com/licenses/upl
ดูใบอนุญาตสำหรับรายละเอียดเพิ่มเติม