Halaman ini menjelaskan persyaratan dan opsi konfigurasi jaringan cluster Dataproc.
Persyaratan konektivitas Dataproc
Cluster Dataproc Anda harus berada di jaringan Virtual Private Cloud yang memenuhi persyaratan rute dan firewall untuk mengakses Google API dan resource lainnya dengan aman.
Persyaratan rute
Agen Dataproc yang berjalan di VM cluster mengakses Dataproc Control API untuk mendapatkan tugas dan melaporkan status menggunakan Private Google Access. Akses Google Pribadi memastikan bahwa traffic ke Dataproc Control API tidak melintasi internet publik dan tidak meninggalkan pusat data Google; layanan ini menggunakan jalur perutean khusus melalui gateway internet default. Oleh karena itu, untuk membuat komunikasi antara agen Dataproc yang berjalan di VM cluster dan Dataproc Control API, jaringan VPC cluster Dataproc harus memiliki rute ke gateway internet. Hal ini juga diperlukan untuk cluster khusus-ip-internal
Saat dibuat, jaringan VPC berisi rute default yang dihasilkan sistem ke gateway internet default:
Aturan | Jenis | Rentang IP tujuan | Prioritas | Batas cakupan | Hop berikutnya |
---|---|---|---|---|---|
default-route-[id] |
Statis | 0.0.0.0/0 |
1000 |
- | Gateway internet default |
Menghapus rute default ke gateway internet tidak disarankan; Jika Anda ingin mengontrol akses jaringan ke internet, gunakan aturan atau kebijakan firewall.
Jika telah menghapus rute default ke gateway internet, Anda harus
menambahkan rute default. Rentang IP tujuan harus 0.0.0.0/0
karena rentang IP untuk Dataproc Control API tidak statis.
Persyaratan firewall
Jaringan VPC cluster Dataproc Anda harus secara eksplisit mengizinkan traffic berikut:
Traffic yang dimulai dari VM cluster Dataproc ke Dataproc Control API dan VM cluster Dataproc lainnya. Traffic ini diizinkan secara default dari aturan tersirat izinkan semua egress jaringan VPC. Jika Anda telah menambahkan aturan firewall penolakan traffic keluar yang menggantikan, buat aturan firewall izinkan traffic keluar.
Traffic respons dari Dataproc Control API ke VM cluster Dataproc diizinkan secara default, karena status firewall jaringan VPC.
Traffic yang diterima oleh VM cluster Dataproc dari VM cluster Dataproc lainnya. Traffic ini akan ditolak secara default dari aturan firewall implisit tolak semua traffic masuk jaringan VPC. Anda harus membuat aturan firewall izinkan traffic masuk.
- Gunakan tag jaringan untuk VM cluster Dataproc Anda sehingga Anda dapat membatasi penerapan aturan firewall yang diperlukan hanya untuk VM cluster Dataproc. Jika tidak menggunakan tag jaringan, Anda dapat menentukan target berdasarkan akun layanan yang digunakan untuk VM cluster. Atau, Anda dapat mengonfigurasi aturan firewall untuk diterapkan ke semua VM di jaringan VPC.
- Untuk akses dan konektivitas jaringan yang lebih aman, gunakan tag aman, bukan tag jaringan, untuk menentukan sumber dan target aturan firewall.
Membuat aturan firewall izinkan traffic masuk
Jika Anda atau administrator jaringan atau keamanan Anda membuat aturan firewall traffic masuk untuk diterapkan ke jaringan VPC cluster Dataproc, aturan tersebut harus memiliki karakteristik berikut:
Parameter sources menentukan sumber untuk paket. Semua VM cluster Dataproc harus dapat berkomunikasi satu sama lain. Anda dapat mengidentifikasi VM dalam cluster berdasarkan rentang alamat IP (rentang utama subnet cluster Dataproc), tag jaringan, atau akun layanan yang terkait dengan VM.
Target untuk aturan harus mengidentifikasi VM cluster. Target dapat berupa semua VM di jaringan VPC, atau Anda dapat mengidentifikasi VM berdasarkan tag jaringan target, atau akun layanan target.
Aturan harus mencakup protokol dan port berikut:
- TCP (semua port, 0 hingga 65535)
- UDP (semua port, 0 hingga 65535)
- ICMP
Dataproc menggunakan layanan yang berjalan di beberapa port. Menentukan semua port akan membantu layanan berjalan dengan lancar.
Prioritas aturan harus lebih tinggi daripada prioritas aturan firewall penolakan masuk yang berlaku untuk sumber dan target yang sama.
Membuat aturan firewall izinkan traffic keluar
Jika Anda atau administrator jaringan atau keamanan Anda membuat aturan firewall keluar untuk diterapkan ke jaringan VPC cluster Dataproc, aturan tersebut harus memiliki karakteristik berikut:
Parameter destinations menentukan tujuan untuk paket. Semua VM cluster Dataproc harus dapat memulai traffic satu sama lain dan Dataproc Control API. Karena alamat IP control API tidak statis, tujuan harus ditentukan berdasarkan rentang IP
0.0.0.0/0
.Target untuk aturan harus mengidentifikasi VM cluster. Target dapat berupa semua VM di jaringan VPC, atau Anda dapat mengidentifikasi VM berdasarkan tag jaringan target, atau akun layanan target.
Aturan harus mencakup protokol dan port berikut:
- TCP (semua port, 0 hingga 65535)
- UDP (semua port, 0 hingga 65535)
- ICMP
Dataproc menggunakan layanan yang berjalan di beberapa port. Menentukan semua port akan membantu layanan berjalan dengan lancar.
Prioritas aturan harus lebih tinggi daripada prioritas aturan firewall penolakan keluar yang berlaku untuk tujuan dan target yang sama.
Mendiagnosis aturan firewall jaringan VPC
Untuk mengaudit paket yang tidak diproses oleh aturan firewall dengan prioritas yang lebih tinggi, Anda dapat membuat dua aturan firewall penolakan dengan prioritas rendah (65534) berikut. Tidak seperti aturan firewall tersirat, Anda dapat mengaktifkan logging aturan firewall pada setiap aturan prioritas rendah ini:
Aturan penolakan ingress (sumber
0.0.0.0/0
, semua protokol, semua target dalam jaringan VPC)Aturan penolakan keluar (tujuan
0.0.0.0/0
, semua protokol, semua target di jaringan VPC)
Dengan aturan prioritas rendah dan pencatatan log aturan firewall ini, Anda dapat mencatat log paket yang tidak diproses oleh aturan firewall dengan prioritas yang lebih tinggi dan berpotensi lebih spesifik. Kedua aturan prioritas rendah ini juga sesuai dengan praktik terbaik keamanan dengan menerapkan strategi "menjatuhkan paket terakhir".
Periksa log aturan firewall untuk aturan ini guna menentukan apakah Anda ingin membuat atau mengubah aturan dengan prioritas yang lebih tinggi untuk mengizinkan paket. Misalnya, jika paket yang dikirim di antara VM cluster Dataproc dihentikan, hal ini dapat menjadi sinyal bahwa aturan firewall Anda harus disesuaikan.
Membuat jaringan VPC
Daripada menggunakan jaringan VPC default
, Anda dapat membuat jaringan VPC mode otomatis atau kustom sendiri. Saat membuat cluster, Anda mengaitkan jaringan dengan cluster.
Lingkungan Assured Workloads: Saat Anda menggunakan lingkungan Assured Workloads untuk kepatuhan terhadap peraturan, cluster, jaringan VPC, dan bucket Cloud Storage-nya harus berada dalam lingkungan Assured Workloads.
Buat cluster yang menggunakan jaringan VPC Anda
Konsol
Pilih jaringan Anda di bagian konfigurasi Jaringan di panel Sesuaikan cluster. Setelah Anda memilih jaringan, pemilih Subnetwork akan menampilkan subnetwork yang tersedia di region yang Anda pilih untuk cluster.
Google Cloud CLI
Gunakan
gcloud dataproc clusters create
dengan flag ‑‑network
atau ‑‑subnet
untuk membuat cluster di subnet dalam jaringan Anda.
Jika Anda menggunakan flag ‑‑network, cluster akan menggunakan subnetwork dengan
nama yang sama dengan jaringan yang ditentukan di region tempat cluster dibuat.
--network example
. Karena jaringan otomatis dibuat dengan subnet di setiap region, dengan setiap subnet diberi nama jaringan, Anda dapat meneruskan nama jaringan VPC mode otomatis ke tanda ‑‑network
.
Cluster akan menggunakan subnetwork VPC mode otomatis di
region yang ditentukan dengan tanda ‑‑region.
gcloud dataproc clusters create CLUSTER_NAME \ --network NETWORK_NAME \ --region=REGION \ ... other args ...
--subnet example
. Anda dapat menggunakan tanda ‑‑subnet
untuk membuat cluster yang menggunakan subnet jaringan VPC mode otomatis atau kustom di region cluster. Tentukan jalur resource lengkap subnet.
gcloud dataproc clusters create CLUSTER_NAMEW \ --subnet projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET_NAME \ --region=REGION \ ... other args ...
REST API
Anda dapat menentukan kolom
networkUri atau subnetworkUri
GceClusterConfig
sebagai bagian dari
permintaan
clusters.create.
Contoh
POST /v1/projects/my-project-id/regions/us-central1/clusters/ { "projectId": "PROJECT_ID", "clusterName": CLUSTER_NAME, "config": { "configBucket": "", "gceClusterConfig": { "subnetworkUri": SUBNET_NAME, }, ...
Membuat cluster yang menggunakan jaringan VPC di project lain
Cluster Dataproc dapat menggunakan jaringan VPC Bersama yang ditentukan dalam project host. Project tempat cluster Dataproc dibuat disebut sebagai project layanan.
Temukan nomor project cluster Dataproc:
- Buka halaman IAM & Admin Setelan di Google Cloud console. Pilih project tempat Anda akan membuat cluster Dataproc. Salin project ID.
Akun utama dengan peran Admin VPC Bersama harus melakukan langkah-langkah berikut. Lihat petunjuk untuk menyiapkan VPC Bersama untuk mengetahui informasi latar belakang.
Pastikan project host VPC Bersama diaktifkan.
Lampirkan project dengan cluster Dataproc ke project host.
Konfigurasi akun layanan agen layanan Dataproc (
service-[project-number]@dataproc-accounts.iam.gserviceaccount.com
) agar memiliki peran Network User untuk project host:Buka halaman IAM & Admin di Google Cloud console.
Gunakan pemilih project untuk memilih project host baru.
Klik Grant Access.
Isi formulir Beri Akses:
Tambahkan prinsipal: Masukkan akun layanan.
Tetapkan peran: Masukkan "Compute Network" di kotak filter, lalu pilih peran Compute Network User.
Klik Simpan.
Setelah akun layanan memiliki peran
Network User
untuk project host, buat cluster yang menggunakan jaringan VPC Bersama.
Membuat cluster yang menggunakan subnetwork VPC di project lain
Cluster Dataproc dapat menggunakan subnetwork VPC Bersama yang ditentukan dalam project host. Project tempat cluster Dataproc dibuat disebut sebagai project layanan.
Temukan nomor project cluster Dataproc:
- Buka halaman IAM & Admin Setelan di Google Cloud console. Pilih project tempat Anda akan membuat cluster Dataproc. Salin project ID.
Akun utama dengan peran Admin VPC Bersama harus melakukan langkah-langkah berikut. Lihat petunjuk untuk menyiapkan VPC Bersama untuk mengetahui informasi latar belakang.
Pastikan project host VPC Bersama diaktifkan.
Lampirkan project dengan cluster Dataproc ke project host.
Konfigurasi akun layanan agen layanan Dataproc (
service-[project-number]@dataproc-accounts.iam.gserviceaccount.com
) agar memiliki peran Network User untuk project host:Buka halaman VPC networks di konsol Google Cloud .
Gunakan pemilih project untuk memilih project host.
Klik jaringan yang berisi subnetwork yang akan digunakan cluster Dataproc Anda.
Di halaman VPC Network Details, klik kotak centang di samping nama subnetwork yang akan digunakan cluster Anda.
Jika Panel Info tidak terbuka, klik Tampilkan Panel Info.
Lakukan langkah-langkah berikut untuk setiap akun layanan:
Di Panel Info, klik Tambahkan Akun Utama.
Isi formulir Beri Akses:
Tambahkan prinsipal: Masukkan akun layanan.
Tetapkan peran: Masukkan "Compute Network" di kotak filter, lalu pilih peran Compute Network User.
Klik Simpan.
Setelah akun layanan memiliki peran
Network User
untuk project host, buat cluster yang menggunakan subnetwork VPC Bersama.
Membuat cluster khusus IP internal
Bagian ini berlaku untuk cluster versi image pra-2.2
. VM cluster dengan alamat khusus IP internal diaktifkan secara default saat membuat cluster Dataproc dengan versi gambar 2.2 dan yang lebih baru.
Anda dapat menggunakan konsol Google Cloud , gcloud CLI, atau Dataproc API untuk membuat cluster dengan alamat IP internal saja. Perhatikan bahwa Dataproc otomatis mengaktifkan Akses Google Pribadi di subnet regional cluster saat hanya IP internal diaktifkan untuk mengizinkan koneksi ke Google API dan layanan Google.
Konsol
Anda dapat membuat cluster Dataproc dengan alamat IP internal saja dari halaman Buat cluster Dataproc di konsol Google Cloud . Klik IP internal saja di panel Sesuaikan cluster untuk mengaktifkan fitur ini bagi cluster Anda.
gcloud CLI
Anda dapat membuat cluster dengan alamat IP internal saja
menggunakan perintah
gcloud dataproc clusters create
dengan flag ‑‑no-address
.
gcloud dataproc clusters create CLUSTER_NAME \ --no-address \ --network NETWORK_NAME \ --region=REGION \ ... other args ...
Karena jaringan otomatis dibuat dengan subnet di setiap region dengan nama yang sama dengan jaringan otomatis, Anda dapat meneruskan nama jaringan otomatis ke ‑‑network flag
untuk membuat cluster yang akan menggunakan subnetwork otomatis di region cluster.
Atau, Anda dapat menggunakan flag ‑‑subnet
untuk membuat
cluster yang akan menggunakan subnetwork otomatis atau kustom di region
tempat cluster akan dibuat. Teruskan tanda ‑‑subnet
jalur resource lengkap subnet.
gcloud dataproc clusters create cluster-name \ --no-address \ --subnet projects/project-id/regions/region/subnetworks/subnetwork-name \ --region=region \ ... other args ...
REST API
Anda dapat menggunakan kolom
GceClusterConfig.internalIpOnly
sebagai bagian dari
permintaan clusters.create
untuk membuat cluster yang hanya mengaktifkan alamat IP internal.
Contoh:
POST /v1/projects/my-project-id/regions/us-central1/clusters/ { "projectId": "my-project-id", "clusterName": "example-cluster", "config": { "configBucket": "", "gceClusterConfig": { "subnetworkUri": "custom-subnet-1", "zoneUri": "us-central1-b", "internalIpOnly": true }, ...
Mendownload dependensi dengan cluster khusus IP internal
Secara default, cluster khusus IP internal tidak memiliki akses ke internet. Oleh karena itu, tugas yang mendownload dependensi dari internet, seperti tugas yang mendownload paket dependensi Spark dari Maven Central, akan gagal. Ada beberapa solusi untuk menghindari masalah ini:
Gunakan Cloud NAT untuk mengaktifkan akses cluster ke internet.
Buat image kustom yang menyertakan dependensi (misalnya, paket dependensi Spark di
/usr/lib/spark/jars/
).Upload dependensi ke bucket Cloud Storage, lalu gunakan tindakan inisialisasi untuk mendownload dependensi dari bucket selama pembuatan cluster.
Jaringan Dataproc dan Kontrol Layanan VPC
Dengan Kontrol Layanan VPC, administrator dapat menentukan perimeter keamanan di sekitar resource layanan yang dikelola Google untuk mengontrol komunikasi ke dan di antara layanan tersebut.
Perhatikan batasan dan strategi berikut saat menggunakan jaringan Kontrol Layanan VPC dengan cluster Dataproc:
Untuk menginstal komponen di luar perimeter Kontrol Layanan VPC, buat image kustom Dataproc yang telah menginstal komponen sebelumnya, lalu buat cluster menggunakan image kustom.
Lihat Langkah khusus Dataproc untuk melindungi menggunakan Kontrol Layanan VPC.
Langkah berikutnya
- Untuk memecahkan masalah terkait pembuatan cluster Dataproc, lihat Memecahkan masalah pembuatan cluster.