Puoi installare componenti aggiuntivi come Ranger quando crei un utilizzando il cluster Componenti facoltativi funzionalità. In questa pagina viene descritto il componente Ranger.
Apache Ranger
è un framework open source per gestire le autorizzazioni e i controlli
dell'ecosistema Hadoop. Il server di amministrazione di Ranger e la UI web sono disponibili sulla porta
6080
sul primo nodo master del cluster.
Vedi anche:
Installa il componente
Installa il componente quando crei un cluster Dataproc. I componenti possono essere aggiunti ai cluster creati con Dataproc versione 1.3 e successivi. Il componente Ranger richiede l'installazione del componente Solr come mostrato di seguito.
Consulta Versioni di Dataproc supportate per la versione del componente inclusa in ogni release di immagine Dataproc.
Procedura di installazione:
Configura la tua password di amministratore per il ranger:
- Concedi
Ruolo Autore crittografia/decrittografia CryptoKey Cloud KMS
all'account di servizio del cluster. Per impostazione predefinita, il servizio cluster
è impostato sull'account di servizio predefinito di Compute Engine, che ha il seguente formato:
project-number-compute@developer.gserviceaccount.com
Puoi specifica un account di servizio del cluster diverso quando per creare il cluster.- Esempio:
Concedi il ruolo Autore crittografia/decrittografia CryptoKey Cloud KMS
all'account di servizio predefinito di Compute Engine:
gcloud projects add-iam-policy-binding project-id \ --member=serviceAccount:project-number-compute@developer.gserviceaccount.com \ --role=roles/cloudkms.cryptoKeyDecrypter
- Esempio:
Concedi il ruolo Autore crittografia/decrittografia CryptoKey Cloud KMS
all'account di servizio predefinito di Compute Engine:
- Cripta la password dell'utente amministratore di Ranger utilizzando un
Chiave Key Management Service (KMS).
Per i cluster di versioni delle immagini precedenti alla 2.2, la password deve essere composta da almeno
8 caratteri, con almeno un carattere alfabetico e un carattere numerico. Per
2.2 e versioni successive dell'immagine, la password deve essere composta da almeno
8 caratteri, con almeno una lettera maiuscola, una lettera minuscola,
e un carattere numerico.
- Esempio:
- Crea il keyring:
gcloud kms keyrings create my-keyring --location=global
- Crea la chiave:
gcloud kms keys create my-key \ --location=global \ --keyring=my-keyring \ --purpose=encryption
- Cripta la password dell'utente amministratore di Ranger:
echo "my-ranger-admin-password" | \ gcloud kms encrypt \ --location=global \ --keyring=my-keyring \ --key=my-key \ --plaintext-file=- \ --ciphertext-file=admin-password.encrypted
- Crea il keyring:
- Esempio:
- Carica la password criptata su un
Bucket Cloud Storage nel tuo progetto.
- Esempio:
gcloud storage cp admin-password.encrypted gs://my-bucket
- Esempio:
- Concedi
Ruolo Autore crittografia/decrittografia CryptoKey Cloud KMS
all'account di servizio del cluster. Per impostazione predefinita, il servizio cluster
è impostato sull'account di servizio predefinito di Compute Engine, che ha il seguente formato:
Crea il tuo cluster:
- Quando installi il componente Ranger, il comando
Anche il componente Solr deve essere
come mostrato di seguito.
- Il componente Ranger si basa sul componente Solr per archiviare ed eseguire query
e i relativi audit log, che per impostazione predefinita utilizzano HDFS come spazio di archiviazione. Questo HDFS
e i dati vengono cancellati quando viene eliminato il cluster. Per configurare
il componente Solr per archiviare i dati, inclusi gli audit log dei Ranger,
su Cloud Storage, utilizza
dataproc:solr.gcs.path=gs://<bucket>
proprietà cluster quando crei il cluster. I dati di Cloud Storage persistono dopo l'eliminazione del cluster.
- Il componente Ranger si basa sul componente Solr per archiviare ed eseguire query
e i relativi audit log, che per impostazione predefinita utilizzano HDFS come spazio di archiviazione. Questo HDFS
e i dati vengono cancellati quando viene eliminato il cluster. Per configurare
il componente Solr per archiviare i dati, inclusi gli audit log dei Ranger,
su Cloud Storage, utilizza
- Passa la chiave e la password KMS e gli URI Cloud Storage alla
il comando di creazione del cluster
dataproc:ranger.kms.key.uri
edataproc:ranger.admin.password.uri
proprietà del cluster. - Facoltativamente, puoi passare la password dell'utente amministratore del database Ranger
tramite l'URI di un file Cloud Storage criptato
impostando
dataproc:ranger.db.admin.password.uri
proprietà cluster. - Per impostazione predefinita, il componente Ranger utilizza l'istanza del database MySQL in esecuzione
sul primo nodo master del cluster. Nell'istanza MySQL,
Attiva il flag
log_bin_trust_function_creators
impostando la variabile aON
. L'impostazione di questo flag stabilisce se gli autori delle funzioni memorizzate possono fidarsi. Dopo l'esito positivo creazione del cluster e configurazione Ranger, puoi reimpostare Dalog_bin_trust_function_creators
aOFF
. Per rendere permanente il database Ranger dopo per l'eliminazione del cluster, utilizza un'istanza Cloud SQL come un database MySql esterno.
- Imposta
dataproc:ranger.cloud-sql.instance.connection.name
proprietà cluster all'istanza Cloud SQL. - Imposta
dataproc:ranger.cloud-sql.root.password.uri
proprietà cluster all'URI Cloud Storage della radice criptata con la chiave KMS e la password dell'istanza Cloud SQL. - Imposta
dataproc:ranger.cloud-sql.use-private-ip
proprietà cluster per indicare se la connessione all'istanza Cloud SQL tramite IP privato.
Il componente Ranger utilizza il proxy Cloud SQL per la connessione all'istanza Cloud SQL. Per utilizzare il proxy:
- Imposta l'ambito API
sqlservice.admin
quando crei il cluster (vedi Autorizzazione delle richieste con OAuth 2.0). Se usi il comandogcloud dataproc cluster create
, aggiungi il parametro--scopes=default,sql-admin
. - Abilita l'API SQL Admin nel tuo progetto.
- Assicurati che l'account di servizio del cluster abbia il ruolo Editor Cloud SQL.
Comando g-cloud
Per creare un cluster Dataproc che includa il componente Ranger, utilizza la gcloud dataproc clusters create cluster-name con il 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
API REST
Specifica i componenti Ranger e Solr nel SoftwareConfig.Component nell'ambito di un'API Dataproc clusters.create richiesta. Devi anche impostare le seguenti proprietà del cluster nel SoftwareConfig.Component.properties campo:
dataproc:ranger.kms.key.uri
: "projects/project-id/locations/global/keyRings/my-keyring/cryptoKeys/my-key"dataproc:ranger.admin.password.uri
: "gs://my-bucket/password-amministratore.criptati"
Console
- Attiva il componente e il gateway dei componenti.
- Nella console Google Cloud, apri Dataproc Crea un cluster . Il riquadro Configura cluster è selezionato.
- Nella sezione Componenti:
- Sotto Componenti facoltativi, seleziona Ranger, Solr e altri componenti da installare sul cluster.
- In Gateway dei componenti, seleziona Abilita gateway dei componenti (vedi Visualizzazione e accesso agli URL del gateway dei componenti).
- Imposta
- Quando installi il componente Ranger, il comando
Anche il componente Solr deve essere
come mostrato di seguito.
Fai clic sulla scheda Interfacce web. In Gateway dei componenti, fai clic su Ranger per aprire l'interfaccia web dei ranger. Accedi con il nome utente dell'amministratore Ranger (ad es. "admin") e password.
Log amministratore Ranger
I log di amministrazione dei ranger sono disponibili in
Logging come ranger-admin-root
log.
![](https://cloud.google.com/static/dataproc/images/ranger-logs.png?authuser=2&hl=it)