1. Introdução

Esse manual descreve a configuração dos componentes do lado do servidor da aplicação GBS SmartSense. O GBS SmartSense é uma aplicação desenvolvida para monitorar Clusters GBDS, permitindo ao usuário visualizar relatórios em tempo real sobre a saúde e o desempenho do ambiente.

O procedimento de configuração deve ser feito somente depois do passo de instalação. Para mais informações, consulte o Manual de Instalação do GBS Apps.

2. Configuração

Os passos de configuração são:

  1. Configure o Tomcat;
  2. Configure os Certificados;
  3. Gere a senha criptografada;
  4. Instale o Elastic Stack (ELK);
  5. Finalize as configurações no arquivo config.properties.

Todos os passos são descritos abaixo. Um exemplo do arquivo config.properties pode ser encontrado na seção Exemplo do Arquivo de Configuração.

Danger

Todas as linhas devem estar presentes no arquivo de configuração. Comentar ou deletar linhas pode causar comportamentos inesperados. Para informações adicionais, contate o Time de Suporte da Griaule.

2.1. Configuração do Tomcat

Edite o arquivo de configuração do Tomcat para configurar os certificados e a porta que a aplicação usará.

vi /var/lib/tomcats/smart-sense/conf/server.xml

Para mudar a porta, procure por Connector port=. Essa é a porta para operações backend.

2.2. Configuração de Certificados

Para habilitar autenticação SSL, procure por connector port= no arquivo /conf/server.xml.

Existem duas entradas. A comentada é a configuração para SSL. Remova os delimitadores de comentários <!-- e -->, então ajuste os seguintes parâmetros:

port="58194"
keystoreFile="/home/griaule/keystore"
keystorePass="password"
keyAlias="1"
clientAuth="true"
truststoreFile="/home/griaule/keystore"
truststorePass="password"

O parâmetro port deve ser a porta de rede desejada para a aplicação.

Mude o caminho do keystoreFile e o truststoreFile para os valores apropriados. Faça o mesmo para o keystorePass e o truststorePass.

O parâmetro clientAuth="true" irá requerer autenticação do servidor para o cliente e do cliente para o servidor. Isso significa que o cliente necessitará importar o certificado no navegador para poder acessar a aplicação.

Warning

Quando clientAuth é definida como true, o administrador do sistema deve fornecer o arquivo certificate.pfx para os usuários finais.

2.3. Criptografia da senha do Banco de Dados

No arquivo config.properties, o parâmetro jdbc.password é uma senha criptografada. Para gerar a senha criptografada, siga os seguintes passos:

  1. Vá para o seguinte diretório:

    cd /var/lib/tomcats/smart-sense/webapps/gbs-smart-sense-server/WEB-INF/lib
    
  2. Execute o comando:

    java -cp gbs-common-db-<versão>.jar com.griaule.commons.util.EncryptUtil <senhaDesejada>
    
  3. A senha criptografada aparecerá depois da mensagem: “Encrypted password is:”

Note

Guarde a senha criptografada. Ela será usada em configurações posteriores.

2.4. Arquivo de Configuração da Aplicação

Para configurar o arquivo, abra-o com:

vi /var/lib/tomcats/smart-sense/conf/config.properties

As mudanças mais importantes nesse arquivo são os parâmetros jdbc.url, jdbc.username, jdbc.password e gbds.url. Configure-os de acordo com seu ambiente.

O arquivo de configuração completo é mostrado na seção Exemplo do Arquivo de Configuração.

Note

Lembre-se de substituir a senha criptografada gerada na seção Criptografia da senha do Banco de Dados neste arquivo.

2.4.1. Configurações do SmartSense

O último passo é configurar o IP e a porta da aplicação que o usuário final irá acessar. Ele deve ser o mesmo IP e porta configurado na seção Configuração do Tomcat.

smart-sense.ip=<ip>
smart-sense.port=<port>
smart-sense.protocol=<protocol>

Important

