Instalação Consul · 7 min read · Sep 10, 2025

Como Instalar o Servidor Consul no AlmaLinux 9

Consul é uma plataforma moderna para descoberta de serviços que permite registrar serviços via DNS e interface HTTP. Também oferece um recurso de malha de serviços que permite conexões seguras via TLS e fornece autorização entre serviços. Além disso, o Consul também fornece um Gateway de API para gerenciar o acesso a serviços e um armazenamento KV (Chave/Valor) para armazenar a configuração do serviço.

Neste guia, vamos orientá-lo na instalação do Cluster Consul com vários servidores no AlmaLinux 9 passo a passo.

Pré-requisitos

Para completar este guia, certifique-se de ter o seguinte:

  • Dois ou mais servidores AlmaLinux na mesma rede.
  • Um usuário não-root com privilégios de administrador.

Configurando o Sistema

Neste primeiro passo, você irá preparar seus servidores AlmaLinux para a instalação do Consul, que inclui:

  • Configurar o Firewalld para abrir portas.
  • Configurar o SELinux para o modo Permissivo.

Configurando o Firewalld

Antes de instalar pacotes, você deve abrir portas em seus servidores Consul. Como se trata de um sistema operacional baseado em RHEL, você usará o Firewalld para abrir portas.

Execute o comando abaixo para abrir as portas 8300, 8301, 8302, 8400, 8500 e 8600 em seus servidores AlmaLinux. Se for bem-sucedido, você deve obter uma saída como sucesso.

sudo firewall-cmd --permanent --zone=public --add-port={8300,8301,8302,8400,8500,8600}/tcp

Agora, recarregue o firewalld usando o comando abaixo para que as alterações tenham efeito.

sudo firewall-cmd --reload

Por fim, verifique suas regras do firewalld usando o seguinte comando. Certifique-se de que as portas 8300, 8301, 8302, 8400, 8500, 8600 estão disponíveis no seu firewalld.

sudo firewall-cmd --zone=public --list-all

configuração firewalld

Mudando o SELinux para Permissivo

Após configurar o firewalld, você irá mudar o modo padrão do SELinux para permissivo. Isso gerará logs de erro no SELinux sem bloquear a ação.

Execute o seguinte comando para mudar o modo do SELinux para permissivo.

sudo setenforce 0  
sudo sed -i 's/^SELINUX=.*/SELINUX=permissive/g' /etc/selinux/config

Em seguida, reinicie seus servidores para que as alterações tenham efeito.

sudo reboot

Agora que você configurou todos os seus servidores AlmaLinux, pode iniciar a instalação do Consul.

Instalando o Consul via DNF

Consul é uma plataforma de rede de serviços que suporta múltiplos sistemas operacionais. Além disso, o Consul fornece um repositório de pacotes para distribuições Linux, incluindo distribuições baseadas em RHEL. Neste passo, você irá instalar o Consul a partir do repositório do Consul via DNF.

Para começar, instale alguns pacotes básicos executando o seguinte comando. Digite y para prosseguir com a instalação.

sudo dnf install dnf-plugins-core nano

instalar pacotes básicos

Agora execute o comando DNF abaixo para adicionar o repositório do Consul aos seus servidores Alma Linux. Em seguida, verifique a lista de repositórios disponíveis em cada servidor.

sudo dnf config-manager --add-repo https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo  
sudo dnf repolist

A saída a seguir prova que você adicionou o repositório HashiCorp aos seus sistemas.

adicionar repositório hoshicorp

Em seguida, instale o Consul executando o seguinte comando. Digite y para prosseguir com a instalação do Consul.

sudo dnf install consul

instalar consul

Após finalizar a instalação, execute o seguinte comando para localizar o arquivo binário do consul e verificar sua versão.

which consul  
consul version

A saída abaixo confirma que o arquivo binário do Consul está disponível em /bin/consul, e a versão atual do Consul é 1.17.

Configurando o Consul

Neste ponto, você instalou o Consul em todos os seus servidores AlmaLinux. Vamos começar a configurar o cluster Consul com vários servidores sem mais delongas. Para ilustrar, usaremos três servidores AlmaLinux.

|  Hostname  |    IP Address   |  
| ---------  |  -------------- |  
|  consul1   |  192.168.10.41  |  
|  consul2   |  192.168.10.42  |  
|  consul3   |  192.168.10.43  |

Primeiro, pare o serviço consul em cada servidor executando o comando abaixo.

sudo systemctl stop consul

Vá para o servidor consul1 e execute o comando abaixo para gerar uma nova chave para o cluster Consul. Certifique-se de manter a chave gerada.

consul keygen

Em todos os seus servidores Consul, abra a configuração padrão do Consul /etc/consul.d/consul.hcl usando o seguinte comando do editor nano.

sudo nano /etc/consul.d/consul.hcl

Altere a configuração padrão com o seguinte e esteja ciente de alguns parâmetros abaixo:

  • server: True significa que o nó atuará como um servidor Consul.
  • advertise_addr: Altere isso para o respectivo endereço IP do servidor Consul.
  • bootstrap_expect: Quantos servidores seu cluster terá?
  • encrypt: Cada servidor deve ter a mesma chave.
  • retry_join: Insira os endereços IP do cluster Consul neste parâmetro.
# As opções de configuração completas podem ser encontradas em https://www.consul.io/docs/agent/config  
  
# datacenter  
datacenter = "kitty-dc1"  
  
