InfluxDB (https://influxdata.com/) é uma base de dados serial, muito utilizada para sistemas de sensores e monitoramamento.
Neste artigo mostraremos como instalar o InfluxDB e configura-lo para salvar as base de dados e informações em um segundo disco. Esta metodologia é comumente utilizada em servidores de produção onde tem-se os dados em um disco separado do sistema operacional.
Antes de mais nada vamos garantir que o nosso sistema esteja atualizado com os comandos abaixo
[sourcecode language="shell"]apt-get update;
apt-get upgrade;
[/sourcecode]
Instale as dependências necessárias
[sourcecode language="shell"]apt-get install libaio1 libaio-dev xfsprogs
[/sourcecode]
Utilizando o seu aplicativo de preferência, crie uma partição no disco secundário
Formate o disco com o comando abaixo, apenas trocando /dev/xpto1 para o nome real do seu disco
[sourcecode language="shell"]mkfs.xfs -f -d agcount=256 -l size=128m,lazy-count=1,version=2 -L influx_bases /dev/xpto1
[/sourcecode]
Localize o UUID da sua partição
[sourcecode language="shell"]ls -l /dev/disk/by-uuid
[/sourcecode]
Edite o arquivo /etc/fstab e adicione a linha abaixo, utilizando o UUID do seu disco, para que o seu disco seja montado na inicialização
[sourcecode language="shell"]UUID=d7d8c63c-7d10-42e0-958c-fdd5c11181ef /databases/influxdb/ xfs allocsize=256m,logbufs=8,noatime,nobarrier,nodiratime,attr2,logbsize=256k 0 0
[/sourcecode]
Crie os diretórios necessários
[sourcecode language="shell"]mkdir -p /databases/influxdb/
[/sourcecode]
Monte o sistema de arquivos
[sourcecode language="shell"]mount -a
[/sourcecode]
Faça download do instalador e realize instalação do InfluxDB
[sourcecode language="shell"]wget https://dl.influxdata.com/influxdb/releases/influxdb_0.9.6_amd64.deb
dpkg -i influxdb_0.9.6_amd64.deb
[/sourcecode]
Inicie o serviço
[sourcecode language="shell"]service influxdb start
[/sourcecode]
Crie uma base de dados para se certificar que toda a estrutura de diretório do influx seja criada
[sourcecode language="shell"]influx
CREATE DATABASE teste
exit
[/sourcecode]
Defina as permissões do diretório
[sourcecode language="shell"]chown -R influxdb:influxdb /databases/influxdb/
[/sourcecode]
Pare o serviço do InfluxDB e copie os arquivos/diretórios
[sourcecode language="shell"]service influxdb stop
rsync -av /var/lib/influxdb/* /databases/influxdb/
mv /var/lib/influxdb /var/lib/influxdb_old
[/sourcecode]
Edite o arquivo de configuração /etc/influxdb/influxdb.conf para utilizar a nova estrutura de diretórios
[sourcecode language="shell"]
[meta]
#dir = "/var/lib/influxdb/meta"
dir = "/databases/influxdb/meta"
[data]
#dir = "/var/lib/influxdb/data"
dir = "/databases/influxdb/data"
#wal-dir = "/var/lib/influxdb/wal"
wal-dir = "/databases/influxdb/wal"
[hinted-handoff]
#dir = "/var/lib/influxdb/hh"
dir = "/databases/influxdb/hh"
[/sourcecode]
Inicie o serviço e verifique se o mesmo está rodando
[sourcecode language="shell"]service influxdb stop
service influxdb status
[/sourcecode]
Exclua a base de teste criada durante o processo
[sourcecode language="shell"]influx
SHOW DATABASES
DROP DATABASE teste
SHOW DATABASES
exit
[/sourcecode]
Para maiores informações de como utilizar o InfluxDB favor consultar a referência oficial do fabricante:https://docs.influxdata.com/influxdb/v0.12/introduction/getting_started/