Certifique-se de que os parâmetros de configuração smart-sense.ip, smart-sense.port e smart-sense.protocol estejam corretamente especificados no arquivo config.properties. Em diversos casos, o IP será o mesmo para diversas aplicações. Contudo, cada aplicação possuirá uma porta diferente e única.

2.4.2. Nós (opcional)

Opcionalmente, em vez de usar a interface gráfica do SmartSense, você pode configurar os nós que serão monitorados inserindo-os diretamente na tabela smartsense.hosts no banco de dados. Para fazer isso, execute o seguinte comando no banco de dados, substituindo os placeholders pelos valores corretos:

INSERT INTO smartsense.hosts (hostname,ip,port,active) VALUES ('<server_hostname>','<ip>','<smartsense agent port>',1);
COMMIT;

3. Instalando o Elastic Stack (ELK)

Siga para o Manual de Instalação do ELK para instruções detalhadas de como instalar e configurar o Elastic Stack.

4. Finalizando as Configurações

Após completar todos os passos de configuração, volte para o Manual de Instalação do GBS Apps - Seção de Configuração.

5. Exemplo do Arquivo de Configuração

Essa seção mostra um exemplo do arquivo config.properties.

# *********************************************************************
#
#         /$$$$$$  /$$      /$$  /$$$$$$  /$$$$$$$  /$$$$$$$$
#        /$$__  $$| $$$    /$$$ /$$__  $$| $$__  $$|__  $$__/
#       | $$  \__/| $$$$  /$$$$| $$  \ $$| $$  \ $$   | $$
#       |  $$$$$$ | $$ $$/$$ $$| $$$$$$$$| $$$$$$$/   | $$
#        \____  $$| $$  $$$| $$| $$__  $$| $$__  $$   | $$
#        /$$  \ $$| $$\  $ | $$| $$  | $$| $$  \ $$   | $$
#       |  $$$$$$/| $$ \/  | $$| $$  | $$| $$  | $$   | $$
#        \______/ |__/     |__/|__/  |__/|__/  |__/   |__/
#
#
#
#         /$$$$$$  /$$$$$$$$ /$$   /$$  /$$$$$$  /$$$$$$$$
#        /$$__  $$| $$_____/| $$$ | $$ /$$__  $$| $$_____/
#       | $$  \__/| $$      | $$$$| $$| $$  \__/| $$
#       |  $$$$$$ | $$$$$   | $$ $$ $$|  $$$$$$ | $$$$$
#        \____  $$| $$__/   | $$  $$$$ \____  $$| $$__/
#        /$$  \ $$| $$      | $$\  $$$ /$$  \ $$| $$
#       |  $$$$$$/| $$$$$$$$| $$ \  $$|  $$$$$$/| $$$$$$$$
#        \______/ |________/|__/  \__/ \______/ |________/
#
# *********************************************************************

# DATABASE (RDB)
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://<host-ip>:3306/smartsense?useSSL=false
jdbc.username=griaule
jdbc.password=CDrt8vbewA2YAubPNOLZkw==
jdbc.dialect=org.hibernate.dialect.MySQLDialect
jdbc.showSql=false

# GBDS CONNECTION
gbds.url=http://<host-ip>:8085
gbds.user=gbds.authenticate
gbds.key=Griaule.123
gbds.logLevel=INFO
gbds.timeout=300

# SMARTSENSE - GUI
smart-sense.ip=<host-ip>
smart-sense.port=8126
smart-sense.protocol=http
locale=en_us

# SMARTSENSE - CONFIGURATION

fingerprint.useSDK=true
useLatentExtrator.fingerprint=true
useLatentExtrator.palmprint=false
image.convert.useJnbis=true
server.standalone.port=8085

gbds.smartSenseUser=smart_sense_server
sync.logLevel=INFO
same.user.simultaneous.login=false
notification.delay=5

poolingLoadBalancing.time=60
poolingLoadBalancing.active=true
poolingLoadBalancing.last=

# SMARTSENSE - ELK CONFIGURATION

linkEnroll=
linkIdentify=
linkIdentifyLatent=
linkUpdate=
linkVerify=

consumerQueue.active=true