# Instalação do Agente Priax
# Funções dos diferentes agentes
Os agentes do Priax são responsáveis por um conjunto diferente de funções onde cada uma delas serve a um proposito diferente. A definição de quais pacotes devem ser instalados em cada ambiente é uma definição do projeto alinhada ao licenciamento do produto.
O agente PCM é o agente responsável pelo monitoramento de configurações. Para versões de sistema operacional Linux a coleta de sockets de comunicação é feita por este agente.
O agente PIA é o responsável pela coleta de sockets de comunicação e realização do inventario local do host onde está instalado.
O agente PPA é o responsável pelo monitoramento de capacidade/performance do Priax.
# Sistemas operacionais suportados por agente
Sistema Operacional
| PCM
| PIA
| PPA
| Versão Pacote
|
Sistemas operacionais Linux
|
RHEL 6
| X
| O
| X
| 6
|
RHEL 7
| X
| X
| X
| 7
|
RHEL 8
| X
| X
| X
| 7
|
RHEL 9
| X
| X
| X
| 7
|
Centos 6
| X
| O
| X
| 6
|
Centos 7
| X
| X
| X
| 7
|
Centos 8
| X
| X
| X
| 7
|
Oracle Linux 6
| X
| O
| X
| 6
|
Oracle Linux 7
| X
| X
| X
| 7
|
Oracle Linux 8
| X
| X
| X
| 7
|
Ubuntu 14
| X
| O
| X
| 6
|
Ubuntu 16
| X
| X
| X
| 7
|
Ubuntu 18
| X
| X
| X
| 7
|
Ubuntu 20
| X
| X
| X
| 7
|
Ubuntu 22
| X
| X
| X
| 7
|
Debian 7
| X
| O
| X
| 6
|
Debian 8
| X
| X
| X
| 7
|
Debian 9
| X
| X
| X
| 7
|
Debian 10
| X
| X
| X
| 7
|
Debian 11
| X
| X
| X
| 7
|
Debian 12
| X
| X
| X
| 7
|
Amazon Linux AMI
| X
| X
| X
| 7
|
Amazon Linux 2
| X
| X
| X
| 7
|
Suse 12
| X
| X
| X
| 7
|
Kali Linux 2019
| X
| X
| X
| 7
|
Kali Linux 2023
| X
| X
| X
| 7
|
Rocky Linux 8
| X
| X
| X
| 7
|
Rocky Linux 9
| X
| X
| X
| 7
|
Sistemas operacionais Windows
|
Windows Server 2008
| X
| X
| X
| Nda
|
Windows Server 2012
| X
| X
| X
| Nda
|
Windows Server 2016
| X
| X
| X
| Nda
|
Windows Server 2019
| X
| X
| X
| Nda
|
Windows Server 2022
| X
| X
| X
| Nda
|
Windows 7
| X
| X
| X
| Nda
|
Windows 8
| X
| X
| X
| Nda
|
Windows 10
| X
| X
| X
| Nda
|
Windows 11
| X
| X
| X
| Nda
|
1. Matriz de compatibilidade
Sistemas operacionais não incluídos na lista não tem suporte dos agentes e havendo necessidade entrar em contato com a equipe de suporte do Priax.
# Arquivos de instalação
Dependendo da versão do Sistema Operacional diferentes pacotes são utilizados para diferentes instalações.
## Windows
O pacote de instalação para sistemas operacionais Windows é um arquivo .msi que possui embutido no mesmo pacote todos os agentes.
Para sistemas operacionais Windows x86 não são mais suportados.
Para sistemas operacionais Windows x64 deve-se utilizar o pacote PriaxAgent.msi
## Sistemas operacionais Linux
Para instalação em sistemas operacionais Linux cada versão deve fazer uso de um pacote específico para cada agente onde a instalação do agente do PPA para Linux utiliza o pacote PPAClient, o agente do PCM utiliza o pacote PCMClient e o PIA utiliza o pacote PIAgent.
Considerando a versão do pacote descrita na tabela Matriz de compatibilidade o nome do pacote a ser utilizado é determinado por ela.
EXEMPLOS:
Para instalação do agente do PPA em um Ubuntu 14 deve-se utilizar o pacote PPAClient6 da mesma forma que em um Centos 6;
Para instalação do agente do PCM em um RHEL 8 utiliza-se o pacote PCMClient7 assim como em um Debian 9.
# Requisitos de instalação
Antes de iniciar a instalação é necessário garantir que o sistema operacional atenda um conjunto mínimo de requisitos para que a instalação e funcionamento dos agentes ocorra de forma esperada.
## Windows
Para sistemas operacionais Windows os requisitos para funcionamento do agente são:
Possuir privilégio administrativo para a instalação do agente se realizada de forma manual;
Ao menos versão 4.6.2 do .Net Framework;
Ao menos versão 3.0 do Powershell;
## Sistemas operacionais Linux
Para instalação em sistemas operacionais Linux os requisitos são:
Possuir acesso privilegiado ao host para instalação manual;
Quando instalando agentes de pacote 6 o host deve possuir ao menos a versão 1.10 da lib krb5 ou correspondente do sistema operacional;
Pacote “tar” instalado pois o pacote de instalação é compactado usando tar;
Sudo instalado.
# Fluxos de comunicação dos agentes
De forma geral o agente quando instalado, precisa se comunicar com a API do servidor de gerência do agente e com o servidor de mensageria. Está comunicação é sempre partindo do agente para o servidor. Abaixo segue um exemplo de configuração possível mas vale lembrar que ela é especifica de cada ambiente.
Neste exemplo a API onde os agentes conectam esta configurada para utilizar o protocolo HTTP na porta 9090.
Agente
| Origem
| Destino
| Porta TCP
|
PPA
| Agente
| Servidor
| 9090
|
5672
|
PCM
| Agente
| Servidor
| 9090
|
PIA
| Agente
| Servidor
| 9090
|

