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:
- Configure o Tomcat;
- Configure os Certificados;
- Gere a senha criptografada;
- Instale o Elastic Stack (ELK);
- 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:
Vá para o seguinte diretório:
cd /var/lib/tomcats/smart-sense/webapps/gbs-smart-sense-server/WEB-INF/lib
Execute o comando:
java -cp gbs-common-db-<versão>.jar com.griaule.commons.util.EncryptUtil <senhaDesejada>
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