Menggunakan Ranger dengan caching dan downscoping

Aktifkan simpan ke cache

Bagian ini mencantumkan langkah-langkah untuk mengaktifkan caching dengan Ranger guna mengurangi perjalanan pulang pergi Sistem Pengelolaan Kunci (KMS) Ranger untuk mengenkripsi dan mendekripsi token.

  1. Instal memcached di VM cluster Dataproc. Secara default, server memcached dimulai di port VM 11211 (localhost:11211).

    sudo apt-get install -y memcached
    

  2. Tetapkan properti berikut di file konfigurasi Ranger /etc/dataproc-ranger-gcs-plugin/conf/ranger-gcs-site.xml pada VM 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>

  3. Mulai ulang layanan otorisasi.

    sudo systemctl restart ranger-gcs-plugin-authorization-server
    

Melihat status cache

Anda dapat menggunakan telnet untuk melihat status cache Ranger.

  1. Instal telnet.

    sudo apt-get install -y telnet
    

  2. Gunakan telnet untuk terhubung ke memcache di port VM 11211.

    sudo telnet 127.0.0.1 11211
    

  3. Gunakan perintah telnet untuk melihat status cache, termasuk perintah berikut:

    • stats items: Mencantumkan status item cache. Contoh output:
      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: Mencantumkan kunci yang disimpan dalam cache. Contoh output:
      stats cachedump 17 2
      ITEM 0616eeeeb54e23a09505da5bf75cd7fafe733eacf0d07bd7b1ac9cf46d17c188 [3051 b; 1707948281 s]
      ITEM d23645df9c79290d59ddb1b9710ff04fee37aa0b5de866b9b6d56b54641d68b4 [3078 b; 1707948281 s]
      
    • flush_all: Batalkan validasi item cache.

Mengecilkan cakupan token akses Cloud Storage

Anda mungkin perlu memperkecil cakupan token akses Ranger untuk memindahkan (memperluas cakupan) jalur Cloud Storage yang ditunjuk oleh tabel Hive eksternal.

Untuk memindahkan semua partisi dan subpartisi ke tingkat tabel, tetapkan properti downscope.table.partition-name.pruning.enabled ke true dalam file konfigurasi ranger-gcs-site.xml di VM cluster Dataproc.

<property>
  <name>downscope.table.partition-name.pruning.enabled</name>
  <value>true</value>
</property>

Contoh:

  • Nama bucket Cloud Storage: gs://warehouse
  • Jalur token akses asli: warehouse/hive/table/type=debit/year=2017/month=Aug/day=01/
  • Setelah menyetel downscope.table.partition-name.pruning.enabled ke true, jalur token akses yang ditingkatkan cakupannya: warehouse/hive/table/