Para que o agente funcione, quando utilizando nomes de host é necessário que o nome seja possível de ser resolvido para IP.
# Processo de instalação
## Windows
Para instalação em sistemas operacionais Windows, após garantir que o host possua os requisitos, deve-se executar o arquivo MSI disponível para a versão do sistema operacional.
## Instalação de forma manual
Iniciando a instalação de forma manual executando o arquivo MSI dentro do host onde se deseja instalar o agente será exibida uma janela de boas-vindas. Clicar em Next para iniciar a instalação.

1. Welcome Priax Agente Setup
O próximo passo é a seleção do local onde deseja-se instalar o agente. O padrão é C:\\Program Files\\Priax Agent\\
Manter a seleção de instalação para todos usuários e clicar em Next para prosseguir.

2. Local de instalação
Na tela de configuração da API deve-se ter atenção para os valores cadastrados onde eles devem ser os nomes de host/endereços IP dos servidores da API. Após definir os valores clicar em Next para prosseguir.
Em Endereço deve-se definir o endereço http/https para comunicação com a API considerando a configuração do ambiente assim como a porta onde a API responde.
Em endereço do serviço de fila definir o endereço para a o servidor de mensageria considerando a configuração do ambiente.
Abaixo um EXEMPLO de configuração.

3. Priax API
Na próxima janela são selecionados quais os agentes serão instalados.
Selecionar os necessários e clicar em Next para prosseguir.
Vale lembrar que esta configuração depende de quais módulos do agente são utilizados onde a imagem abaixo é apenas um EXEMPLO.

4. Priax Agents
Será exibida uma tela informando que o agente está pronto para ser instalado, e clicando em Next a instalação será iniciada.

5. Confirmar instalação
Finalizada a instalação será exibida uma janela informando que a instalação ocorreu com sucesso.

