Dalam lingkungan fleksibel App Engine, Anda dapat menentukan jaringan untuk men-deploy instance layanan Anda. Halaman ini menunjukkan cara mengonfigurasi project Anda untuk menggunakan lingkungan fleksibel App Engine di jaringan VPC Bersama.
Lihat Menyediakan VPC Bersama untuk informasi selengkapnya tentang penyiapan jaringan VPC Bersama.
Menyiapkan lingkungan fleksibel App Engine dengan VPC Bersama
Men-deploy instance lingkungan fleksibel App Engine di jaringan VPC Bersama memerlukan tiga langkah:
Memberikan izin yang sesuai ke akun layanan di project layanan VPC Bersama
Mengonfigurasi layanan App Engine untuk menggunakan jaringan VPC Bersama
Jika Anda menggunakan Google Cloud CLI, update ke versi terbaru sebelum mengikuti panduan ini dengan menjalankan perintah:
gcloud components update
Mengizinkan traffic ke jaringan VPC Bersama
Admin VPC Bersama perlu membuat aturan firewall di project host VPC Bersama untuk mengizinkan traffic ke lingkungan fleksibel App Engine di jaringan VPC Bersama. Aturan firewall memungkinkan penyaluran dan health check terhadap traffic ke instance lingkungan fleksibel.
Aturan firewall harus memiliki properti berikut:
- Network: Nama jaringan VPC Bersama
- Direction of traffic: Masuk
- Action on match: Izinkan
- Targets: Tag target yang ditentukan
- Target tags:
aef-instance
- Source filter: Rentang IP
- Source IP ranges:
35.191.0.0/16
,130.211.0.0/22
- Protocols and ports: Protokol dan port yang ditentukan
- tcp: 8443, 10402
Admin VPC Bersama dapat membuat aturan firewall menggunakan Konsol Google Cloud atau Google Cloud CLI:
Konsol
Untuk membuat aturan firewall menggunakan Konsol Google Cloud:
Buka halaman pembuatan aturan firewall.
Di kolom Name dan Description, berikan nama dan deskripsi untuk aturan firewall tersebut.
Isi properti yang diperlukan seperti yang ditetapkan di atas.
Klik Create.
gcloud
Untuk membuat aturan firewall menggunakan Google Cloud CLI, jalankan perintah berikut:
gcloud compute firewall-rules create NETWORK_NAME-flex-firewall \ --project HOST_PROJECT_ID \ --network NETWORK_NAME \ --allow tcp:10402,tcp:8443 \ --target-tags aef-instance \ --source-ranges 35.191.0.0/16,130.211.0.0/22 \ --description 'Allows traffic to App Engine flexible environment'
dengan:
NETWORK_NAME
adalah nama jaringan VPC Bersama.HOST_PROJECT_ID
adalah project ID Google Cloud dari project host VPC Bersama.
Menyiapkan izin
Admin VPC Bersama harus memberi dua akun layanan berikut peran Compute Network User agar project layanan dapat men-deploy instance di lingkungan fleksibel App Engine ke jaringan:
- Agen layanan Google API (
PROJECT_NUM@cloudservices.gserviceaccount.com
) - Agen layanan lingkungan fleksibel App Engine (
service-PROJECT_NUM@gae-api-prod.google.com.iam.gserviceaccount.com
)
Konsol
Untuk menyiapkan izin menggunakan Konsol Google Cloud:
Buka halaman IAM Settings untuk service project dan catat Project number.
Buka halaman IAM untuk host project.
Klik Add.
Di kolom New members, masukkan alamat email berikut yang dipisahkan dengan koma. Ganti
PROJECT_NUM
dengan nomor project yang diperoleh di langkah 1.PROJECT_NUM@cloudservices.gserviceaccount.com
service-PROJECT_NUM@gae-api-prod.google.com.iam.gserviceaccount.com
Pada dropdown Select a role, pilih Compute Engine > Compute Network User.
Klik Simpan.
gcloud
Dapatkan nomor project dari project layanan di mana aplikasi App Engine di-deploy. Jalankan perintah berikut, dengan mengganti
SERVICE_PROJECT_ID
dengan project ID dari project layanan:export SERVICE_PROJECT_NUM=$(gcloud projects describe SERVICE_PROJECT_ID --format="value(projectNumber)")
Beri peran
compute.networkUser
kepada Agen Layanan Google API project layanan di project host:gcloud projects add-iam-policy-binding HOST_PROJECT_ID \ --member=serviceAccount:$SERVICE_PROJECT_NUM@cloudservices.gserviceaccount.com \ --role=roles/compute.networkUser
dengan
HOST_PROJECT_ID
adalah project ID Google Cloud dari project host VPC Bersama.Berikan peran
compute.networkUser
kepada Agen Layanan Lingkungan Fleksibel App Engine project layanan di project host:gcloud projects add-iam-policy-binding HOST_PROJECT_ID \ --member=serviceAccount:service-$SERVICE_PROJECT_NUM@gae-api-prod.google.com.iam.gserviceaccount.com \ --role=roles/compute.networkUser
Mengonfigurasi dan men-deploy layanan Anda
Setelah aturan firewall dan izin yang tepat disiapkan, Anda dapat men-deploy layanan baru atau layanan lingkungan fleksibel App Engine yang sudah ada ke jaringan VPC Bersama.
Dalam file
app.yaml
, gunakan kolomname
setelan jaringan untuk menentukan nama yang sepenuhnya memenuhi syarat dari jaringan VPC Bersama:network: name: projects/HOST_PROJECT_ID/global/networks/NETWORK_NAME
dengan
HOST_PROJECT_ID
adalah project ID Google Cloud dari project host VPC Bersama.NETWORK_NAME
adalah nama jaringan VPC Bersama.
Untuk mengonfigurasi layanan agar menjadi bagian dari subnetwork bernama
SUBNETWORK_NAME
, tetapkan juga kolomsubnetwork_name
:network: name: projects/HOST_PROJECT_ID/global/networks/NETWORK_NAME subnetwork_name: SUBNETWORK_NAME
Deploy layanan:
gcloud app deploy
Memverifikasi konfigurasi
Untuk memastikan bahwa layanan lingkungan fleksibel App Engine Anda berjalan pada jaringan VPC Bersama, lihat konfigurasi versi pada halaman App Engine Versions di Konsol Google Cloud:
Buka halaman App Engine Versions.
Di kolom Config di sebelah kanan, klik View untuk versi yang diinginkan.
Pastikan bahwa nama jaringan dalam konfigurasi adalah nama dari jaringan VPC Bersama.