Instalando SCADABR no Linux em VPS Ubuntu 16


#1

Boa tarde galera. Depois de muito apanhar para ter todas funcionalidades OK no Linux, resolvi fazer um passo a passo para compartilhar minha experiencia.
O Texto foi adaptado de outros posts aqui do grupo, adicionei alguns passos que fizeram a diferença na minha instalação.

Funciona no Ubuntu 16.04 xenial rodando em VPS Locaweb.

Faça Download do java 7.

baixe o repositorio jre-7u80-linux-x64.tar.gz

descompacte na pasta /usr/lib/jvm com tar - xvzf

faça
update-alternatives --install /usr/bin/java java /usr/lib/jvm/jre1.7.0_80/jre/bin/java 1100

*no final do comando acima é colocado prioridade 1100 para que o sistema deixe como auto-mode

update-alternatives --config java

escolha o java 7 ou que rode melhor com sistema

em /etc/enviroments adicionae a linha com JAVA_HOME. A Primeira linha ja estara escrita.:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/$
JAVA_HOME="/usr/lib/jvm/jre1.7.0_80"

em /etc/profile insira o seguinte logo apos os comentarios:

JAVA_HOME=/usr/lib/jvm/jre1.7.0_80; export JAVA_HOME
PATH=$PATH:$JAVA_HOME/bin
export PATH

CATALINA_HOME=/var/lib/tomcat7
TOMCAT_HOME=/var/lib/tomcat7
CLASSPATH=.
export CATALINA_HOME TOMCAT_HOME CLASSPATH

reboot

Atualize a lista do repositório.

sudo apt-get update

Instale o servidor mariadb. (Um servidor de banco de dados para mysql)

sudo apt-get install mariadb-server

Abra o banco de dados.

sudo mysql -p

Digite sua senha de administrador / root do seu servidor.

Crie um banco de dados sql para o ScadaBR.

create database scadabr;

Crie o nome de usuário e a senha do banco de dados ScadaBR.

CREATE USER ‘scadabr’ IDENTIFIED BY ‘scadabr’;

Dê direitos de administrador de nome de usuário ao banco de dados.

GRANT ALL PRIVILEGES ON scadabr. * TO scadabr;

Exit mariadb.

quit;

Instale o Tomcat7.

sudo apt-get install tomcat7

Instale Lib rxtx para java.

sudo apt-get install librxtx-java

Pare o serviço Tomcat7.

sudo service tomcat7 stop

Mude para a pasta Webapps no tomcat7.

cd /var/lib/tomcat7/webapps

**Configurar o tomcat7 para utilizar o JDK7:**pulo do gato!
nano /etc/default/tomcat7
Descomentar a linha JAVA_HOME e colocar o seguinte:
JAVA_HOME=/usr/lib/jvm/jre1.7.0_80

Baixe o arquivo ScadaBR.war da versão ScadaBR sourceforge current que estou usando para instalar é ScadaBR 1.1 para a pasta tomcat7 webapps.

Comece o tomcat7 para implantar o arquivo de guerra.

sudo service tomcat7 start

Pare tomcat7 para editar arquivos ScadaBR.

sudo service tomcat7 stop

Elimine o ficheiro ScadaBR.war

sudo rm /var/lib/tomcat7/webapps/ScadaBR.war

Crie uma pasta bin no tomcat7.

sudo mkdir /var/lib/tomcat7/bin

Altere o proprietário da pasta tomcat7 da raiz para o tomcat7.

sudo chown -R tomcat7.tomcat7 /var/lib/tomcat7/

Altere o usuário tomcat7 para o grupo de discagem.

sudo gpasswd -a tomcat7 dialout

Edite o arquivo env.properties para apontar para o banco de dados.

sudo nano /var/lib/tomcat7/webapps/ScadaBR/WEB-INF/classes/env.properties

Descomente a seção db.mysql removendo o # e adicionando o nome de usuário e a senha do banco de dados que criamos no início.

Mude isso

# db.type = mysql
# db.url = jdbc: mysql: // localhost / scadabr
# db.username = root
# db.password =
# db.pool.maxActive = 10
# db.pool.maxIdle = 10

Para isso

