Anda dapat menginstal komponen tambahan seperti Ranger saat membuat cluster Dataproc menggunakan fitur Komponen opsional. Halaman ini menjelaskan komponen Ranger.
Komponen Apache Ranger
adalah framework open source untuk mengelola izin dan audit untuk
ekosistem Hadoop. Server admin Ranger dan UI Web tersedia di port 6080
pada node master pertama cluster.
Lihat juga:
Menginstal komponen
Instal komponen saat Anda membuat cluster Dataproc. Komponen dapat ditambahkan ke cluster yang dibuat dengan Dataproc versi 1.3 dan yang lebih baru. Komponen Ranger memerlukan penginstalan komponen Solr seperti yang ditunjukkan di bawah.
Lihat Versi Dataproc yang didukung untuk mengetahui versi komponen yang disertakan dalam setiap rilis image Dataproc.
Langkah-langkah penginstalan:
Siapkan sandi admin Ranger Anda:
- Berikan peran Pengenkripsi/Pendekripsi CryptoKey Cloud KMS ke akun layanan cluster. Secara default, akun layanan cluster ditetapkan sebagai akun layanan default Compute Engine, yang memiliki bentuk berikut:
Anda dapat menentukan akun layanan cluster yang berbeda saat membuat cluster, di bawah.project-number-compute@
- Contoh:
Berikan peran Pengenkripsi/Pendekripsi CryptoKey Cloud KMS
ke akun layanan default Compute Engine:
gcloud projects add-iam-policy-binding project-id \ --member=serviceAccount:project-number-compute@ \ --role=roles/cloudkms.cryptoKeyDecrypter
- Contoh:
Berikan peran Pengenkripsi/Pendekripsi CryptoKey Cloud KMS
ke akun layanan default Compute Engine:
- Enkripsi sandi pengguna admin Ranger Anda menggunakan
kunci Key Management Service (KMS).
Untuk cluster versi image sebelum 2.2, sandi harus terdiri dari minimal
8 karakter, dengan minimal satu karakter alfabet dan satu karakter numerik. Untuk
cluster versi image 2.2 dan yang lebih baru, sandi harus terdiri dari minimal
8 karakter, dengan minimal satu huruf besar, satu huruf kecil,
dan satu karakter numerik.
- Contoh:
- Buat key ring:
gcloud kms keyrings create my-keyring --location=global
- Buat kunci:
gcloud kms keys create my-key \ --location=global \ --keyring=my-keyring \ --purpose=encryption
- Enkripsi sandi pengguna admin Ranger Anda:
echo 'my-ranger-admin-password' | \ gcloud kms encrypt \ --location=global \ --keyring=my-keyring \ --key=my-key \ --plaintext-file=- \ --ciphertext-file=admin-password.encrypted
- Buat key ring:
- Contoh:
- Upload sandi terenkripsi ke bucket Cloud Storage di project Anda.
- Contoh:
gcloud storage cp admin-password.encrypted gs://my-bucket
- Contoh:
- Berikan peran Pengenkripsi/Pendekripsi CryptoKey Cloud KMS ke akun layanan cluster. Secara default, akun layanan cluster ditetapkan sebagai akun layanan default Compute Engine, yang memiliki bentuk berikut:
Buat cluster Anda:
- Saat menginstal komponen Ranger, komponen Solr juga harus
diinstal, seperti yang ditunjukkan di bawah.
- Komponen Ranger mengandalkan komponen Solr untuk menyimpan dan membuat kueri
log auditnya, yang secara default menggunakan HDFS sebagai penyimpanan. Data HDFS ini
dihapus saat cluster dihapus. Untuk mengonfigurasi
komponen Solr guna menyimpan data, termasuk log audit Ranger,
di Cloud Storage, gunakan properti cluster
dataproc:solr.gcs.path=gs://<bucket>
saat Anda membuat cluster. Data Cloud Storage akan tetap ada setelah cluster dihapus.
- Komponen Ranger mengandalkan komponen Solr untuk menyimpan dan membuat kueri
log auditnya, yang secara default menggunakan HDFS sebagai penyimpanan. Data HDFS ini
dihapus saat cluster dihapus. Untuk mengonfigurasi
komponen Solr guna menyimpan data, termasuk log audit Ranger,
di Cloud Storage, gunakan properti cluster
- Teruskan URI Cloud Storage kunci dan sandi KMS ke perintah pembuatan cluster dengan menetapkan properti cluster
dataproc:ranger.kms.key.uri
dandataproc:ranger.admin.password.uri
. - Secara opsional, Anda dapat meneruskan sandi pengguna admin database Ranger melalui URI file Cloud Storage terenkripsi dengan menetapkan properti cluster
dataproc:ranger.db.admin.password.uri
. - Secara default, komponen Ranger menggunakan instance database MySql yang berjalan
di node master pertama cluster. Di instance MySQL,
aktifkan flag
log_bin_trust_function_creators
dengan menetapkan variabel keON
. Menyetel tanda ini akan mengontrol apakah pembuat fungsi yang disimpan dapat dipercaya. Setelah pembuatan cluster dan konfigurasi Ranger berhasil, Anda dapat meresetlog_bin_trust_function_creators
keOFF
. Untuk mempertahankan database Ranger setelah penghapusan cluster, gunakan instance Cloud SQL sebagai Database MySql eksternal.
- Tetapkan properti cluster
dataproc:ranger.cloud-sql.instance.connection.name
ke instance Cloud SQL. - Tetapkan properti cluster
dataproc:ranger.cloud-sql.root.password.uri
ke URI Cloud Storage dari sandi root terenkripsi kunci KMS instance Cloud SQL. - Tetapkan properti cluster
dataproc:ranger.cloud-sql.use-private-ip
untuk menunjukkan apakah koneksi ke instance Cloud SQL dilakukan melalui IP pribadi.
Komponen Ranger menggunakan Proxy Cloud SQL untuk terhubung ke instance Cloud SQL. Untuk menggunakan proxy:
- Tetapkan cakupan API
sqlservice.admin
saat Anda membuat cluster (lihat Mengizinkan permintaan dengan OAuth 2.0). Jika menggunakan perintahgcloud dataproc cluster create
, tambahkan parameter--scopes=default,sql-admin
. - Aktifkan SQL Admin API di project Anda.
- Pastikan akun layanan cluster memiliki peran Cloud SQL Editor.
perintah gcloud
Untuk membuat cluster Dataproc yang menyertakan komponen Ranger, gunakan perintah gcloud dataproc clusters create cluster-name dengan flag
--optional-components
.gcloud dataproc clusters create cluster-name \ --optional-components=SOLR,RANGER \ --region=region \ --enable-component-gateway \ --properties="dataproc:ranger.kms.key.uri=projects/project-id/locations/global/keyRings/my-keyring/cryptoKeys/my-key,dataproc:ranger.admin.password.uri=gs://my-bucket/admin-password.encrypted" \ ... other flags
REST API
Tentukan komponen Ranger dan Solr di kolom SoftwareConfig.Component sebagai bagian dari permintaan clusters.create Dataproc API. Anda juga harus menetapkan properti cluster berikut di kolom SoftwareConfig.Component.properties:
dataproc:ranger.kms.key.uri
: "projects/project-id/locations/global/keyRings/my-keyring/cryptoKeys/my-key"dataproc:ranger.admin.password.uri
: "gs://my-bucket/admin-password.encrypted"
Konsol
- Aktifkan komponen dan gateway komponen.
- Di konsol Google Cloud, buka halaman Create a cluster Dataproc. Panel Siapkan cluster dipilih.
- Di bagian Komponen:
- Di bagian Komponen opsional, pilih Ranger, Solr, dan komponen opsional lainnya untuk diinstal di cluster Anda.
- Di bagian Component Gateway, pilih Enable component gateway (lihat Melihat dan Mengakses URL Component Gateway).
- Tetapkan properti cluster
- Saat menginstal komponen Ranger, komponen Solr juga harus
diinstal, seperti yang ditunjukkan di bawah.
Klik tab Antarmuka web. Di bagian Component gateway, klik Ranger untuk membuka antarmuka web Ranger. Login dengan nama pengguna admin Ranger (misalnya, "admin") dan sandi.
Log Admin Ranger
Log admin Ranger tersedia di
Logging sebagai log ranger-admin-root
.