Redis Enterprise Modules on VMware Tanzu

This topic describes how to use Redis Enterprise Modules on VMware Tanzu.

Redis Enterprise Modules Overview

Redis Enterprise Modules reduces the need to maintain a specialty database for each application use case by offering a separate, dedicated, and optimized engine for each data model. Trusted, tested, and verified to work with Redis Enterprise, these modules include:
RedisGraph
RedisJSON
RedisTimeSeries
RedisBloom
RediSearch

For more information please refer to the Redis Enterprise Modules page on the Redis Labs Website.

Creating a Redis Enterprise Module Enabled Database instance via VMware Tanzu Apps Manager CLI

  1. Perform ‘cf login’ to your foundation.

  2. Run the command # cf create-service redislabs [SERVICE PLAN] [SERVICE INSTANCE] -c [PARAMETERS_AS_JSON]
    where:
    redislabs is the default service name (in a Redis Enterprise Tile Manager multi-tile environment, please run # cf marketplace to determine the service name)
    SERVICE PLAN uses one of the available Redis Enterprise service plans
    SERVICE INSTANCE is the new service instance name
    PARAMETERS_AS_JSON are the modules list to be loaded

  3. Consult the list of available modules and their module ids for the Redis Enterprise version installed on your foundation.
    This can be achieved by having an operator run curl -L -v -k GET https://localhost:9443/v1/modules -u "[CLUSTER ADMIN USERNAME]:[CLUSTER ADMIN PASSWORD]" -H "Content-Type: application/json" on one of the Redis Enteprise nodes.
    See the appendix below for the list of module ids and their default arguments for release 5.4.102200007 (released for VMware Tanzu 2.7)

    For example, to create a small-redis plan database with the RedisBloom module:
    cf create-service redislabs small-redis RedisBloom -c ' { "module_list":[{"module_id":"0bea0987204293b26c877698e29dcdf3","module_args":""}]}'
    Creating service instance RedisBloom in org RedisLabs / space RL Space 1 as admin... OK

    Available service plans are listed in response to cf services or listed in either the tile’s Ops Manager configuration, under Settings->Service Plans or in the Apps Manager -> Marketplace screen:

Import button

Import button

Creating a Redis Enterprise Module Enabled Database instance via VMware Tanzu Apps Manager UI

  1. From VMware Tanzu Apps Manager go to Marketplace and select Redis Enterprise on VMware Tanzu.
    Import button
  2. Select a plan from the available plans listed and click “Select This Plan”
    Import button
  3. Select the “Add Parameter” option and turn on the “Enter as JSON” option. Enter the module list information in the same way as with the CLI option.
  4. Write an instance name and optionally choose to bind to a deployed app then click “Create”.
    Import button
    Import button

Appendix: Module list for 6.0.63900002 (released for VMware Tanzu 2.9)

[
  {
    "is_bundled":true,
    "display_name":"RedisJSON",
    "description":"Native JSON Data Type for Redis",
    "license":"Redis Source Available License Agreement",
    "author":"Redis Labs",
    "min_redis_pack_version":"5.0",
    "config_command":"",
    "email":"redismodules@redislabs.com",
    "version":10004,
    "min_redis_version":"4.0",
    "capabilities":[
      "types",
      "no_multi_key",
      "replica_of",
      "eviction_expiry",
      "failover_migrate",
      "flash",
      "backup_restore",
      "reshard_rebalance",
      "persistence_aof",
      "persistence_rdb",
      "hash_policy",
      "clustering"
    ],
    "semantic_version":"1.0.4",
    "module_name":"ReJSON",
    "sha256":"1fc77c09180fbd25bd1482ea9a6826009d9cd5e1dc0a999260ebe426fd06d19f",
    "homepage":"http:\/\/redisjson.io",
    "command_line_args":"",
    "uid":"e4188a32d026c6b7595cdc750bf70b96"
  },
  {
    "is_bundled":true,
    "display_name":"RedisBloom",
    "description":"Bloom Filter Module for Redis",
    "license":"Redis Source Available License Agreement",
    "author":"Redis Labs",
    "min_redis_pack_version":"5.0",
    "config_command":"",
    "email":"redismodules@redislabs.com",
    "version":20202,
    "min_redis_version":"4.0",
    "capabilities":[
      "types",
      "no_multi_key",
      "replica_of",
      "eviction_expiry",
      "failover_migrate",
      "backup_restore",
      "reshard_rebalance",
      "persistence_aof",
      "persistence_rdb",
      "hash_policy",
      "clustering"
    ],
    "semantic_version":"2.2.2",
    "module_name":"bf",
    "sha256":"656ff1906ae9ccc8aaabc7412bd99b27f675b8a1801c62ca488e165aac2e336e",
    "homepage":"http:\/\/redisbloom.io",
    "command_line_args":"",
    "uid":"7b644d30c636406e77cda2de1fd5bdc8"
  },
  {
    "is_bundled":true,
    "display_name":"RedisGraph",
    "description":"A graph database on top of Redis which supports Open-Cypher query language.",
    "license":"Redis Source Available License Agreement",
    "author":"RedisLabs",
    "min_redis_pack_version":"5.4.11",
    "config_command":"",
    "email":"roi@redislabs.com",
    "version":20013,
    "min_redis_version":"5.0.7",
    "capabilities":[
      "types",
      "hash_policy",
      "failover_migrate",
      "persistence_rdb",
      "persistence_aof",
      "replica_of"
    ],
    "semantic_version":"2.0.13",
    "module_name":"graph",
    "sha256":"fb937e2a14e0821f28b9e6d90a87795e8afad650ee4eed733b0fa024479aba7f",
    "homepage":"http:\/\/redisgraph.io",
    "command_line_args":"",
    "uid":"6df0fd5b4810e6818fce1d23b5df2352"
  },
  {
    "is_bundled":true,
    "display_name":"redisearch-enterprise",
    "description":"High performance search index on top of redis - enterprise version",
    "license":"Commercial",
    "author":"RedisLabs",
    "min_redis_pack_version":"5.0",
    "config_command":"_FT.CONFIG SET",
    "email":"dvir@redislabs.com",
    "version":10612,
    "min_redis_version":"4.0",
    "capabilities":[
      "types",
      "replica_of",
      "failover_migrate",
      "persistence_aof",
      "persistence_rdb",
      "clustering",
      "backup_restore"
    ],
    "semantic_version":"1.6.12",
    "module_name":"ft",
    "sha256":"73f968fa494fdafb2398562ef57ca8e62b3dbe67a6dc90e9f34b07217e4f1250",
    "homepage":"http:\/\/redisearch.io",
    "command_line_args":"PARTITIONS AUTO",
    "uid":"2dc47d53046217bead550f120e3f1a73"
  },
  {
    "is_bundled":true,
    "display_name":"RedisTimeSeries",
    "description":"Time-Series data structure for redis",
    "license":"Redis Source Available License Agreement",
    "author":"RedisLabs",
    "min_redis_pack_version":"5.4.6",
    "config_command":"",
    "email":"danni@redislabs.com",
    "version":10207,
    "min_redis_version":"5.0",
    "capabilities":[
      "types",
      "replica_of",
      "backup_restore",
      "hash_policy",
      "eviction_expiry",
      "failover_migrate",
      "persistence_aof",
      "persistence_rdb",
      "hash_policy",
      "clustering",
      "reshard_rebalance"
    ],
    "semantic_version":"1.2.7",
    "module_name":"timeseries",
    "sha256":"0de63da3692fe457543ca1634e4a609b8d27e806bdae1036e0c89c6c49b378f5",
    "homepage":"https:\/\/oss.redislabs.com\/redistimeseries\/",
    "command_line_args":"",
    "uid":"f3b681f2c740cf9af3bffd5eef302166"
  }

For more information about Redis Enterprise Modules for VMware Tanzu, see the Redis Enterprise Module documentation.