Activer la mise en cache
Cette section décrit la procédure à suivre pour activer le cache avec Ranger afin de réduire les allers-retours du système de gestion des clés (KMS, Key Management System) Ranger pour chiffrer et déchiffrer les jetons.
Installez
memcached
sur les VM de cluster Dataproc. Par défaut, le serveur memcached démarre sur le port VM 11211 (localhost:11211
).sudo apt-get install -y memcached
Définissez les propriétés suivantes dans le fichier de configuration
/etc/dataproc-ranger-gcs-plugin/conf/ranger-gcs-site.xml
Ranger sur les VM de cluster 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>Redémarrez le service d'autorisation.
sudo systemctl restart ranger-gcs-plugin-authorization-server
Afficher l'état du cache
Vous pouvez utiliser telnet
pour afficher l'état du cache Ranger.
Installez
telnet
.sudo apt-get install -y telnet
Utilisez Telnet pour vous connecter à
memcache
sur le port11211
de la VM.sudo telnet 127.0.0.1 11211
Utilisez les commandes
telnet
pour afficher l'état du cache, y compris les commandes suivantes:stats items
: indique l'état des éléments de cache. Exemple de résultat :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
: liste des clés stockées dans le cache. Exemple de résultat :stats cachedump 17 2 ITEM 0616eeeeb54e23a09505da5bf75cd7fafe733eacf0d07bd7b1ac9cf46d17c188 [3051 b; 1707948281 s] ITEM d23645df9c79290d59ddb1b9710ff04fee37aa0b5de866b9b6d56b54641d68b4 [3078 b; 1707948281 s]
flush_all
: invalide les éléments du cache.
Réduire la portée des jetons d'accès Cloud Storage
Vous devrez peut-être réduire la portée des jetons d'accès Ranger pour élargir la portée des chemins Cloud Storage vers lesquels pointe une table Hive externe.
Pour déplacer toutes les partitions et sous-partitions au niveau de la table, définissez la propriété downscope.table.partition-name.pruning.enabled
sur true
dans le fichier de configuration ranger-gcs-site.xml
sur les VM du cluster Dataproc.
<property> <name>downscope.table.partition-name.pruning.enabled</name> <value>true</value> </property>
Exemple :
- Nom du bucket Cloud Storage:
gs://warehouse
- Chemin d'accès au jeton d'accès d'origine:
warehouse/hive/table/type=debit/year=2017/month=Aug/day=01/
- Après avoir défini
downscope.table.partition-name.pruning.enabled
surtrue
, chemin d'accès au jeton d'accès étendu:warehouse/hive/table/