Pesquisa de site

Como instalar o servidor Redis em sistemas baseados em CentOS e Debian


Redis é um armazenamento de estrutura de dados na memória de código aberto, de alto desempenho e flexível (formato de valor-chave) – usado como banco de dados, cache e corretor de mensagens. Ele é escrito em ANSI C e é executado na maioria, senão em todos os sistemas operacionais do tipo Unix, incluindo Linux (recomendado para implantação) sem dependências externas.

É rico em recursos, suporta múltiplas linguagens de programação e estruturas de dados, incluindo strings, hashes, listas, conjuntos, conjuntos classificados com consultas de intervalo, bitmaps, entre outros.

Recursos do Redis:

  • Suporta a maioria das linguagens de programação, incluindo C, Bash, Python, PHP, Node.js, Perl, Ruby, apenas para mencionar algumas.
  • Possui replicação inerente, script Lua, remoção de LRU, transações, bem como níveis variados de persistência em disco.
  • Fornece alta disponibilidade por meio do Redis Sentinel e particionamento automático por meio do Redis Cluster.
  • Suporta a execução de operações atômicas.
  • Ele funciona com um conjunto de dados na memória para obter um desempenho notável.
  • Suporta replicação assíncrona mestre-escravo trivial de configurar.
  • Suporta failover automático.
  • Permite salvar o conjunto de dados em disco com pouca frequência durante um determinado período de tempo ou anexando cada comando a um log.
  • Permite desabilitar opcionalmente a persistência.
  • Suporta mensagens de publicação/assinatura.
  • Ele também suporta transações MULTI, EXEC, DISCARD e WATCH e muito mais.

Requisitos:

  1. Um servidor CentOS 7 e servidor RHEL 7 com instalação mínima
  2. Um servidor Ubuntu ou servidor Debian com instalação mínima
  3. Compilador GCC e libc

Neste tutorial, forneceremos instruções sobre como instalar um servidor Redis a partir da fonte (que é o método recomendado) no Linux. Também mostraremos como configurar, gerenciar e proteger o Redis. Como o Redis atende todos os dados da memória, sugerimos fortemente o uso de um servidor VPS com muita memória com este guia.

Etapa 1: instalar o servidor Redis da fonte

1. Primeiro, instale as dependências de compilação necessárias.

--------------- On CentOS / RHEL / Fedora --------------- 
yum groupinstall "Development Tools"
dnf groupinstall "Development Tools"

--------------- On Debian / Ubuntu --------------- 
sudo apt install build-essential

2. Em seguida, baixe e compile a versão estável mais recente do Redis usando o URL especial que sempre aponta para o Redis estável mais recente usando o comando wget.

wget -c http://download.redis.io/redis-stable.tar.gz
tar -xvzf redis-stable.tar.gz
cd redis-stable
make 
make test
sudo make install

3. Após a compilação do Redis, o diretório src dentro da distribuição do Redis é preenchido com os diferentes executáveis a seguir que fazem parte do Redis:

  • servidor redis – servidor redis.
  • redis-sentinel – executável redis sentinela (monitoramento e failover).
  • redis-cli – um utilitário CLI para interagir com redis.
  • redis-benchmark – usado para verificar o desempenho do redis.
  • redis-check-aof e redis-check-dump – úteis no caso raro de arquivos de dados corrompidos.

Etapa 2: configurar o servidor Redis no Linux

4. Em seguida, você precisa configurar o Redis para um ambiente de desenvolvimento a ser gerenciado pelo sistema init (systemd para o propósito deste tutorial) . Comece criando os diretórios necessários para armazenar os arquivos de configuração do Redis e seus dados:

sudo mkdir /etc/redis
sudo mkdir -p /var/redis/

4. Em seguida, copie o modelo de arquivo de configuração do Redis fornecido para o diretório que você criou acima.

sudo cp redis.conf /etc/redis/

5. Agora abra o arquivo de configuração e atualize algumas configurações como segue.

sudo vi /etc/redis/redis.conf

6. Em seguida, pesquise as opções a seguir e altere (ou use) seus valores padrão de acordo com as necessidades do seu ambiente local.

port  6379				#default port is already 6379. 
daemonize yes				#run as a daemon
supervised systemd			#signal systemd
pidfile /var/run/redis.pid 		#specify pid file
loglevel notice				#server verbosity level
logfile /var/log/redis.log		#log file name
dir  /var/redis/			#redis directory

Etapa 3: Criar arquivo de unidade Redis Systemd

7. Agora você precisa criar um arquivo de unidade systemd para redis para controlar o daemon, executando o seguinte comando.

sudo vi /etc/systemd/system/redis.service

E adicione a configuração abaixo:

[Unit]
Description=Redis In-Memory Data Store
After=network.target

[Service]
User=root
Group=root
ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf
ExecStop=/usr/local/bin/redis-cli shutdown
Restart=always
Type=forking

[Install]
WantedBy=multi-user.target

Salve e feche o arquivo.

Etapa 4: gerenciar e testar o servidor Redis no Linux

8. Depois de realizar todas as configurações necessárias, agora você pode iniciar o servidor Redis, por enquanto, habilite-o para iniciar automaticamente na inicialização do sistema; em seguida, visualize seu status da seguinte maneira.

sudo systemctl start redis
sudo systemctl enable redis
sudo systemctl status redis

9. Em seguida, teste se toda a configuração do redis está funcionando bem. Para interagir com o servidor redis, use o comando redis-cli. Após conectar-se ao servidor, tente executar alguns comandos.

redis-cli
Test connection to server using ping command:
127.0.0.1:6379> ping
Use the echo command to echo a given string:
127.0.0.1:6379> echo "Tecmint is testing Redis"
You can also set a key value using the set command like this:
127.0.0.1:6379> set mykey "Tecmint is testing Redis"
Now view the value of mykey:
127.0.0.1:6379> get mykey

10. Em seguida, feche a conexão com o comando exit e reinicie o servidor redis. Depois, verifique se mykey ainda está armazenado no servidor conforme mostrado abaixo:

127.0.0.1:6379> exit
sudo systemctl restart redis
redis-cli
127.0.0.1:6379> get mykey

11. Para excluir uma chave, use o comando delete da seguinte forma:

127.0.0.1:6379> del mykey
127.0.0.1:6379> get mykey

Etapa 5: Protegendo o Servidor Redis no Linux

12. Esta seção é destinada a usuários que pretendem usar um servidor redis conectado a uma rede externa como a Internet.

Importante: expor o redis à Internet sem qualquer segurança torna sua exploração extremamente fácil; portanto, proteja o servidor redis da seguinte maneira:

  • bloquear conexões com a porta redis no sistema com firewall
  • definir diretiva de ligação para interface de loopback: 127.0.0.1
  • defina a opção requirepass para que os clientes sejam obrigados a autenticar usando o comando AUTH.
  • configure o túnel SSL para criptografar o tráfego entre servidores Redis e clientes Redis.

Para obter mais informações de uso, execute o comando abaixo:

redis-cli -h

Você pode encontrar mais comandos de servidor e aprender como usar o redis em seu aplicativo na página inicial do Redis: https://redis.io/

Neste tutorial, mostramos como instalar, configurar, gerenciar e proteger o Redis no Linux. Para compartilhar quaisquer idéias, use o formulário de comentários abaixo.