Ajout "info memory", déplacement et fusion section Configuration à chaud
This commit is contained in:
parent
3c61c0c552
commit
47db59663d
|
@ -70,11 +70,17 @@ maxmemory 104857600
|
|||
|
||||
**Note importante**: la valeur de `maxmemory` indique la quantité maximale de mémoire utilisable, au delà de laquelle Redis applique une [politique spécifique](#politique-sur-la-mémoire). Par défaut il s'agit de `noeviction`. Voir plus bas pour plus de détails.
|
||||
|
||||
La plupart des options sont reconfigurables en mode CLI via la commande `CONFIG SET`.
|
||||
Pour choisir la bonne valeur de `maxmemory`, on peut s'aider de la commande Redis `INFO MEMORY` (Redis < 4) ou `MEMORY STATS` (Redis >= 4).
|
||||
|
||||
|
||||
### Configuration à chaud
|
||||
|
||||
La plupart des options sont reconfigurables à chaud en mode CLI via la commande `CONFIG SET`.
|
||||
La liste des arguments peut être listée :
|
||||
|
||||
~~~
|
||||
redis> CONFIG get *
|
||||
# redis-cli
|
||||
redis> CONFIG GET *
|
||||
1) "dir"
|
||||
2) "/var/lib/redis"
|
||||
3) "dbfilename"
|
||||
|
@ -87,6 +93,20 @@ redis> CONFIG get *
|
|||
10) "0"
|
||||
~~~
|
||||
|
||||
Par exemple, pour passer le paramètre `maxmemory` à 1G :
|
||||
|
||||
~~~
|
||||
# redis-cli
|
||||
redis> AUTH <PASSWORD>
|
||||
OK
|
||||
redis> CONFIG SET maxmemory 1024000000
|
||||
OK
|
||||
~~~
|
||||
|
||||
Attention : Si on veut que la configuration soit persistante, il faut également mettre à jour le paramètre dans `/etc/redis/redis.conf`.
|
||||
|
||||
|
||||
|
||||
### bind
|
||||
|
||||
Pour écouter sur plusieurs interfaces :
|
||||
|
@ -97,9 +117,10 @@ bind 192.0.32.42 127.0.0.1
|
|||
|
||||
**Attention** : si on fait un `bind` sur plusieurs IP, il faut que la première de la liste soit l'IP publique du serveur. Par exemple : `bind 192.0.32.42 127.0.0.1`
|
||||
|
||||
### Utilisation mémoire / Réglage Kernel
|
||||
|
||||
Il est recommendé, surtout pours les grosses instances redis d'activer l'overcommit au niveau du Kernel Linux. Si ce n'est pas le cas, ça peut empêcher Redis de faire ses sauvegardes.
|
||||
### Réglage du noyau
|
||||
|
||||
Il est recommandé, surtout pour les grosses instances redis d'activer l'overcommit au niveau du Kernel Linux. Si ce n'est pas le cas, ça peut empêcher Redis de faire ses sauvegardes.
|
||||
|
||||
~~~
|
||||
# cat /etc/sysctl.d/evolinux-redis.conf
|
||||
|
@ -109,9 +130,10 @@ vm.overcommit_memory=1
|
|||
# sysctl vm.overcommit_memory=1
|
||||
~~~
|
||||
|
||||
|
||||
### Politique sur la mémoire
|
||||
|
||||
Lorsqu'on définit une limite de mémoire disponible pour Redis (paramètre `maxmemory`, fixé à 100 Mo par défaut dans nos installations), il faut indiquer à Redis quoi faire lorsque celle-ci est épuisée (paramètre `maxmemory-policy`). Il y a plusieurs options, les plus courantes sont :
|
||||
Lorsqu'on définit une limite de mémoire disponible pour Redis (paramètre `maxmemory`, en octets, fixé à 100 Mo par défaut dans nos installations), il faut indiquer à Redis quoi faire lorsque celle-ci est épuisée (paramètre `maxmemory-policy`). Il y a plusieurs options, les plus courantes sont :
|
||||
|
||||
* `noeviction` (par défaut) : Redis ne supprime jamais de clé existante et provoque des erreurs d'écriture.
|
||||
* `allkeys-lru` : Redis supprime les clés selon l'algorythme LRU (_least recently used_ ; moins récemment utilisé).
|
||||
|
@ -121,21 +143,6 @@ Lorsque Redis est utilisé exclusivement pour du cache, il est conseillé de cho
|
|||
Lorsque les données stockées dans Redis ne doivent surtout pas risquer de disparaître, il faut choisir `noeviction` et gérer les éventuelles erreurs d'écriture.
|
||||
|
||||
|
||||
### Configuration à chaud
|
||||
|
||||
Il est pssible de configurer les paramètres de Redis à chaud. Par exemple, pour passer le paramètre `maxmemory` à 1G :
|
||||
|
||||
~~~
|
||||
# redis-cli
|
||||
> AUTH <PASSWORD>
|
||||
OK
|
||||
> CONFIG SET maxmemory 1024000000
|
||||
OK
|
||||
~~~
|
||||
|
||||
Attention : Si on veut que la configuration soit persistante, il faut également mettre à jour le paramètre dans `/etc/redis/redis.conf`.
|
||||
|
||||
|
||||
## Utilisation
|
||||
|
||||
En mode CLI :
|
||||
|
|
Loading…
Reference in a new issue