Trilha NoSQL
Infelizmente minha participação no TDC – SP não foi de muita satisfação para meu aprendizado com as ferramentas apresentadas, mas como já trabalhamos com um banco NoSQL, vou explicar a instalação e configuração do MongoDB e inclusive a configuração para réplica.
Instalação do MongoDB em um servidor Centos 7.
Para realizar a instalação do mongo primeiro crie um arquivo no diretório /etc/yum.repos.d/ com o nome de mongodb-org-3.0.repo com o seguinte comando:
sudo vi /etc/yum.repos.d/mongodb-org-3.0.repo
digite a senha de root.
Use o seguinte arquivo de repositório para especificar a última versão estável do MongoDB:
[mongodb-org-3.0] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.0/x86_64/ gpgcheck=0 enabled=1 Para utilizar a opção copiar e colar no terminal do vi pressione “i” para entrar no modo de inserção e então pressione as teclas Ctrl+Shift+v para colar o texto acima, em seguida aperte Esc para sair do modo de inserção e as Shift+”:” e “wq” para sair e salvar o arquivo.
Então vamos agora atualizar o repositório e instalar o MongoDB com o yum, execute:
sudo yum update & sudo yum install -y mongodb-org
Permita o acesso a porta 27017 (porta padrão do MongoDB) para o SELinux, para isso execute:
semanage port -a -t mongod_port_t -p tcp 27017
Caso ache necessário pode ser alterado as permissões do SELinux no arquivo de configuração do mesmo que se localiza no diretório /etc/selinux/config.
Altere:
SELINUX=enforcing
para:
SELINUX=permissive
ou
SELINUX=disabled.
Reinicio o sistema com o sudo reboot, e agora iremos configurar o servidor.
Edite o arquivo mongod.conf que se encontra no diretório /etc/ como o editor vi.
sudo vi /etc/mongod.conf
Obs.: para navegar nas linhas do vi utilize as letras do teclado:
“j” = para ir para baixo “k” = para ir para cima “l” = para ir para diretia “h” = para ir para esquerda.
pressione “i” para entrar no modo de edição e altere as seguintes linhas:
bind_ip=127.0.0.1
alterar para
bind_ip=0.0.0.0
e acrescente a seguinte linha:
replSet=rs1
OBS.: Na versão 3.0.7 insira assim:
replication:
oplogSizeMB: 10240 replSetName: "rs1"
Pronto agora e só sair e salvar com as opções:
Esc, Shift+”:” e “wq”
Feito isso iremos colocar o mongo para iniciar junto como o sistema, execute:
sudo chkconfig mongod on
e inicie o Mongo:
service mongod start.
Obs.: Agora iremos configurar o servidor como primario para replicar em outros servidores, para isso iremos repetir todos os passos até aqui em outros servidores e só iremos diferenciar com os passos seguintes no servidor primário definido por você, então executaremos:
mongod --replSet “rs1”
onde “rs1” foi definido la no /etc/mongod.conf, e definiremos esse mesmo em todos os servidores.
Iniciado o conjunto de réplicas no servidor primário execute:
sudo mongo
e
E já dentro do editor do MongoDB execute:
rs.initiate();
Verifique a configuração inicial do conjunto de réplicas. Use rs.conf () para exibir o objeto de configuração do conjunto de réplicas: rs.conf();
O objeto de configuração do conjunto de réplicas se assemelha ao seguinte:
{
"_id" : "rs1", "version" : 1, "members" : [ { "_id" : 1, "host" : "mongodb0.example.net:27017" } ]
} Vamos agora adicionar os membros do conjunto de réplicas com o comando:
rs.add(“192.168.0.1”); rs.add(“192.168.0.2”);
E para o arbitrario execute: rs.addArb("192.168.11.219");
Verifique o status do conjunto de réplicas. Use o comando: rs.status();
{ "info" : "run rs.initiate(...) if not yet done for the set", "ok" : 0, "errmsg" : "no replset config has been received", "code" : 94 } Pronto, já está tudo configurado. Execute: exit para sair do mongo.
Obs.: não esquecendo de realizar estes últimos passos somente no servidor primário.
Para finalizar vá em cada servidor que receberá a replica do primario e execute: mongo e rs.slaveOk();
Pronto.