SaltStack - Gerente de Pacote de Sal
As fórmulas do Salt são empacotadas e distribuídas aos mestres do Salt usando o gerenciador de pacotes. Este conceito foi influenciado porRPM, Yum e Pacmansistemas de embalagem. Estado de sal, pilar, modelos de arquivo e outros arquivos são usados pela fórmula e, em seguida, empacotados em um único arquivo.
Depois que um pacote de fórmula é criado, ele é copiado para o Sistema de Repositório para ser usado para mestres do Salt. Antes de passar para o gerenciador de pacotes, vamos dar uma olhada em como instalar um pacote “nginx” usando o comando básico do Salt.
A seguinte sintaxe é usada para instalar um pacote “nginx”.
root@saltmaster:/home/vagrant# salt '*' pkg.install nginx
Aqui o pkg.install nginxcomando é usado para instalar um pacote. Após a execução, você verá a seguinte resposta.
Irá produzir o seguinte output -
minion2:
----------
httpd:
----------
new:
1
old:
httpd-cgi:
----------
new:
1
old:
libxslt1.1:
----------
new:
1.1.28-2build1
old:
nginx:
----------
new:
1.4.6-1ubuntu3.7
old:
nginx-common:
----------
new:
1.4.6-1ubuntu3.7
old:
nginx-core:
----------
new:
1.4.6-1ubuntu3.7
old:
minion1:
----------
httpd:
----------
new:
1
old:
httpd-cgi:
----------
new:
1
old:
libxslt1.1:
----------
new:
1.1.28-2build1
old:
nginx:
----------
new:
1.4.6-1ubuntu3.7
old:
nginx-common:
----------
new:
1.4.6-1ubuntu3.7
old:
nginx-core:
----------
new:
1.4.6-1ubuntu3.7
old:
Agora, você instalou um pacote. Para iniciar os serviços desse pacote, use o comando fornecido a seguir.
root@saltmaster:/home/vagrant# salt '*' service.start nginx
Depois de executar este comando, o resultado parece mostrado no bloco de código abaixo.
minion1:
True
minion2:
True
Portanto, instalamos e iniciamos os serviços para o pacote “nginx” usando o comando básico. Vamos agora discutir como construir e instalar pacotes no gerenciador de pacotes Salt.
Pacotes de construção
Os pacotes podem ser construídos em qualquer sistema onde você possa instalar o Salt. Existem três tipos de pacotes e são os seguintes.
- Formula
- Reactor
- Conf
Vamos agora entender como construir pacotes usando o Fomula Arquivo.
Arquivo de fórmula
A maioria dos arquivos do pacote estão localizados no diretório - / srv / spm / salt / por padrão, mas o arquivo pilar pode ser colocado no diretório - / srv / spm / pillar /. O arquivo de fórmula descreve o pacote.
Example
name: apache
os: RedHat
os_family: RedHat
version: 201607
release: 2
summary: Formula for installing Apache
description: Formula for installing Apache
Aqui,
Name- O nome do pacote. Aqui, o nome do pacote éapache.
os - É usado para saber quais sistemas operacionais podem suportar este pacote.
os_family - É usado para saber quais famílias de sistemas operacionais podem oferecer suporte a este pacote.
Version- A versão do pacote. Ele é especificado no formato AAAAMM.
Release - Este campo se refere principalmente ao lançamento de uma versão.
Summary - Descrição do pacote em linhas curtas.
Description - Uma descrição mais detalhada do pacote.
REATOR
Os arquivos do reator residem no /srv/spm/reactor/ diretório.
CONF
Os arquivos neste tipo de pacote são arquivos de configuração do Salt, que normalmente residem no /etc/salt/diretório. Arquivos de configuração para pacotes diferentes de Salt podem e devem ser tratados com um Salt State (usando um tipo de pacote de fórmula).
Vamos continuar com as etapas a seguir para construir um pacote.
Crie um arquivo FORMULA e coloque-o na raiz da pasta do pacote.
Monte os arquivos de fórmula em uma pasta no sistema de compilação.
Corre spm build. O pacote é construído e colocado na pasta / srv / spm_build. O seguinte comando é usado para construir um pacote.
spm build /path/to/salt-packages-source/formula
Agora, copie o .spm arquivo para uma pasta no sistema de repositório.
Você pode compartilhar o srv/spm_build pasta na rede ou copie os arquivos para o seu FTP ou servidor da Web.
Gere metadados de repo usando o seguinte comando.
spm create_repo /srv/spm_build
Instalando Pacotes
Esta seção explica sobre como instalar os pacotes do gerenciador de pacotes Salt.
Configurar Repositórios Remotos
Para configurar repositórios remotos, o Salt Master precisa saber onde o repositório está por meio de um processo de configuração.
Os arquivos estão no /etc/salt/spm.repos.d/spm.repo diretório.
Example
file_repository:
url: https://spm.example.com/
Aqui, o arquivo contém o nome do repositório e o link para o repositório. Você também pode usar http, https, ftp ou o caminho do arquivo. Para usar o caminho do arquivo, você pode acessá-lo usando a URL: file: /// srv / spm_build.
Atualizar Metadados
Depois que o repositório é configurado no Salt master, os metadados do repositório são baixados usando o comando abaixo.
spm update_repo
Atualizar raízes de arquivo
Os pacotes SPM estão localizados no diretório srv / spm / salt. Adicione o seguinte caminho às raízes do arquivo no Salt master,
file_roots:
base:
1. /srv/salt
2. /srv/spm/salt
Agora, reinicie o salt master.
Instale o pacote Apache
Para instalar o pacote apache, use o seguinte comando.
spm install apache
Você também pode instalar diretamente do arquivo SPM usando o comando abaixo.
spm local install /srv/spm/apache-201607-1.spm
Removendo um Pacote
Para remover um pacote, por exemplo - apache, use o seguinte comando,
spm remove apache
Observe que, se algum arquivo tiver sido modificado, ele não será removido.