6. Finalizada a instalação
## Instalação em linha de comando
O mesmo pacote MSI possibilita também a instalação via linha de comando com o objetivo de possibilitar o uso de soluções de distribuição de software ou instalação automatizada.
Para realizar a instalação via linha de comando os seguintes parâmetros devem ser passados para a execução do MSI.
URL = endereço da API;
RMQ = endereço do servidor de mensageria;
PPA = se deve ser instalado ou não agente do PPA. Deve ser 1 caso queira instalar e 0 em caso negativo;
PIA = se deve ser instalado ou não agente do PIA. Deve ser 1 caso queira instalar e 0 em caso negativo;
PCM = se deve ser instalado ou não o agente do PCM. Deve ser 1 caso queira instalar e 0 em caso negativo;
Path do arquivo MSI.
Sintaxe da execução via linha de comando
msiexec /quiet /i pathdoarquivomsi URL="enderecoAPI" PPA=0/1 PCM=0/1 PIA=0/1 RMQ="enderecoMensageria"
Exemplo de linha de comando lendo o arquivo MSI localizado em c:\\temp\\PriaxAgent.msi, instalando somente o PCM utilizando endereço da API [https://srvpriax.priax.io:9090](https://srvpriax.priax.io:9090) e servidor de mensageria srvpriax.priax.io:5672
msiexec /quiet /i c:\\temp\\PriaxAgent.msi URL="[https://srvpriax.priax.io:9090](https://srvpriax.priax.io:9090)" PPA=0 PCM=1 PIA=0 RMQ="srvpriax.priax.io:5672"
## Sistemas operacionais Linux
Em sistemas operacionais Linux durante o processo de instalação é criado um usuário local no host onde está sendo instalado o agente sendo este o usuário que roda a aplicação.
Abaixo usuários que são criados considerando cada pacote instalado.
Agente
| Usuário
|
PPA
| PriaxPPAClient
|
PCM
| PriaxPCMClient
|
PIA
| PriaxPIAgent
|
Para instalação em sistemas operacionais Linux basta copiar o arquivo de instalação para o host, tornar ele executável e executar.
Para tornar o arquivo executável executar chmod +x nomedoarquivo
EXEMPLO: # chmod +x /tmp/PriaxAgent/PPAClient7
Quando a instalação é iniciada será exibido o processo da validação de integridade do arquivo assim como da instalação.
\# /tmp/PPAClient7
Verifying archive integrity... 100% MD5 checksums are OK. All good.
Uncompressing Priax Agents Setup 100%
\#
## Instalação remota
Existe um processo que possibilita a instalação dos agentes em hosts de forma remota e em massa possibilitando assim uma rápida distribuição dos agentes em conjuntos de hosts.
Este processo foi criado a fim de possibilitar a instalação dos agentes do Priax em hosts que o Priax consegue gerenciar como alternativa a outras soluções de distribuição de software como o System Center, Ansible entre outros.
Este processo inicia-se no host do PPAServer, lê conjuntos de informações de acesso que já devem estar cadastradas no Priax e tenta conexão aos hosts para em primeiro lugar avaliar se é necessário ou não a instalação do agente no host e em caso positivo, valida os requisitos e instala se possível.
## Fluxos de comunicação para instalação remota
Considerando os fluxos de comunicação necessários para este processo poder ser executado, eles diferem dependendo do tipo de host onde se está tentando instalar o agente, mas são os mesmos utilizados para o Discover. Em ambos os casos a comunicação inicia-se no servidor onde o processo está rodando com destino onde o agente deve ser instalado.
Origem
| Destino
| Protocolos/Portas utilizadas
|
Servidor PPAServer
| Servidores/estacoes Windows
| WMI; Mais informações no link abaixo
|
Servidor PPAServer
| Servidores Linux
| SSH; TCP 22
|
Sendo hosts Windows, a comunicação toda é feira via WMI e a descrição do funcionamento do protocolo WMI em relação a rede esta descrita no link [https://learn.microsoft.com/en-us/windows/win32/wmisdk/connecting-to-wmi-on-a-remote-computer](https://learn.microsoft.com/en-us/windows/win32/wmisdk/connecting-to-wmi-on-a-remote-computer)
## Permissões necessárias para instalação remota
Em relação a hosts Windows, é necessário que o usuario utilizado seja ao menos membro do grupo local dos hosts Administrators ou Power Users;
Em relação a hosts Linux, o usuário não precisa ser “root” mas deve ter permissão de execução do pacote de instalação do agente de forma privilegiada.
Permissão esta pode ser concedida de diversas formas mas é importante saber que durante o processo em relação a hosts Linux não é possível interação de usuário com credenciais como acontece quando em sessão interativa (usando o putty por exemplo). Isto significa que as permissões requeridas para os processos rodarem devem ser possíveis sem que seja necessário digitar a senha novamente, de forma interativa.
Se o usuario utilizado é “root” a instalação acontece de forma direta e caso não seja, com uso do sudo.
Durante a execução do processo de instalação em host Linux, é criado no diretório /tmp o diretório PriaxAgent e os pacotes de instalação necessários copiados para este diretório. Ao final do processo eles são removidos.
Exemplo de configuração que pode ser aplicada é de ajustar a configuração do sudoers como o exemplo abaixo. Atenção ao usuario utilizado.
Cmnd\_Alias PRIAXPERMISSIONSAGENTINSTALL /tmp/PriaxAgent/PPAClient6, /tmp/PriaxAgent/PCMClient6, /tmp/PriaxAgent/PPAClient7, /tmp/PriaxAgent/PCMClient7, /tmp/PriaxAgent/PIAgent7
Defaults!PRIAXPERMISSIONSAGENTINSTALL !requiretty
usuarioUtilizadoParaConexao ALL=(ALL) NOPASSWD: PRIAXPERMISSIONSAGENTINSTALL