Ativar o armazenamento em cache
Esta seção lista as etapas para ativar o cache com o Ranger para reduzir as ida e volta do sistema de gerenciamento de chaves (KMS, na sigla em inglês) do Ranger para criptografar e descriptografar tokens.
Instale o
memcached
em VMs do cluster do Dataproc. Por padrão, o servidor Memcached é iniciado na porta 11211 (localhost:11211
) da VM.sudo apt-get install -y memcached
Defina as seguintes propriedades no arquivo de configuração do
/etc/dataproc-ranger-gcs-plugin/conf/ranger-gcs-site.xml
Ranger nas VMs do cluster do 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>Reinicie o serviço de autorização.
sudo systemctl restart ranger-gcs-plugin-authorization-server
Conferir o status do cache
Use telnet
para conferir o status do cache do Ranger.
Instale
telnet
.sudo apt-get install -y telnet
Use o telnet para se conectar a
memcache
na porta11211
da VM.sudo telnet 127.0.0.1 11211
Use os comandos
telnet
para conferir o status do cache, incluindo os seguintes comandos:stats items
: lista o status dos itens de cache. Exemplo de resposta: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
: lista as chaves armazenadas no cache. Exemplo de resposta:stats cachedump 17 2 ITEM 0616eeeeb54e23a09505da5bf75cd7fafe733eacf0d07bd7b1ac9cf46d17c188 [3051 b; 1707948281 s] ITEM d23645df9c79290d59ddb1b9710ff04fee37aa0b5de866b9b6d56b54641d68b4 [3078 b; 1707948281 s]
flush_all
: invalida itens de cache.
Tokens de acesso do Cloud Storage com escopo reduzido
Talvez seja necessário reduzir o escopo dos tokens de acesso do Ranger para mover para cima (upscope) os caminhos do Cloud Storage para os quais uma tabela externa do Hive aponta.
Para mover todas as partições e subpartições até o nível da tabela,
defina a propriedade downscope.table.partition-name.pruning.enabled
como true
no arquivo de configuração ranger-gcs-site.xml
nas VMs do cluster do Dataproc.
<property> <name>downscope.table.partition-name.pruning.enabled</name> <value>true</value> </property>
Exemplo:
- Nome do bucket do Cloud Storage:
gs://warehouse
- Caminho do token de acesso original:
warehouse/hive/table/type=debit/year=2017/month=Aug/day=01/
- Depois de definir
downscope.table.partition-name.pruning.enabled
comotrue
, o caminho do token de acesso com escopo foi aumentado:warehouse/hive/table/