# data_dir  
# Esta flag fornece um diretório de dados para o agente armazenar o estado.   
data_dir = "/opt/consul"  
  
# client_addr  
# O endereço ao qual o Consul irá vincular interfaces de cliente, incluindo o HTTP e DNS  
# servidores.  
client_addr = "0.0.0.0"  
  
# ui  
# Habilita o servidor web UI embutido e as rotas HTTP necessárias.  
ui_config{  
  enabled = true  
}  
  
# domínio padrão  
domain = "consul"  
  
# habilitar dns_config  
dns_config{  
  enable_truncate = true  
  only_passing = true  
}  
  
# servidor  
# Esta flag é usada para controlar se um agente está em modo servidor ou cliente. Quando fornecida,  
# um agente atuará como um servidor Consul. Cada cluster Consul deve ter pelo menos um  
# servidor e idealmente não mais que 5 por datacenter. Todos os servidores participam do algoritmo de consenso Raft  
# para garantir que as transações ocorram de maneira consistente e linearizável.  
# Transações modificam o estado do cluster, que é mantido em todos os nós do servidor para  
# garantir disponibilidade em caso de falha do nó. Nós de servidor também participam de um  
# pool de gossip WAN com nós de servidor em outros datacenters. Servidores atuam como gateways para  
# outros datacenters e encaminham tráfego conforme apropriado.  
server = true  
  
# Endereço de anúncio - se você quiser apontar clientes para um endereço diferente do bind ou LB.  
advertise_addr = "192.168.10.41"  
  
# bootstrap_expect  
# Esta flag fornece o número de servidores esperados no datacenter.  
bootstrap_expect=3  
  
# encrypt  
# Especifica a chave secreta a ser usada para criptografar o tráfego de rede do Consul.  
encrypt = "jFtV8jj4h1hnXGqTllWH+sOqLo/tw9xnnfDHcVxVnYg="  
  
# retry_join  
retry_join = ["192.168.10.41", "192.168.10.42", "192.168.10.43"]

Salve e saia do arquivo quando terminar.

Em seguida, execute o seguinte comando para verificar as configurações do Consul. Se você tiver a sintaxe correta, deve obter uma saída como ‘A configuração é válida‘.

sudo consul validate /etc/consul.d/

validar consul

Agora execute o comando abaixo para iniciar e habilitar o serviço consul.

sudo systemctl start consul  
sudo systemctl enable consul

Em seguida, verifique o consul usando o seguinte comando para garantir que o serviço esteja em execução.

sudo systemctl status consul

Na saída a seguir, você deve ver que o Consul está em execução no servidor consul1.

consul1 em execução

Na saída a seguir, você deve ver que o Consul está em execução no servidor consul2.

consul2 em execução

Na saída a seguir, você deve ver que o Consul está em execução no servidor consul3.

consul3 em execução

Interagindo com o Cluster Consul

Agora que você configurou o cluster Consul nos servidores AlmaLinux, pode verificar e interagir com o cluster Consul via linha de comando do consul.

Verificando o Cluster Consul

Execute o comando abaixo para verificar os servidores Consul disponíveis dentro do cluster.

consul members

Neste exemplo, o cluster Consul é composto por três servidores, consul1, consul2 e consul3.

Você também pode verificar a lista de pares no Cluster usando o comando abaixo.

consul operator raft list-peers

Abaixo você pode ver informações detalhadas sobre cada servidor Consul, incluindo o ID, estado, eleitor e versão do RaftProtocol.

Adicionando Armazenamento KV (Chave-Valor) ao Consul

Em seguida, execute o seguinte comando do consul para criar um novo banco de dados de chave-valor. Neste exemplo, você criará uma nova chave db_name com o valor testdb.

consul kv put consul/configuration/db_name testdb

Agora execute o comando abaixo para recuperar o valor de db_name.

consul kv get consul/configuration/db_name

Você deve obter o valor testdb como o seguinte:

adicionar kv consul

Interagindo com DNS no Consul

Dentro deste guia, você habilitou o DNS do Consul. Para verificar a configuração do DNS do Consul, utilize o comando dig abaixo.

dig @127.0.0.1 -p 8600 consul.service.consul

Neste exemplo, você configurou os servidores Consul dentro do cluster com o mesmo nome de domínio como consul. O seguinte confirma que o domínio consul.service.consul com registros A 192.168.10.41, 192.168.10.42, 192.168.10.43.

consul dns

Acessando a Interface Web do Consul (User Interface)

Por fim, abra seu navegador e visite o endereço IP do servidor Consul com a porta 8500, por exemplo: http://192.168.10.41:8500/ui/ para acessar o painel de administração web do Consul.

Abaixo você deve ver os servidores disponíveis no cluster Consul.

consul interface web

Agora, clique no menu Nós para obter informações detalhadas sobre cada servidor.

lista de nós

Em seguida, clique no menu Chave/Valor para obter a lista de KV disponíveis em seus servidores Consul.

verificar kv

Conclusão

Para concluir, você completou a instalação passo a passo do cluster Consul com três servidores AlmaLinux. Você habilitou a Interface Web do Consul e o DNS do Consul dentro do cluster. Por último, você também aprendeu alguns comandos básicos para interagir com clusters Consul, armazenamentos de chave-valor e DNS.

A partir daqui, você pode agora ativar os ACLs (Listas de Controle de Acesso) e implementar TLS para conexões entre servidores e clientes Consul.

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.