Topik ini menjelaskan cara menggunakan Router transit edisi perusahaan untuk mengaktifkan instance Elastic Compute Service (ECS) dalam virtual private cloud (VPC) agar dapat mengakses Object Storage Service (OSS) di lintas wilayah melalui koneksi VPC.
Anda dapat menjalankan kode contoh dalam contoh ini dengan satu klik.
Skenario
Seperti yang ditunjukkan pada gambar di atas, sebuah perusahaan telah menerapkan VPC1 di wilayah China (Shanghai) dengan layanan yang berjalan pada instance ECS. Perusahaan tersebut telah mengaktifkan OSS di wilayah China (Hangzhou) dan ingin mengaktifkan instance ECS di VPC1 untuk mengakses layanan OSS di wilayah China (Hangzhou).
Untuk menangani masalah ini, perusahaan dapat membuat VPC (VPC2) di wilayah China (Hangzhou), tempat OSS diterapkan, dan menghubungkan VPC1 dan VPC2 ke Router transit edisi perusahaan di wilayah China (Shanghai) dan China (Hangzhou). Router transit edisi perusahaan memungkinkan VPC1 dan VPC2 berkomunikasi satu sama lain melalui koneksi lintas wilayah. Dengan cara ini, instance ECS di VPC1 dapat mengakses OSS di VPC2.
Untuk mengizinkan instance ECS di VPC mengakses OSS di wilayah yang berbeda menggunakan Router transit edisi perusahaan, setidaknya satu VPC harus diterapkan di wilayah tempat OSS diaktifkan. Dalam contoh ini, jika ada VPC yang sudah ada di wilayah China (Hangzhou), perusahaan tidak perlu membuat VPC2 dan dapat menghubungkan VPC yang sudah ada ke Router transit edisi perusahaan. Instance ECS di wilayah China (Shanghai) dapat mengakses OSS melalui VPC apa pun di wilayah China (Hangzhou).
Perencanaan Jaringan
Saat Anda menetapkan blok CIDR, pastikan bahwa blok CIDR dari VPC tidak tumpang tindih.
Sumber Daya | Wilayah VPC | Blok CIDR dan Alamat IP |
VPC1 | China (Shanghai) | Blok CIDR utama: 192.168.0.0/16
|
VPC2 | China (Hangzhou) | Blok CIDR utama: 172.16.0.0/16
|
Prosedur
Topik ini menyediakan dua metode konfigurasi: konsol dan Terraform. Pilih metode yang sesuai dengan kebutuhan Anda.
Konsol
Persiapan
Sebelum memulai, pastikan prasyarat berikut terpenuhi:
OSS telah diaktifkan di wilayah China (Hangzhou). Untuk informasi lebih lanjut, lihat Memulai dengan OSS.
VPC1 telah dibuat di wilayah China (Shanghai), dengan layanan yang ditempatkan pada instance ECS. Untuk informasi lebih lanjut, lihat Buat VPC IPv4.
VPC2 telah didirikan di wilayah China (Hangzhou). Untuk informasi lebih lanjut, lihat Buat dan kelola VPC.
vSwitch yang cukup ditempatkan di setiap VPC di zona Router transit edisi perusahaan. Setiap vSwitch memiliki setidaknya satu alamat IP yang tidak digunakan.
Jika Router transit edisi perusahaan ditempatkan di wilayah yang hanya mendukung satu zona, misalnya, China (Nanjing - Local Region), VPC harus memiliki setidaknya satu vSwitch di zona tersebut.
Jika Router transit edisi perusahaan ditempatkan di wilayah yang mendukung beberapa zona, misalnya, China (Shanghai), VPC harus memiliki setidaknya dua vSwitch di zona tersebut. vSwitch harus berada di zona yang berbeda.
Untuk informasi lebih lanjut, lihat Bagaimana koneksi VPC bekerja.
Anda memiliki pengetahuan tentang aturan grup keamanan untuk VPC1 dan VPC2. Aturan grup keamanan mengizinkan instance ECS di VPC1 untuk mengakses OSS melalui VPC2. Untuk informasi lebih lanjut, lihat Kueri aturan grup keamanan dan Tambah aturan grup keamanan.
Instance Cloud Enterprise Network (CEN) telah dibuat. Untuk informasi lebih lanjut, lihat Buat instance CEN.
Router transit edisi perusahaan telah ditempatkan di wilayah China (Shanghai) dan China (Hangzhou). Untuk informasi lebih lanjut, lihat Buat instance router transit.
Saat Anda membuat Router transit edisi perusahaan, gunakan pengaturan default.
Langkah 1: Buat koneksi VPC
Hubungkan VPC1 ke Router transit edisi perusahaan di wilayah China (Shanghai), dan VPC2 ke Router transit edisi perusahaan di wilayah China (Hangzhou).
Masuk ke Konsol CEN.
Navigasikan ke halaman Instances, temukan instance CEN target, dan klik ID-nya.
Dalam contoh ini, instance CEN yang disebutkan di bagian Preparations digunakan.
Pada tab , temukan instance router transit dan klik Create Connection di kolom Actions.
Pada halaman Connect with Peer Network Instance, atur parameter berikut, dan klik OK.
Konfigurasikan parameter untuk menghubungkan VPC1 ke Router transit edisi perusahaan di wilayah China (Shanghai) dan VPC2 ke yang di wilayah China (Hangzhou) dengan merujuk pada tabel berikut:
Parameter
Deskripsi
VPC1
VPC2
Network Type
Pilih jenis instance jaringan yang ingin Anda hubungkan.
Virtual Private Cloud (VPC)
Virtual Private Cloud (VPC)
Region
Pilih wilayah tempat instance jaringan ditempatkan.
China (Shanghai)
China (Hangzhou)
Transit Router
ID router transit di wilayah yang dipilih akan otomatis ditampilkan.
Resource Owner ID
Pilih akun Alibaba Cloud tempat instance tersebut dimiliki.
Current Account
Current Account
Billing Method
Nilai default adalah Pay-As-You-Go.
Attachment Name
Masukkan nama untuk koneksi jaringan.
Koneksi VPC1
Koneksi VPC2
Network Instance
Pilih ID instance jaringan.
Pilih VPC1
Pilih VPC2
VSwitch
Pilih vSwitch di zona router transit.
Jika setiap zona router transit memiliki vSwitch, Anda dapat memilih beberapa zona dan memilih vSwitch di setiap zona untuk mengaktifkan pemulihan bencana zona.
Zona F Shanghai: Pilih vSwitch 1
Zona G Shanghai: Pilih vSwitch 2
Zona H Hangzhou: Pilih vSwitch 1
Zona I Hangzhou: Pilih vSwitch 2
Advanced Settings
Gunakan pengaturan default untuk VPC1 dan VPC2. Semua fitur lanjutan diaktifkan untuk VPC.
Langkah 2: Buat koneksi lintas wilayah
Router transit edisi perusahaan untuk VPC1 dan VPC2 berada di wilayah yang berbeda, sehingga secara default, VPC1 dan VPC2 tidak dapat berkomunikasi. Buat koneksi lintas wilayah antara wilayah China (Hangzhou) dan China (Shanghai) untuk mengaktifkan komunikasi lintas wilayah antara VPC1 dan VPC2.
Masuk ke Konsol CEN.
Pada halaman Instances, klik ID instance CEN yang ingin Anda kelola.
Navigasikan ke tab , pilih instance router transit, dan klik Create Connection di kolom Actions.
Pada halaman Connection with Peer Network Instance, konfigurasikan parameter berikut, lalu klik OK.
Tabel di bawah mencantumkan parameter yang erat kaitannya dengan contoh ini. Parameter lainnya tetap menggunakan nilai default. Untuk informasi lebih lanjut, lihat Buat koneksi lintas wilayah menggunakan Router transit edisi perusahaan.
Parameter
Deskripsi
Instance Type
Pilih Inter-region Connection.
Region
Pilih salah satu wilayah yang ingin dihubungkan.
Dalam contoh ini, China (Shanghai) dipilih.
Peer Region
Pilih wilayah peer yang ingin dihubungkan.
Dalam contoh ini, China (Hangzhou) dipilih.
Bandwidth Allocation Mode
Pilih metode yang digunakan untuk mengalokasikan bandwidth ke koneksi lintas wilayah.
Dalam contoh ini, Pay-By-Data-Transfer dipilih. Sistem akan menagih Anda berdasarkan lalu lintas aktual dari koneksi lintas wilayah.
Bandwidth
Tentukan nilai bandwidth untuk koneksi lintas wilayah. Unit: Mbps.
Dalam mode alokasi bandwidth Pay-By-Data-Transfer, parameter ini menentukan nilai bandwidth maksimum untuk koneksi lintas wilayah.
Default Line Type
Pilih tipe jalur untuk koneksi lintas wilayah.
Dalam contoh ini, nilai default digunakan. Untuk informasi lebih lanjut, lihat Tipe Jalur.
Advanced Settings
Dalam contoh ini, pengaturan default dipertahankan dengan semua tiga fitur lanjutan diaktifkan.
Langkah 3: Tambahkan rute yang mengarah ke OSS di VPC
Dengan koneksi lintas wilayah yang telah dibuat, VPC1 dan VPC2 sekarang dapat berkomunikasi menggunakan Router transit edisi perusahaan. Namun, instance ECS di VPC1 masih tidak dapat mengakses OSS di VPC2. Anda harus menambahkan rute yang mengarah ke OSS di tabel rute VPC1 untuk mengarahkan lalu lintas dari VPC1 ke router transit.
Masuk ke Konsol VPC.
Di bilah navigasi atas, pilih wilayah tempat VPC1 ditempatkan.
Untuk contoh ini, pilih China (Shanghai).
Klik Route Tables di panel navigasi sisi kiri.
Pada halaman Route Tables, temukan tabel rute untuk VPC1 dan klik ID-nya.
Dalam contoh ini, VPC1 hanya memiliki satu tabel rute sistem. Jika VPC Anda memiliki beberapa tabel rute, pilih yang terkait dengan vSwitch tempat instance ECS ditempatkan.
Navigasikan ke tab Route Entry List, pilih tab Custom Route, lalu klik Add Route Entry.
Di panel Add Route Entry, konfigurasikan parameter berikut dan klik OK:
Tambahkan rute yang mengarah ke semua blok CIDR OSS di wilayah China (Hangzhou) ke tabel rute VPC1. Tabel berikut menjelaskan parameter.
Untuk informasi lebih lanjut tentang blok CIDR layanan OSS di wilayah China (Hangzhou), lihat Titik akhir internal OSS dan rentang VIP.
Parameter
Deskripsi
Rute 1
Rute 2
Rute 3
Rute 4
Name
Masukkan nama untuk rute kustom.
Blok CIDR OSS 1
Blok CIDR OSS 2
Blok CIDR OSS 3
Blok CIDR OSS 4
Destination CIDR Block
Masukkan blok CIDR tujuan.
100.118.28.0/24
100.114.102.0/24
100.98.170.0/24
100.118.31.0/24
Next Hop Type
Pilih jenis hop berikutnya dan pilih hop berikutnya untuk rute kustom.
Pilih Transit Router lalu pilih koneksi VPC1.
Pilih Transit Router lalu pilih koneksi VPC1.
Pilih Transit Router lalu pilih koneksi VPC1.
Pilih Transit Router lalu pilih koneksi VPC1.
Langkah 4: Tambahkan rute yang mengarah ke OSS di router transit
Anda perlu menambahkan rute yang mengarah ke OSS ke tabel rute Router transit edisi perusahaan di wilayah China (Hangzhou). Saat permintaan dari instance ECS di VPC1 mencapai Router transit edisi perusahaan, Router transit edisi perusahaan meneruskan permintaan tersebut ke VPC2 berdasarkan kebijakan rute OSS. Kemudian, instance ECS dapat mengakses OSS melalui VPC2.
Masuk ke Konsol CEN.
Pergi ke halaman CEN Instance, temukan instance CEN target, dan klik ID-nya.
Pada tab , temukan instance router transit di wilayah China (Hangzhou), dan klik ID-nya.
Pada halaman detail instance router transit, klik tab Route Table. Di panel navigasi sisi kiri, pilih tabel rute target.
Secara default, VPC1 dan VPC2 terkait dengan tabel default Router transit edisi perusahaan karena mereka memiliki pengaturan lanjutan yang diaktifkan. Oleh karena itu, tabel rute default (tabel rute sistem) router transit dipilih dalam contoh ini.
Pada tab Route Entry, klik Add Route Entry.
Di kotak dialog Add Route Entry, masukkan parameter berikut dan klik Confirm.
Tambahkan rute yang mengarah ke blok CIDR OSS di wilayah China (Hangzhou) ke tabel rute router transit.
Parameter
Deskripsi
Rute 1
Rute 2
Rute 3
Rute 4
Name
Masukkan nama untuk rute.
Blok CIDR OSS 1
Blok CIDR OSS 2
Blok CIDR OSS 3
Blok CIDR OSS 4
Destination CIDR Block
Masukkan blok CIDR tujuan untuk rute.
100.118.28.0/24
100.114.102.0/24
100.98.170.0/24
100.118.31.0/24
Blackhole Route
Tentukan apakah rute tersebut adalah rute blackhole.
Yes: menentukan bahwa rute tersebut adalah rute blackhole. Semua lalu lintas yang ditujukan untuk rute ini akan dijatuhkan.
No: menentukan bahwa rute tersebut bukan rute blackhole. Dalam hal ini, Anda harus menentukan hop berikutnya untuk rute tersebut.
Pilih No
Pilih No
Pilih No
Pilih No.
Next Hop
Pilih hop berikutnya untuk rute.
Pilih koneksi VPC2
Pilih koneksi VPC2
Pilih koneksi VPC2
Pilih koneksi VPC2
Langkah 5: Uji konektivitas jaringan
Setelah Anda menyelesaikan langkah-langkah ini, instance ECS di VPC1 dapat mengakses OSS lintas wilayah melalui koneksi VPC. Dalam contoh ini, ECS1 digunakan untuk mengunduh gambar dari OSS untuk memeriksa apakah instance ECS di VPC1 dapat mengakses OSS.
Masuk ke ECS1 di VPC1. Untuk informasi lebih lanjut, lihat Panduan koneksi jarak jauh ECS.
Gunakan ECS1 untuk mengunduh gambar bernama OSStest.jpg dari OSS.
CatatanPastikan instance ECS memiliki izin baca/tulis untuk file gambar sebelum pengujian. Untuk informasi lebih lanjut, lihat Kontrol akses.
wget https://zxtXXXXX.oss-cn-hangzhou-internal.aliyuncs.com/OSStest.jpg # "zxtXXXXX.oss-cn-hangzhou-internal.aliyuncs.com" adalah nama domain OSS. # "OSStest.jpg" adalah nama file gambar.Untuk informasi tentang nama domain OSS, lihat Aturan penggunaan nama domain OSS.
Respon berikut menunjukkan bahwa ECS1 dapat mengakses OSS melalui koneksi VPC.

