# 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

<div align="center" dir="ltr" id="bkmrk-sistema-operacional-"><table><colgroup><col width="176"></col><col width="49"></col><col width="41"></col><col width="45"></col><col width="57"></col></colgroup><tbody><tr><td>Sistema Operacional

</td><td>PCM

</td><td>PIA

</td><td>PPA

</td><td>Versão Pacote

</td></tr><tr><td colspan="5">Sistemas operacionais Linux

</td></tr><tr><td>RHEL 6

</td><td>X

</td><td>O

</td><td>X

</td><td>6

</td></tr><tr><td>RHEL 7

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>RHEL 8

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>RHEL 9

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Centos 6

</td><td>X

</td><td>O

</td><td>X

</td><td>6

</td></tr><tr><td>Centos 7

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Centos 8

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Oracle Linux 6

</td><td>X

</td><td>O

</td><td>X

</td><td>6

</td></tr><tr><td>Oracle Linux 7

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Oracle Linux 8

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Ubuntu 14

</td><td>X

</td><td>O

</td><td>X

</td><td>6

</td></tr><tr><td>Ubuntu 16

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Ubuntu 18

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Ubuntu 20

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Ubuntu 22

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Debian 7

</td><td>X

</td><td>O

</td><td>X

</td><td>6

</td></tr><tr><td>Debian 8

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Debian 9

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Debian 10

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Debian 11

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Debian 12

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Amazon Linux AMI

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Amazon Linux 2

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Suse 12

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Kali Linux 2019

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Kali Linux 2023

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Rocky Linux 8

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td>Rocky Linux 9

</td><td>X

</td><td>X

</td><td>X

</td><td>7

</td></tr><tr><td colspan="5">Sistemas operacionais Windows

</td></tr><tr><td>Windows Server 2008

</td><td>X

</td><td>X

</td><td>X

</td><td>Nda

</td></tr><tr><td>Windows Server 2012

</td><td>X

</td><td>X

</td><td>X

</td><td>Nda

</td></tr><tr><td>Windows Server 2016

</td><td>X

</td><td>X

</td><td>X

</td><td>Nda

</td></tr><tr><td>Windows Server 2019

</td><td>X

</td><td>X

</td><td>X

</td><td>Nda

</td></tr><tr><td>Windows Server 2022

</td><td>X

</td><td>X

</td><td>X

</td><td>Nda

</td></tr><tr><td>Windows 7

</td><td>X

</td><td>X

</td><td>X

</td><td>Nda

</td></tr><tr><td>Windows 8

</td><td>X

</td><td>X

</td><td>X

</td><td>Nda

</td></tr><tr><td>Windows 10

</td><td>X

</td><td>X

</td><td>X

</td><td>Nda

</td></tr><tr><td>Windows 11

</td><td>X

</td><td>X

</td><td>X

</td><td>Nda

</td></tr></tbody></table>

</div>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.

<div align="left" dir="ltr" id="bkmrk-agente-origem-destin"><table><colgroup><col width="159"></col><col width="159"></col><col width="160"></col><col width="145"></col></colgroup><tbody><tr><td>Agente

</td><td>Origem

</td><td>Destino

</td><td>Porta TCP

</td></tr><tr><td rowspan="2">PPA

</td><td rowspan="2">Agente

</td><td rowspan="2">Servidor

</td><td>9090

</td></tr><tr><td>5672

</td></tr><tr><td>PCM

</td><td>Agente

</td><td>Servidor

</td><td>9090

</td></tr><tr><td>PIA

</td><td>Agente

</td><td>Servidor

</td><td>9090

</td></tr></tbody></table>

