LaunchPad Environment
Before executing the lab, let’s first review the LaunchPad lab topology and the various components. The vCenter cluster consists of three ESXi hosts. You will use two of these hosts, connected via two different networks, for this lab. One network consists of the Nvidia Bluefield DPU, where NSX optimizes and accelerates the data path. The other network runs over a standard NIC.
The following diagram describes this lab topology:
On host 1, the Redis-Server VM is already created (you will rename the VM you created in lab 1). A Benchmark-Client VM will be created on host 2, and is used to generate traffic to the Redis-Server VM. You will use provided scripts throughout this lab to run the Redis-Server and Benchmark-Client tests.
Redis-Server VM scripts provided (located in /home/launchpad/Scripts/):
- startRedis.sh
Starts one Redis server listening on port 5000.
- stopRedis.sh
Stops Redis server listening on port 5000.
- checkVmxDriverVersion.sh
Shows the version of the vmxnet3 driver currently loaded on the VM.
- mkUPT.sh
Loads the vmxnet3 driver version that supports UPT.
- rmUPT.sh
Removes the vmxnet3 driver version that supports UPT.
Benchmark-Client VM scripts provided (located in /home/launchpad/Scripts/):
- runPerfTest-UPT.sh
Calls runPerfTest.sh using the UPT-enabled vNIC interface.
- runPerfTest-STD.sh
Calls runPerfTest.sh using the standard vNIC interface.
- perfTest.sh
Runs the memtier_benchmark tool with parameters already configured and collects results into /home/launchpad/Results/.
- checkVmxDriverVersion.sh
Shows the version of the vmxnet3 driver currently loaded on the VM.
- mkUPT.sh
Loads the vmxnet3 driver version that supports UPT.
- rmUPT.sh
Removes the vmxnet3 driver version that supports UPT.
Redis, which stands for Remote Dictionary Server, is a fast, open source, in-memory, key-value data store. Redis is now used as a database, cache, message broker, and queue.
Redis delivers sub-millisecond response times, enabling millions of requests per second for real-time applications in industries like gaming, ad-tech, financial services, healthcare, and IoT. Today, Redis is one of the most popular open-source engines. Because of its fast performance, Redis is a popular choice for caching, session management, gaming, leaderboards, real-time analytics, geospatial, ride-hailing, chat/messaging, media streaming, and pub/sub apps.
For more information see https://redis.io/docs/about/.
memtier_benchmark is a command line utility developed by Redis Labs for load generation and benchmarking NoSQL key-value databases. It offers the following:
Support for both Redis and Memcache protocols (text and binary)
Multi-threaded multi-client execution
Multiple configuration options, including:
Read:Write ratio
Random and sequential key name pattern policies
Random or ranged key expiration
Redis cluster
TLS support
etc
For more information see https://redis.com/blog/memtier_benchmark-a-high-throughput-benchmarking-tool-for-redis-memcached/.