Redis
Beginning with opsi 4.2, the opsi server depends on a running Redis server, typically operating on port 6379. Redis, short for Remote Dictionary Server, is an in-memory database characterized by a simple key-value data structure, also known as a Key Value Store. This makes it a non-relational database. Within the opsi environment, Redis’s primary role is to support communication among multiple worker processes on a system.
Should you choose the opsi-server-full package during server installation (as detailed in the chapter Installation and Setup), both the Redis server and the RedisTimeSeries module will be automatically installed and configured on the opsi server. However, if you plan to deploy Redis on a separate server, you might want to opt for the opsi-server or opsi-server-expert packages, followed by installing the redis-server or redis-timeseries packages on the chosen server.
|
The opsiconfd
admin page offers access to Redis status information, enables the execution of Redis commands, and provides the option to clear the Redis cache. For additional information, please consult the section Redis Interface.
Configuration
The /etc/redis/redis.conf
file holds the Redis server configuration tailored by the opsi developers. This configuration includes the loading of the RedisTimeSeries module, among other features. Additionally, it specifies that Redis should operate as a background service, listening on port 6379 across all interfaces. The configuration also sets the log level to notice
and directs the log output to /var/log/redis/redis-server.log
.
Furthermore, the configuration file dictates that a database dump be created in the file named dump.rdb
, located in the /var/lib/redis
directory. For more information about this process, please refer to the section Backup of the Redis database.
Optimizing Performance
You can enhance the performance of Redis when used in conjunction with opsi. By default, opsiconfd
connects to the Redis server using TCP/IP on port 6379. However, if the Redis server and the opsi server are on the same system, you have the option to connect via a Unix socket. As per the Redis documentation, this method can yield a throughput approximately 50% higher than a TCP/IP connection.
To enable connection through the Unix socket, modify the unixsocket
setting in the /etc/redis/redis.conf
file. Furthermore, you need to update the redis-internal-url
parameter in the /etc/opsi/opsiconfd.conf
file to unix://<path-to-redis-server.sock>
.
It’s important to ensure that the opsiconfd user has the necessary access rights to the socket for a successful connection via the Unix socket. For more information on this, refer to the chapter Authorizations.
|