</div>![Diagrama

Descrição gerada automaticamente](https://lh7-rt.googleusercontent.com/docsz/AD_4nXfFiz84FOmkRIf34u_PImDBMpujlPayEi-AomdDkkvV8DfZq_M8OrmgPe-AIe0rz224N-LdfluSgxuCsBtLzBDTFRRi9sTK_T7aAXByzegkdLC3yrxR6-MJ32F0LuhvSYXDVYX_ZjzQUKTprYZSew?key=udoTdPRISHA8BljlPTbTtpyS)

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.

![](https://lh7-rt.googleusercontent.com/docsz/AD_4nXcgXyKKns9QfXLaNEus2NgcZBCAdi3SQhd4Ve1KprPDdty7tWjbjbJ_ORumN9hbR6oDJFRsaJfPv8krSa5Wx6MG7_Gx6FZlDHB0ijNGPd0ZMxwPOlyhm-rcznKsDICCp7Uc4vkUY0_gbKNFOYKNtw?key=udoTdPRISHA8BljlPTbTtpyS)

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.

![](https://lh7-rt.googleusercontent.com/docsz/AD_4nXdPGf-GFvNVH990HiMiP3Fc0jIRh7-b9EGO4CfwMs9ETseJumHCsWcJD61li2KBDMMvt7gcRXmO-ANKQGjVwd5ebVGvmcD9oAdgaGVCbw43XtcoPf5nTcTENJqZocTFwv2_QN1GVbPLYMotsbU6YQ?key=udoTdPRISHA8BljlPTbTtpyS)

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.

![](https://lh7-rt.googleusercontent.com/docsz/AD_4nXeiOSi55FRrMGznEKw3aElh_UXyzOH6G6F1F_ZCJsRDZIqWqlIRHbCsPFH1mUJ9hioWC1rZSMO0nRp7HlY00sPN_0xD9M2yVw0WeHVVc8CMmk9BSPk-IrFuQgf-ydOjAfpZjCw1C7axkIdXX0XQWng?key=udoTdPRISHA8BljlPTbTtpyS)

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.

![](https://lh7-rt.googleusercontent.com/docsz/AD_4nXdmwD6knxyuJ7ApxOdoYyqSLaYh3tTzBgCiq6lhznEafCx4BcgxP8qM1ZRxn2yPe6mvycqF6tqyE7jAjNc9GQOsrLaw_7AxOT23bocDxpXYTY91Aql7ZZQf59pdubyFtdTnEaNvVW4PTaAL_no2xA?key=udoTdPRISHA8BljlPTbTtpyS)

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.

![](https://lh7-rt.googleusercontent.com/docsz/AD_4nXexPgdmbgcgrYeOcDN1cioPcm6DMpP7l3qADZ7xGgtZSxWwKV9Pi0Lvtu3bNsDF99Iag4SponzQ64ZWy3ik9fqtiUP_jqN-Dia2bc3vdzW8w-azFlrVhSlcGIlozSkmtetSdU1s2bQNXj4xqD5jm8w?key=udoTdPRISHA8BljlPTbTtpyS)

5. Confirmar instalação

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

![](https://lh7-rt.googleusercontent.com/docsz/AD_4nXftAcLtINPBGlxwQOxh6Dh2af5reEYsQqAffPwB3b7plhHqTS3UrSHM9WvLi1EIPFWLDEA9NJaH7cKXoAqq2lKtA6Jm9m2UwOwo7f3cyPz1mO2QvKqeS77Ie-KwFYBryDLb8pDwqXIx1rS7NrzZGhA?key=udoTdPRISHA8BljlPTbTtpyS)

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.

<div align="center" dir="ltr" id="bkmrk-agente-usu%C3%A1rio-ppa-p"><table><colgroup><col width="84"></col><col width="114"></col></colgroup><tbody><tr><td>Agente

</td><td>Usuário

</td></tr><tr><td>PPA

</td><td>PriaxPPAClient

</td></tr><tr><td>PCM

</td><td>PriaxPCMClient

</td></tr><tr><td>PIA

</td><td>PriaxPIAgent

</td></tr></tbody></table>

</div>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.

<div align="center" dir="ltr" id="bkmrk-origem-destino-proto"><table><colgroup><col width="138"></col><col width="170"></col><col width="250"></col></colgroup><tbody><tr><td>Origem

</td><td>Destino

</td><td>Protocolos/Portas utilizadas

</td></tr><tr><td>Servidor PPAServer

</td><td>Servidores/estacoes Windows

</td><td>WMI; Mais informações no link abaixo

</td></tr><tr><td>Servidor PPAServer

</td><td>Servidores Linux

</td><td>SSH; TCP 22

</td></tr></tbody></table>

</div>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