O Salt é necessário para executar a instalação do SaltStack Config. No mínimo, o Salt e suas dependências devem ser instalados nos nós que estão envolvidos em um cenário de instalação padrão do SaltStack Config.
É recomendável instalar o Salt com antecedência em qualquer infraestrutura que você planeja gerenciar com o SaltStack Config. A instalação do Salt simplifica e agiliza o processo de atualização para versões futuras do Salt. Antes de iniciar a instalação do SaltStack Config, considere instalar o Salt na sua infraestrutura e, em seguida, monitorá-lo por um determinado período a fim de garantir que ele seja estável e esteja em execução conforme o esperado.
Consulte estes guias para garantir que o seu ambiente esteja seguindo as práticas recomendadas ao implementar o Salt na sua infraestrutura:
Para preparar suas máquinas para uma instalação padrão do SaltStack Config, você precisa fazer a instalação ou o upgrade do Salt e do Python. O Salt e o Python precisam estar presentes e atualizados em todos os nós envolvidos na instalação. A instalação falhará se o Salt e as dependências do instalador não estiverem instaladas em seus nós.
Instalar dependências do Salt
Essas dependências devem ser instaladas em todos os nós envolvidos na instalação. Em uma instalação padrão, você deve instalar estas dependências em todos os nós que hospedarão o mestre Salt, o RaaS, o banco de dados Redis e o banco de dados PostgreSQL:
- OpenSSL
- Pacotes adicionais para o Enterprise Linux (EPEL)
- Criptografia Python
- Biblioteca OpenSSL do Python
Para verificar se essas dependências estão presentes:
- No terminal, verifique se essas dependências estão instaladas em cada nó:
sudo yum list installed | grep openssl sudo yum list installed | grep epel-release sudo yum list installed | grep python36-cryptography sudo yum list installed | grep python36-pyOpenSSL
- Se as dependências não estiverem presentes, instale-as:
sudo yum install openssl sudo yum install epel-release -y sudo yum install python36-cryptography sudo yum install python36-pyOpenSSL
Cuidado:Certifique-se de instalar o pacote
python36-pyOpenSSL
. É necessário configurar o SSL após a instalação. Porém, essa etapa deve ser concluída antes da instalação.
Instalar o Salt no(s) mestre(es) Salt
Em uma instalação padrão, você precisa instalar o serviço do mestre Salt e o serviço de subordinados no host do mestre Salt.
firewall-cmd --permanent --zone=public --add-port=4505-4506/tcp
firewall-cmd --reload
- Instale o repositório e a chave do projeto Salt:
sudo yum install https://repo.saltstack.com/py3/redhat/salt-py3-repo-latest.el7.noarch.rpm
- Limpe o cache:
sudo yum clean expire-cache
- Instale o serviço do mestre Salt e o serviço de subordinados no nó do mestre Salt:
sudo yum install salt-master sudo yum install salt-minion
- Crie um arquivo
master.conf
no diretório/etc/salt/minion.d
. Nesse arquivo, defina o endereço IP do mestre Salt de forma que ele aponte para si mesmo:master: localhost
- Inicie o serviço do mestre Salt e o serviço de subordinados:
sudo systemctl start salt-master sudo systemctl enable salt-minion sudo systemctl start salt-minion
Use
service salt-minion restart
para reiniciar os subordinados, se necessário.
Instalar o Salt nos subordinados Salt
Após a instalação do Salt no mestre Salt, conforme descrito na seção anterior, a próxima etapa é instalar o serviço de subordinados (e não o serviço do mestre) nos três nós que se tornarão o RaaS, um banco de dados Redis e um banco de dados PostgreSQL.
Em seguida, você precisará configurar os subordinados para se comunicar com o mestre Salt. Para obter informações mais detalhadas sobre como instalar o serviço de subordinados, consulte Configuração de subordinados, na documentação do Salt.
Para instalar o serviço de subordinados:
- Instale apenas o serviço de subordinados executando o seguinte comando:
sudo yum install salt-minion
- Responda com
y
a todos os prompts para aceitar todas as alterações. - Configure cada subordinado para se comunicar com o mestre Salt criando um arquivo
master.conf
no diretório/etc/salt/minion.d
. Nesse arquivo, forneça o endereço IP do mestre Salt. Por exemplo:master: 192.0.2.1
- Inicie o serviço do subordinado:
sudo systemctl enable salt-minion sudo systemctl start salt-minion
Use
servicesalt-minionrestart
para reiniciar os subordinados, se necessário. - Repita as etapas anteriores para todos os nós restantes.
Aceitar as chaves de subordinados no(s) mestre(s)
Neste ponto, você instalou o serviço do mestre Salt e o serviço de subordinados e forneceu aos seus subordinados o endereço IP do mestre Salt. Agora, para que o mestre Salt envie comandos aos subordinados, a próxima etapa é aceitar as chaves de subordinados no mestre Salt.
Antes de continuar:
- Certifique-se de que o serviço do mestre Salt esteja ativado e iniciado.
- Certifique-se de que o subordinado esteja ativado e iniciado em todos os nós.
Para aceitar as chaves:
- No terminal do mestre Salt, liste todas as chaves que estão no mestre Salt:
salt-key -L
- Verifique se todos os IDs de subordinados estão listados em
Unacceptedkeys
.Se os IDs de subordinados aparecerem em
Acceptedkeys
, nenhuma ação adicional será necessária, pois esse é o objetivo final. - Aceite cada ID de subordinado usando o seguinte comando, substituindo <your-minion-id> pelo ID da sua rede:
salt-key -a <your-minion-ID>
A execução de
salt-key-A
aceita todas as chaves. - Responda com
y
a todos os prompts. - Execute o comando
salt-key-L
uma segunda vez para confirmar que todos os subordinados aparecem emAcceptedkeys
.
Instalando o Salt em um sistema isolado
A única exceção à recomendação geral de instalar o Salt com antecedência é quando você está instalando o SaltStack Config em um sistema isolado. Lembre-se de que existem desvantagens em instalar o Salt na sua infraestrutura em um sistema isolado.
O instalador do SaltStack Config pode instalar a versão estável mais recente do Salt à medida que ele é executado. No entanto, a versão do Salt que é instalada pelo instalador do SaltStack Config é chamada de pacote Salt Crystal. Esse pacote destina-se principalmente para uso em sistemas isolados, nos quais não é possível atualizar o Salt pela Internet. Por ser projetada para uso em sistemas isolados, a versão do Salt no pacote Salt Crystal não pode ser atualizada pela Internet e deve ser atualizada manualmente. Para obter informações sobre como atualizar o pacote Salt Crystal, consulte Atualizando o Salt Crystal.
A incapacidade de atualizar o Salt regularmente pela Internet pode se tornar um problema para a sua rede, a menos que esta seja isolada. Por esse motivo, é altamente recomendável instalar o Salt com antecedência em vez de usar o pacote Salt Crystal.