Terraform
Anda dapat menggunakan Terraform untuk menyiapkan lingkungan dalam topik ini. Untuk detail tentang instalasi dan konfigurasi Terraform, lihat Instal Terraform.
Langkah-langkah di bawah ini menunjukkan cara menjalankan Terraform v1.9.8 pada host Linux. Pastikan Anda telah menyelesaikan Otentikasi.
Sumber daya tertentu dalam contoh ini mungkin mengakibatkan biaya. Lepas atau batalkan langganan sumber daya tersebut saat tidak lagi diperlukan.
Langkah 1: Buat sumber daya
Buat direktori untuk skenario dan navigasikan ke dalamnya.
mkdir tf-cen-oss && cd tf-cen-ossBuat file
main.tfuntuk mendefinisikan sumber daya yang diperlukan.touch main.tfBuka file
main.tf, tempel kode berikut ke dalam file, dan simpan perubahan. File ini mencakup semua sumber daya dan konfigurasi yang diperlukan.variable "pname" { description = "Nama awalan untuk sumber daya" type = string default = "tf-cen-oss" } variable "region_id_hangzhou" { description = "ID wilayah Hangzhou" type = string default = "cn-hangzhou" } variable "region_id_shanghai" { # description = "ID wilayah Shanghai" type = string default = "cn-shanghai" } variable "az_hangzhou" { description = "Daftar zona ketersediaan yang akan digunakan" type = list(string) default = ["cn-hangzhou-j", "cn-hangzhou-k"] } variable "az_shanghai" { description = "Daftar zona ketersediaan yang akan digunakan" type = list(string) default = ["cn-shanghai-m", "cn-shanghai-n"] } variable "cidr_list" { description = "Daftar blok CIDR VPC" type = list(string) default = ["10.0.0.0/8", "172.16.0.0/12", "192.168.0.0/16"] } # --- provider --- provider "alicloud" { # wilayah default hangzhou region = var.region_id_hangzhou } provider "alicloud" { alias = "hangzhou" region = var.region_id_hangzhou } provider "alicloud" { alias = "shanghai" region = var.region_id_shanghai } # --- oss --- resource "random_uuid" "default" { } resource "alicloud_oss_bucket" "bucket1" { provider = alicloud.hangzhou bucket = substr("${var.pname}-${replace(random_uuid.default.result, "-", "")}", 0, 32) } resource "alicloud_oss_bucket_policy" "default" { provider = alicloud.hangzhou policy = jsonencode({ "Version" : "1", "Statement" : [{ "Action" : ["oss:GetObject"], "Effect" : "Allow", "Resource" : ["acs:oss:*:*:${alicloud_oss_bucket.bucket1.bucket}"] }] }) bucket = alicloud_oss_bucket.bucket1.bucket } resource "alicloud_oss_bucket_object" "obj1" { provider = alicloud.hangzhou bucket = alicloud_oss_bucket.bucket1.bucket key = "example.txt" # Nama file di bucket content = "this is example text content \n" # Isi file acl = "public-read" } # --- vpc --- resource "alicloud_vpc" "vpc1" { provider = alicloud.shanghai vpc_name = "${var.pname}-1" cidr_block = "192.168.0.0/16" } resource "alicloud_vpc" "vpc2" { provider = alicloud.hangzhou vpc_name = "${var.pname}-2" cidr_block = "172.16.0.0/16" } resource "alicloud_vswitch" "vsw1-1" { provider = alicloud.shanghai vpc_id = alicloud_vpc.vpc1.id cidr_block = "192.168.0.0/24" zone_id = var.az_shanghai[0] vswitch_name = "${var.pname}-vsw1-1" } resource "alicloud_vswitch" "vsw1-2" { provider = alicloud.shanghai vpc_id = alicloud_vpc.vpc1.id cidr_block = "192.168.1.0/24" zone_id = var.az_shanghai[1] vswitch_name = "${var.pname}-vsw1-2" } resource "alicloud_vswitch" "vsw2-1" { provider = alicloud.hangzhou vpc_id = alicloud_vpc.vpc2.id cidr_block = "172.16.0.0/24" zone_id = var.az_hangzhou[0] vswitch_name = "${var.pname}-vsw2-1" } resource "alicloud_vswitch" "vsw2-2" { provider = alicloud.hangzhou vpc_id = alicloud_vpc.vpc2.id cidr_block = "172.16.1.0/24" zone_id = var.az_hangzhou[1] vswitch_name = "${var.pname}-vsw2-2" } # --- cen --- # cen resource "alicloud_cen_instance" "cen1" { cen_instance_name = "${var.pname}-cen1" } # tr resource "alicloud_cen_transit_router" "tr1" { provider = alicloud.shanghai transit_router_name = "${var.pname}-tr1" cen_id = alicloud_cen_instance.cen1.id } resource "alicloud_cen_transit_router" "tr2" { provider = alicloud.hangzhou transit_router_name = "${var.pname}-tr2" cen_id = alicloud_cen_instance.cen1.id } data "alicloud_cen_transit_router_route_tables" "tr1" { # dapatkan tabel rute sys tr transit_router_id = alicloud_cen_transit_router.tr1.transit_router_id transit_router_route_table_type = "System" } data "alicloud_cen_transit_router_route_tables" "tr2" { transit_router_id = alicloud_cen_transit_router.tr2.transit_router_id transit_router_route_table_type = "System" } # tr-peer resource "alicloud_cen_transit_router_peer_attachment" "peer" { provider = alicloud.shanghai cen_id = alicloud_cen_instance.cen1.id transit_router_id = alicloud_cen_transit_router.tr1.transit_router_id peer_transit_router_region_id = var.region_id_hangzhou peer_transit_router_id = alicloud_cen_transit_router.tr2.transit_router_id bandwidth_type = "DataTransfer" bandwidth = 1 auto_publish_route_enabled = true # default adalah false } resource "alicloud_cen_transit_router_route_table_association" "ass_peer1" { transit_router_route_table_id = data.alicloud_cen_transit_router_route_tables.tr1.tables[0].id transit_router_attachment_id = alicloud_cen_transit_router_peer_attachment.peer.transit_router_attachment_id } resource "alicloud_cen_transit_router_route_table_propagation" "propa_peer1" { transit_router_route_table_id = data.alicloud_cen_transit_router_route_tables.tr1.tables[0].id transit_router_attachment_id = alicloud_cen_transit_router_peer_attachment.peer.transit_router_attachment_id } resource "alicloud_cen_transit_router_route_table_association" "ass_peer2" { transit_router_route_table_id = data.alicloud_cen_transit_router_route_tables.tr2.tables[0].id transit_router_attachment_id = alicloud_cen_transit_router_peer_attachment.peer.transit_router_attachment_id } resource "alicloud_cen_transit_router_route_table_propagation" "propa_peer2" { transit_router_route_table_id = data.alicloud_cen_transit_router_route_tables.tr2.tables[0].id transit_router_attachment_id = alicloud_cen_transit_router_peer_attachment.peer.transit_router_attachment_id } # attach1 resource "alicloud_cen_transit_router_vpc_attachment" "attach1" { provider = alicloud.shanghai cen_id = alicloud_cen_instance.cen1.id transit_router_id = alicloud_cen_transit_router.tr1.transit_router_id vpc_id = alicloud_vpc.vpc1.id zone_mappings { zone_id = var.az_shanghai[0] vswitch_id = alicloud_vswitch.vsw1-1.id } zone_mappings { zone_id = var.az_shanghai[1] vswitch_id = alicloud_vswitch.vsw1-2.id } transit_router_vpc_attachment_name = "attach1" } resource "alicloud_cen_transit_router_route_table_association" "ass1" { transit_router_route_table_id = data.alicloud_cen_transit_router_route_tables.tr1.tables[0].id transit_router_attachment_id = alicloud_cen_transit_router_vpc_attachment.attach1.transit_router_attachment_id } resource "alicloud_cen_transit_router_route_table_propagation" "propa1" { transit_router_route_table_id = data.alicloud_cen_transit_router_route_tables.tr1.tables[0].id transit_router_attachment_id = alicloud_cen_transit_router_vpc_attachment.attach1.transit_router_attachment_id } resource "alicloud_route_entry" "vpc1_to_tr1" { provider = alicloud.shanghai count = 3 route_table_id = alicloud_vpc.vpc1.route_table_id destination_cidrblock = var.cidr_list[count.index] nexthop_type = "Attachment" nexthop_id = alicloud_cen_transit_router_vpc_attachment.attach1.transit_router_attachment_id } # attach2 resource "alicloud_cen_transit_router_vpc_attachment" "attach2" { provider = alicloud.hangzhou cen_id = alicloud_cen_instance.cen1.id transit_router_id = alicloud_cen_transit_router.tr2.transit_router_id vpc_id = alicloud_vpc.vpc2.id zone_mappings { zone_id = var.az_hangzhou[0] vswitch_id = alicloud_vswitch.vsw2-1.id } zone_mappings { zone_id = var.az_hangzhou[1] vswitch_id = alicloud_vswitch.vsw2-2.id } transit_router_vpc_attachment_name = "attach2" } resource "alicloud_cen_transit_router_route_table_association" "ass2" { transit_router_route_table_id = data.alicloud_cen_transit_router_route_tables.tr2.tables[0].id transit_router_attachment_id = alicloud_cen_transit_router_vpc_attachment.attach2.transit_router_attachment_id } resource "alicloud_cen_transit_router_route_table_propagation" "propa2" { transit_router_route_table_id = data.alicloud_cen_transit_router_route_tables.tr2.tables[0].id transit_router_attachment_id = alicloud_cen_transit_router_vpc_attachment.attach2.transit_router_attachment_id } resource "alicloud_route_entry" "vpc2_to_tr2" { provider = alicloud.hangzhou count = 3 route_table_id = alicloud_vpc.vpc2.route_table_id destination_cidrblock = var.cidr_list[count.index] nexthop_type = "Attachment" nexthop_id = alicloud_cen_transit_router_vpc_attachment.attach2.transit_router_attachment_id } # oss_cidr variable "oss_cidr" { description = "Blok CIDR OSS" type = list(string) default = ["100.118.28.0/24", "100.114.102.0/24", "100.98.170.0/24", "100.118.31.0/24"] } # vpc entry resource "alicloud_route_entry" "entry" { provider = alicloud.shanghai count = 4 route_table_id = alicloud_vpc.vpc1.route_table_id destination_cidrblock = var.oss_cidr[count.index] nexthop_type = "Attachment" nexthop_id = alicloud_cen_transit_router_vpc_attachment.attach1.transit_router_attachment_id } # tr entry resource "alicloud_cen_transit_router_route_entry" "tr2_rt1_entry1" { count = 4 transit_router_route_table_id = data.alicloud_cen_transit_router_route_tables.tr2.tables[0].id transit_router_route_entry_destination_cidr_block = var.oss_cidr[count.index] transit_router_route_entry_next_hop_type = "Attachment" transit_router_route_entry_next_hop_id = alicloud_cen_transit_router_vpc_attachment.attach2.transit_router_attachment_id } # --- ecs --- resource "alicloud_instance" "main" { provider = alicloud.shanghai depends_on = [alicloud_cen_transit_router_route_entry.tr2_rt1_entry1] instance_name = "${var.pname}-ecs" instance_type = "ecs.e-c1m1.large" security_groups = [alicloud_security_group.default.id] vswitch_id = alicloud_vswitch.vsw1-1.id image_id = "aliyun_3_x64_20G_qboot_alibase_20230727.vhd" system_disk_category = "cloud_essd" private_ip = "192.168.0.1" instance_charge_type = "PostPaid" user_data = base64encode(<<-EOT #!/bin/bash curl https://${alicloud_oss_bucket.bucket1.bucket}.${alicloud_oss_bucket.bucket1.intranet_endpoint}/${alicloud_oss_bucket_object.obj1.key} > /root/curl.txt EOT ) } # sg resource "alicloud_security_group" "default" { provider = alicloud.shanghai name = var.pname vpc_id = alicloud_vpc.vpc1.id } resource "alicloud_security_group_rule" "allow_inbound_ssh" { provider = alicloud.shanghai type = "ingress" ip_protocol = "tcp" nic_type = "intranet" policy = "accept" port_range = "22/22" priority = 1 security_group_id = alicloud_security_group.default.id cidr_ip = "0.0.0.0/0" } resource "alicloud_security_group_rule" "allow_inbound_icmp" { provider = alicloud.shanghai type = "ingress" ip_protocol = "icmp" nic_type = "intranet" policy = "accept" port_range = "-1/-1" priority = 1 security_group_id = alicloud_security_group.default.id cidr_ip = "0.0.0.0/0" } # --- output --- output "ecs_login_address" { value = "https://ecs-workbench.aliyun.com/?from=EcsConsole&instanceType=ecs®ionId=${var.region_id_shanghai}&instanceId=${alicloud_instance.main.id}" } output "test_command" { value = "curl ${alicloud_oss_bucket.bucket1.bucket}.${alicloud_oss_bucket.bucket1.intranet_endpoint}/${alicloud_oss_bucket_object.obj1.key}" }Inisialisasi direktori untuk menyelesaikan pengaturan Terraform.
terraform initBuat sumber daya. Terraform akan menampilkan pratinjau sumber daya yang akan dibuat. Setelah verifikasi, masukkan
yesuntuk memulai proses pembuatan.terraform apply
Langkah 2: Uji konektivitas
Masuk ke instance ECS bernama
tf-cen-oss-ecs.Alamat masuk untuk instance ECS dapat ditemukan di Output Terraform. Salin alamat ini ke browser dan pilih Temporary SSH Key-based sebagai metode otentikasi.

Di bagian Output, salin perintah curl:

Jalankan perintah curl di instance ECS.
curl tf-cen-oss-xxxxxx.oss-cn-hangzhou-internal.aliyuncs.com/example.txt
Jika konten teks dapat diambil seperti yang ditunjukkan pada gambar, itu menunjukkan akses berhasil.
Langkah 3: Lepaskan sumber daya
Saat verifikasi selesai dan Anda tidak lagi membutuhkan sumber daya tersebut, jalankan perintah berikut untuk melepaskannya dan menghentikan penagihan.
terraform destroy --auto-approveRute
Dalam topik ini, konfigurasi rute default digunakan untuk membuat VPC dan koneksi lintas wilayah. Saat konfigurasi rute default digunakan, CEN secara otomatis mempelajari dan mengiklankan rute untuk VPC1 dan VPC2 agar dapat berkomunikasi satu sama lain. Bagian berikut menjelaskan konfigurasi rute default:
Instance VPC
Jika Anda menggunakan konfigurasi rute default (dengan semua fitur lanjutan diaktifkan) saat membuat koneksi VPC, sistem secara otomatis menerapkan konfigurasi rute berikut ke VPC:
Associate with Default Route Table of Transit Router
Setelah fitur ini diaktifkan, koneksi VPC secara otomatis diasosiasikan dengan tabel rute default router transit. Router transit meneruskan lalu lintas VPC berdasarkan tabel rute default.
Propagate System Routes to Default Route Table of Transit Router
Setelah fitur ini diaktifkan, rute sistem VPC diiklankan ke tabel rute default router transit. Dengan cara ini, VPC dapat berkomunikasi dengan instance jaringan lain yang terhubung ke router transit.
Automatically Create Route That Points to Transit Router and Adds to All Route Tables of Current VPC
Setelah fitur ini diaktifkan, sistem secara otomatis menambahkan rute berikut ke semua tabel rute VPC: 10.0.0.0/8, 172.16.0.0/12, dan 192.168.0.0/16. Rute-rute tersebut mengarah ke koneksi VPC.
Koneksi lintas wilayah
Jika Anda menggunakan konfigurasi rute default (dengan semua fitur lanjutan diaktifkan) saat membuat koneksi lintas wilayah, sistem secara otomatis menerapkan konfigurasi rute berikut ke koneksi lintas wilayah:
Associate with Default Route Table of Transit Router
Setelah fitur ini diaktifkan, koneksi lintas wilayah secara otomatis diasosiasikan dengan tabel rute default router transit. Router transit menggunakan tabel rute default untuk meneruskan lalu lintas jaringan lintas wilayah.
Propagate System Routes to Default Route Table of Transit Router
Setelah fitur ini diaktifkan, koneksi lintas wilayah diasosiasikan dengan tabel rute default router transit di wilayah yang terhubung.
Automatically Advertise Routes to Peer Region
Setelah fitur ini diaktifkan, rute dalam tabel rute router transit di wilayah saat ini secara otomatis diiklankan ke tabel rute router transit peer untuk komunikasi lintas wilayah. Tabel rute router transit merujuk pada tabel rute yang diasosiasikan dengan koneksi lintas wilayah.
Lihat rute
Anda dapat memeriksa rute dalam Konsol Manajemen Alibaba Cloud:
Untuk informasi lebih lanjut tentang rute router transit, lihat Kelola rute kustom router transit.
Untuk informasi lebih lanjut tentang rute VPC, lihat Buat dan kelola tabel rute.