db.type = mysql
db.url = jdbc: mysql: // localhost / scadabr
db.username = scadabr
db.password = scadabr
db.pool.maxActive = 10
db.pool.maxIdle = 10

Comente o db.derby e convert.db adicionando # na frente.

deixe assim

.
.
.
db.type=mysql
#db.datasource=true
#db.datasourceName=java:comp/env/jdbc/scadabr
db.url=jdbc:mysql://localhost/scadabr
db.username=scadabr
db.password=scadabr
db.pool.maxActive=10
db.pool.maxIdle=10
#db.update.log.dir=logs
#db.upgrade.check=false
.
.
.

Salve o arquivo.
Ctrl + o, então pressione enter
Sair nano.
Ctrl + x

sudo nano /var/lib/tomcat7/webapps/ScadaBR/WEB-INF/classes/env.properties.mysql
deixe assim:

db.type=mysql
db.url=jdbc:mysql://localhost/scadabr
db.username=scadabr
db.password=scadabr
db.pool.maxActive=10
db.pool.maxIdle=10

#convert.db.type=
#convert.db.url=
#convert.db.username=
#convert.db.password=

api.authentication=disabled
api.username=admin
api.password=admin

#security.hashAlgorithm=NONE
grove.url=http://mango.serotoninsoftware.com/servlet

Comece tomcat7.

sudo service tomcat7 start

no seu navegador digite seu ip e porta 8080, o servidor tomcat7 está ativado. No meu caso, é em uma rede local, então eu usarei isso.

http: // seu ip local ou público aqui: 8080 / ScadaBR

Se você deixou o login padrão, você logará usando o administrador como nome de usuário e senha.

-----------------------------------------espero ter ajudado!------------------------


#2

Boa tarde,

Você poderia me ajudar com a instalação no Debian. Fiz todos os passos porém ao rodar a página localhost:8080/ScadaBR aparece o seguinte erro.

Not Found.

Não carrega scadabr. Por favor poderia me ajudar com algum script espeficífico, pois já tentei de várias formas e não obtive sucesso.

Agradecido.


#3

Oi Dimitre.

passei trabalho tambem pra instalar no Linux. Garanta primeiramente que o mysql está instalado e tambem o tomcat7

A Base “scadabr” também deve estar criada no mysql. Garanta isso e verifique se a DB foi populada.

em /var/lib/tomcat7/webapps/ScadaBr/WEB-INF/classes/env.properties deve adequar com usuário e senha iguais a criação do DB. Pois esse arquivo fica com valor default e ai não conecta no mysql

Não fiz um script que faça a instalção completa. Tem q ser no braço mesmo.

Ha, quando instala o java7 tem que fazer um “update-config --java” e selecionar o java 7.
nos arquivos default do tomcat7 deve ser apontado pro java 7 também.


#4

espero que tenha ajudado um pouco


#5

Bom dia Marcelo,

Vou tentar aqui novamente. Muito obrigado pelas dicas, logo inform o feedback.

Grato!


#6

Boa noite, Conseguiu instalar na VPS Dimitre??


#7

Olá Marcelo!

Consegui sim após várias tentativas rsrsrsrs… Segui o tutorial conforme passado.
Agora vou para a montagem do circuito. Pretendo fazer um supervisório de telemedida de tensão banco de baterias de 48 Vdc que ficam em armários de telcom com Arduino Uno, Ethernet Shield W5100, Sensor de Tensão 0-25Vdc.
Terei que montar um divisor de tensão devido a tensão do banco de bateria ser maior do que o sensor de tensão.
Você já ouviu falar no protocolo MQTT?
Quero te agradecer pelos esclarecimentos e dúvidas que você me tirou!


#8

Que beleza. Com um pouco de suor tudo se resolve… kkkkk.
Sim onde trabalho tem esses bancos também, trabalho com subestações de energia. Elas possuem bancos de 48dc pra Telecom e 125dc para equipamentos. São carentes de tecnologia mesmo.
Conheço sim o mqtt mas o ScadaBr ainda não tem suporte. Sugiro utilizar nodered e mosquitto pra integrar em mqtt. Se quiser enviar esses dados ao ScadaBr, fazer com publisher.
Abração