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 pengauditan
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 ini.
Lihat Versi Dataproc yang didukung untuk versi komponen yang disertakan dalam setiap rilis image Dataproc.
Langkah-langkah penginstalan:
Siapkan sandi admin Ranger Anda:
- Berikan peran Cloud KMS Encrypter/Decrypter ke akun layanan cluster. Secara default, akun layanan cluster ditetapkan sebagai akun layanan default Compute Engine, yang memiliki bentuk berikut:
Di bawah ini, Anda dapat menentukan akun layanan cluster yang berbeda saat membuat cluster.project-number-compute@developer.gserviceaccount.com
- Contoh: Berikan peran Cloud KMS Bigtable Encrypter/Decrypter ke akun layanan default Compute Engine:
gcloud projects add-iam-policy-binding project-id \ --member=serviceAccount:project-number-compute@developer.gserviceaccount.com \ --role=roles/cloudkms.cryptoKeyDecrypter
- Contoh: Berikan peran Cloud KMS Bigtable Encrypter/Decrypter ke akun layanan default Compute Engine:
- Enkripsi sandi pengguna admin Ranger Anda menggunakan kunci Key Management Service (KMS). Sandi
harus terdiri dari minimal 8 karakter dengan minimal satu
alfabet 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:
gsutil cp admin-password.encrypted gs://my-bucket
- Contoh:
- Berikan peran Cloud KMS Encrypter/Decrypter 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 ini.
- Komponen Ranger mengandalkan komponen Solr untuk menyimpan dan membuat kueri
log auditnya, yang secara default menggunakan HDFS sebagai penyimpanan. Data HDFS ini
akan dihapus saat cluster dihapus. Untuk mengonfigurasi komponen Solr agar 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 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
akan dihapus saat cluster dihapus. Untuk mengonfigurasi komponen Solr agar menyimpan data, termasuk log audit Ranger, di Cloud Storage, gunakan properti cluster
- Teruskan kunci KMS dan sandi URI Cloud Storage 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 menyetel
properti cluster
dataproc:ranger.db.admin.password.uri
. - Secara default, komponen Ranger menggunakan instance database MySql yang berjalan
pada node master pertama cluster. Pada 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
dataproc:ranger.cloud-sql.root.password.uri
properti cluster ke URI Cloud Storage dari sandi root yang dienkripsi dengan kunci KMS dari instance Cloud SQL. - Tetapkan properti cluster
dataproc:ranger.cloud-sql.use-private-ip
untuk menunjukkan apakah koneksi ke instance Cloud SQL 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 Memberi otorisasi 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 cluster 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 gateway komponen dan komponen.
- Di Konsol Google Cloud, buka halaman Buat cluster Dataproc. Panel Siapkan cluster dipilih.
- Di bagian Components:
- Di bagian Optional Components, pilih Ranger, Solr, dan komponen opsional lainnya untuk diinstal di cluster Anda.
- Pada Gateway Komponen, pilih Aktifkan gateway komponen (lihat Melihat dan Mengakses URL Gateway Komponen).
- Tetapkan properti cluster
- Saat menginstal komponen Ranger, komponen Solr juga harus
diinstal, seperti yang ditunjukkan di bawah ini.
Klik tab Web interfaces. Di bagian Gateway komponen, 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
.