Histórico da Página
Aviso | ||
---|---|---|
| ||
As informações desta página são válidas para as atualizações 1.6.2 e inferiores. Mantenha sua plataforma atualizada! À partir da atualização Snowflake (1.6.3), o controle e sincronização do cache do fluig é realizado através do banco de dados que, além de já ter uma conexão direta com o fluig em casos de instalações simples, também é compartilhado entre todos os nós (cluster) em casos de balanceamento de carga e alta disponibilidade. Caso possua uma atualização 1.5.5 ou inferior do fluig acesse: Como configuro o fluig Cache com Redis? |
Índice
Índice | ||||||||
---|---|---|---|---|---|---|---|---|
|
Sobre o Redis
...
O Redis é um banco de dados NoSQL open - source do modelo chave-valor em memória, que possui licenciamento BSD e que pode ser utilizado como cache para o Fluigfluig. Ele possui funcionalidades extras , como a possibilidade de ser utilizado em cluster com fail-over.tolerância a falhas (failover).
Painel |
---|
Site oficial: http://redis.io © Redis, and the Redis logo are the trademarks of Salvatore Sanfilippo in the U.S. and other countries. |
Pré requisito
...
- Ter o Redis instalado na máquina ou realizar o download do instalador nos links abaixo conforme o sistema operacional da máquina.
Download do Redis
...
- O download do instalador do Redis para Linux
...
Download do instalador para Windows
https://github.com/MSOpenTech/redis/releases
- pode ser realizado neste link.
- O download do instalador do Redis para Windows pode ser realizado neste link.
Instalação do Redis em Modo Single-Server
...
O modo single-server significa que apenas um processo do Redis está no ar. Mesmo neste modo ele pode atender mais de um servidor fluig, porém será considerado um ponto de falha.
Instalação do Redis como
...
Serviço em Linux
...
...
Painel |
---|
Verifique também a documentação oficial. |
A forma sugerida O caminho sugerido de instalar o Redis em Linux é compilá-lo a partir de dos fontes como Redis não tem outros do que um , pois não há outras dependências além do compilador GCC trabalho e da biblioteca libc dependências. Instalá-lo usando o gerenciador de pacotes da sua distribuição Linux é um pouco desanimado como geralmente a versão disponível não é o mais recente.
Bloco de código | ||
---|---|---|
| ||
wget http://download.redis.io/redis-stable.tar.gz tar xvzf redis-stable.tar.gz cd redis-stable make make install |
A adequada instalação usando um script de init é fortemente sugerido. As instruções a seguir pode ser usado para executar uma instalação adequada usando o script de inicialização fornecido com o Redis 2.4 em uma distribuição baseada no Debian ou Ubuntu.
Vamos supor que você já copiou os executáveis redis-server e redis-cli os executáveis em em /usr/local/bin ou executou o comando make install.
Crie os seguintes diretórios:
Bloco de código | ||||
---|---|---|---|---|
| ||||
sudo mkdir /etc/redis sudo mkdir /var/redis |
Copie o script de inicialização que você vai encontrar na distribuição Redis sob o disponibilizado no diretório utils em para /etc/init.d. Sugerimos chamandorenomeá-o lo com o nome da porta onde você está executando esta instância do Redis.
Bloco de código | ||
---|---|---|
| ||
sudo cp utils/redis_init_script /etc/init.d/redis_6379 |
Edite o script de inicialização. Certifique-se de modificar o REDISPORT de acordo com a porta que você está usando. Tanto o caminho do arquivo pid e quanto o nome do arquivo de configuração dependem do número de da porta.
Bloco de código | ||
---|---|---|
| ||
sudo vi /etc/init.d/redis_6379 |
Copie o arquivo de configuração do modelo que você vai encontrar encontrado no diretório raiz da distribuição Redis em /etc/redis/ utilizando o número da porta como nome:
...
Crie um diretório dentro de /var/redis que funcionarão funcionará como os dados e diretório de trabalho para esta instância Redis:
Bloco de código | ||
---|---|---|
| ||
sudo mkdir /var/redis/6379 |
Edite o arquivo de configuração e
...
:
- Defina o pidfile para /var/run/redis_6379.pid (modificar a porta se necessário).
- Altere a porta em conformidade. No nosso exemplo , não é necessário que , pois a porta padrão já é 6379.
...
- Definir o dir para /var/redis/6379 (passo muito importante!)
Instalação do Redis como
...
Serviço em Windows
https://raw.githubusercontent.com/MSOpenTech/redis/2.8/Windows%20Service%20Documentation.md
...
Painel |
---|
Verifique também a documentação oficial. |
Execute o seguinte comando:
Bloco de código | ||
---|---|---|
| ||
redis-server.exe --service-install --service-name fluigcache redis.windows.conf |
Configurando o Redis para uso com o fluig
...
Memória
...
Procure no arquivo de configuração, o seguinte parâmetro:
maxmemorye parâmetro maxmemory e certifique-se de configurar para o tamanho máximo desejado, caso contrário, podem ocorrer problemas de falta de memória.ex:
Bloco de código | ||
---|---|---|
| ||
maxmemory 1g |
Nota |
---|
...
| ||
Se estiver sendo utilizada a versão 2.8 do |
...
Redis com o Windows, configure também o parâmetro |
...
maxheap |
...
. |
Desabilitação da persistência do Redis para uso com o Fluig:
Persistência
Para que o Redis não salve um snapshot da memória de tempos em temposperiodicamente, procure as linhas iniciadas com a palavra "save" no arquivo de configuração:
exemplo ...
Bloco de código | ||||
---|---|---|---|---|
|
...
save 900 1 |
...
save 300 10 |
...
save 60 10000 |
E altere ...e altere-as para:
Bloco de código | ||
---|---|---|
| ||
# save 900 1 |
...
# save 300 10 |
...
# save 60 10000 |
...
save "" |
...
Arquivo PID
...
Pra Para que o Redis grave um arquivo com o PID, sete o seguinte parâmetro:
daemonize yes
Configurando o Fluig para usar o Redis como cache:
Abra o arquivo standalone.xml e modifique a propriedade cacheServerAddress para "redis:<ip>".
Exemplo:
<simple name="java:global/wcm/cacheServerAddress" value="redis:127.0.0.1"/>
defina o seguinte parâmetro:
Bloco de código | ||
---|---|---|
| ||
daemonize yes |
Configurando o fluig para usar o Redis como Cache
...
A configuração do servidor Redis no fluig pode ser realizada das seguintes formas:
- Arquivo configuration.properties, localizado em [Instalação fluig]\repository\wcmdir\config. Deve ser alterada a propriedade cacheServerAddress para "redis:[endereço IP]:[porta]" e o serviço precisa ser reiniciado para que a mudança seja aplicada;
Bloco de código | ||
---|---|---|
| ||
wcm/cacheServerAddress=redis:127.0.0.1 |
- Configuração via wcmadmin, caso o fluig já esteja no ar, através do Painel de controle → aba WCM → Configurações do Sistema → aba Parâmetros da Plataforma.
Informações | ||
---|---|---|
| ||
Essa configuração também pode ser realizada durante a execução do instalador do fluig. |
Configurando o Redis em Ambientes de Alta Disponibilidade com Tolerância a Falhas
...
O Redis usa o modelo Master-Slave com um processo monitor chamado Sentinel. Os passos indicados anteriormente continuam valendo para cada nó do cluster Redis.
Master
O nó Master não necessita de nenhuma configuração adicional além das configurações dos passos anteriores.
Slaves
Adicione a seguinte configuração (redis.conf) em cada nó Slave:
Bloco de código |
---|
slaveof <IP_MASTER> <PORTA_MASTER> |
Exemplo:
Bloco de código | ||
---|---|---|
| ||
slaveof 127.0.0.1 6379 |
Sentinel
O Sentinel oferece um modelo simples e automático de alta disponibilidade (HA) para Redis usando a estratégia de eleição caso o Master venha a falhar. Inicialmente, tem-se uma replicação do Master para um número indeterminado de Slaves.
Um processo Sentinel deve ser adicionado em cada um dos servidores que terão uma ou mais instâncias do Redis para monitorar a execução dos processos e iniciar uma eleição para promover um Slave para Master caso o Master falhe.
Para isso:
- Crie um arquivo redis.sentinel.conf.
- Defina a propriedade daemonize para "yes".
- Defina a propriedade sentinel monitor com o nome do cluster Redis, informe o IP e porta do Master e o quórum de sentinelas. O quórum é o número mínimo de sentinelas que avaliam que o Master falhou para iniciar uma eleição. É importante usar o valor correto, pois um número inadequado vai impedir a eleição do novo Master.
Template:
Bloco de código | ||
---|---|---|
| ||
daemonize yes
sentinel monitor NOME_DO_CLUSTER IP_MASTER PORTA_MASTER QUORUM
sentinel down-after-milliseconds NOME_DO_CLUSTER 10000 |
Exemplo:
Bloco de código | ||
---|---|---|
| ||
daemonize yes
sentinel monitor fluigcache 127.0.0.1 6379 1
sentinel down-after-milliseconds fluigcache 10000 |
Nota | ||
---|---|---|
| ||
Durante uma execução em cluster, o Sentinel modifica os arquivos de configuração, portanto eles devem ter permissão de escrita. |
Instalando o Sentinel como serviço no Windows
...
O executável do Sentinel é o mesmo do servidor do Redis, exceto pelo parâmetro "--sentinel".
Bloco de código | ||
---|---|---|
| ||
redis-server.exe --service-install --service-name redissentinel redis.sentinel.conf --sentinel |
Executar o Redis Sentinel em Servidor Linux
...
A partir da versão 3 o redis-sentinel é instalado por padrão junto do Redis. Para executar o Sentinel:
Bloco de código |
---|
redis-sentinel /etc/redis/sentinel.conf |
Sendo que /etc/redis/sentinel.conf é o arquivo de configuração padrão.
Configurando o fluig para usar o Redis Cluster com Sentinel como cache
...
Nota | ||
---|---|---|
| ||
A configuração do Redis com o fluig foi depreciada a partir da versão 1.6.2 da plataforma. Caso possua uma atualização superior à essa acesse: Configurações da plataforma. Ou se possuir uma atualização inferior à essas acesse: Como posso ajustar as configurações da plataforma nas releases 1.5.13 e inferiores? |
Abra o arquivo configuration.properties, localizado em [Instalação fluig]\repository\wcmdir\config e modifique a propriedade cacheServerAddress, ou use a propriedade via API CACHE_SERVER_ADDRESS. O formato da configuração é "redisc:[nome_cluster]:[IP_Sentinel]:[Porta_Sentinel],[IP_Sentinel_2]:[Porta_Sentinel_2], etc.".
Bloco de código | ||
---|---|---|
| ||
wcm/cacheServerAddress=redisc:NOME_DO_CLUSTER:IP_SENTINEL:PORTAL_SENTINEL |
Exemplo:
Bloco de código | ||
---|---|---|
| ||
wcm/cacheServerAddress=redisc:fluigcache:127.0.0.1:26379 |
Também é possível realizar esta configuração via wcmadmin, caso o fluig já esteja no ar, através do Painel de controle → aba WCM → Configurações do Sistema → aba Parâmetros da Plataforma.
Informações | ||
---|---|---|
| ||
Essa configuração também pode ser realizada durante a execução do instalador do fluig. |
...