Habilita el almacenamiento en caché
En esta sección, se enumeran los pasos para habilitar el almacenamiento en caché con Ranger a fin de reducir Recorridos de ida y vuelta del Ranger Key Management System (KMS) para encriptar y desencriptar tokens.
Instalar
memcached
en Dataproc las VMs del clúster. De forma predeterminada, el servidor de Memcached se inicia en el puerto 11211 de la VM (localhost:11211
).sudo apt-get install -y memcached
Establece las siguientes propiedades en el archivo de configuración de
/etc/dataproc-ranger-gcs-plugin/conf/ranger-gcs-site.xml
Ranger en las VMs del clúster de Dataproc.<property> <name>authorization.service.remoteCaching.address</name> <value>localhost:11211</value> </property>
<property> <name>authorization.service.remoteCaching.class</name> <value>com.google.cloud.hadoop.ranger.gcs.authorization.caching.MemcachedCache</value> </property>
<property> <name>authorization.service.remoteCaching.encryption.key.uri</name> <value>gcp-kms://projects/PROJECT_ID_OF_KMS_KEY/locations/REGION/keyRings/KEYRING_NAME/cryptoKeys/KEY_NAME</value> </property>Reinicia el servicio de autorización.
sudo systemctl restart ranger-gcs-plugin-authorization-server
Consulta el estado de la caché
Puedes usar telnet
para ver el estado de la caché de Ranger.
Instala
telnet
.sudo apt-get install -y telnet
Usa Telnet para conectarte a
memcache
en el puerto de VM11211
.sudo telnet 127.0.0.1 11211
Usa los comandos
telnet
para ver el estado de la caché, incluidos los siguientes:stats items
: Enumera el estado de los elementos de caché. Resultado de muestra:STAT items:17:number 2 STAT items:17:number_hot 0 STAT items:17:number_warm 0 STAT items:17:number_cold 2
stats cachedump
: Enumera las claves almacenadas en la caché. Resultado de muestra:stats cachedump 17 2 ITEM 0616eeeeb54e23a09505da5bf75cd7fafe733eacf0d07bd7b1ac9cf46d17c188 [3051 b; 1707948281 s] ITEM d23645df9c79290d59ddb1b9710ff04fee37aa0b5de866b9b6d56b54641d68b4 [3078 b; 1707948281 s]
flush_all
: Invalida los elementos de caché.
Reducir el alcance de los tokens de acceso de Cloud Storage
Es posible que debas reducir el permiso de los tokens de acceso de Ranger para aumentar el permiso de las rutas de acceso de Cloud Storage a las que apunta una tabla externa de Hive.
Para mover todas las particiones y subparticiones hasta el nivel de la tabla, establece la propiedad downscope.table.partition-name.pruning.enabled
en true
en el archivo de configuración ranger-gcs-site.xml
en las VMs del clúster de Dataproc.
<property> <name>downscope.table.partition-name.pruning.enabled</name> <value>true</value> </property>
Ejemplo:
- Nombre del bucket de Cloud Storage:
gs://warehouse
- Ruta de acceso del token de acceso original:
warehouse/hive/table/type=debit/year=2017/month=Aug/day=01/
- Después de establecer
downscope.table.partition-name.pruning.enabled
entrue
, haz lo siguiente: Ruta de acceso del token de acceso con mayor alcance:warehouse/hive/table/