sábado, 10 de maio de 2014

Monitorando servidores Microsoft SQL Server - It`s free! - Parte 02

Olá pessoal!

Dando continuidade a série de posts, iremos realizar algumas configurações em nossa VM Linux, não se esqueçam de consultar o post anterior (Monitorando servidores Microsoft SQL Server - It`s free! - Parte 01) para saber como configurá-la até aqui.

Iniciando os trabalhos, mostrarei como facilitar a administração dessa VM, pois caso estejam usando o Microsoft Hyper-V já devem ter percebido que o ato de copiar o texto na máquina real e colar na VM não é possível. Por isto farei uma pequena introdução a utilização do PuTTY.

O PuTTY é um cliente SSH para Windows totalmente gratuito, com ele podemos logar na VM do Linux e executar comandos como se estivéssemos na console local. Não é necessário instalação, é somente baixar e abrir o arquivo.


Nesta tela apenas coloque no campo "Host Name (or IP address)"  o valor root@[nome_da_sua_VM], pelo PuTTY eu já conecto como root para facilitar, mas novamente não recomendo fazer isso quando for logar na interface gráfica da VM. No campo "Saved Sessions" coloque um nome amigável para sua conexão e no menu "Category" selecione a opção "Colours".



O esquema de cores padrão do PuTTY é fundo preto com letras cinzas claras, o que é agradável (e nostálgico), porém usando o vim em arquivos que tem muitos comentários a leitura fica difícil pois os mesmos ficam em azul escuro, sendo assim eu ativo a opção "Use system colours" que arremete para o mesmo esquema de cores de dentro da VM, fundo branco, letras pretas, este ponto fica a critério de quem utilizará. Agora volte para a opção "Session" e pressione "Save". Com um clique duplo em cima do nome amigável escolhido na "Saved Sessions" sua conexão com a VM será aberta já requisitando a senha para o usuário root. Agora podemos copiar textos da máquina real e colar no PuTTY, que não é Ctrl+V e sim apenas o botão direito do mouse.

Terminada a configuração deste facilitador, iremos efetuar a instalação do SGBD que receberá o banco de dados do Zabbix, o MySQL. Como o MySQL é amplamente difundido e utilizado no mundo open source, podemos efetuar sua instalação utilizando o sistema de repositórios do Linux, o yum, já utilizado anteriormente. Para instalar o MySQL digite:

yum install mysql mysql-server

Serão efetuadas verificações e solicitadas confirmações para downloads de arquivos, no final, a tela deve ficar parecida com esta:


Com o MySQL instalado, deve-se configurá-lo para iniciar automaticamente juntamente com o sistema operacional, instalar os databases de sistema e iniciá-lo para que possamos efetuar o primeiro acesso, execute os seguintes comandos respectivamente:

chkconfig mysqld on
mysql_install_db
service mysqld start

Tela de referência:


Deve-se atribuir uma senha para para o user root dentro do MySQL, pois este é o user inicial com privilégios administrativos, feito este processo já é possível conectar com esta senha para um teste (novamente utilizarei a senha P@$$w0rd), execute os comandos abaixo, um de cada vez:

mysqladmin -u root password P@$$w0rd
mysql -u root -pP@$$w0rd
exit

Tela de referência:


SGBD configurado e apto para receber o banco de dados do Zabbix. Também é possível utilizar o yum para a instalação do Zabbix, mas primeiramente temos de adicionar o repositório dele à lista de repositórios de nossa VM, execute:

rpm -ivh http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-release-2.2-1.el6.noarch.rpm

Logo após execute a instalação propriamente dita do Zabbix, este comando já instalará o Zabbix para MySQL:

yum install zabbix-server-mysql zabbix-web-mysql

É necessário criar um user e um database para o Zabbix no MySQL, no meu caso esta instance de MySQL será apenas para o Zabbix, então criarei o user com privilégios elevados, execute os comandos abaixo, um de cada vez:

mysql -uroot -pP@$$w0rd
create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
exit

Tela de referência:


Database do Zabbix criado, porém sem nenhuma tabela, os scripts para criação de objetos se encontram na pasta de instalação do Zabbix, normalmente "/usr/share/doc/zabbix-server-mysql-2.2.3/create", lembrando que a parte "2.2.3" é dependente da versão que você instalou. Por hora, os comandos serão os abaixo, aonde o schema.SQL é o mais demorado:

cd /usr/share/doc/zabbix-server-mysql-2.2.3/create/
mysql -uroot -pP@$$w0rd zabbix < schema.sql
mysql -uroot -pP@$$w0rd zabbix < images.sql
mysql -uroot -pP@$$w0rd zabbix < data.sql

Tela de referência:


Parte de banco de dados finalizada. É necessário informar ao Zabbix os dados de conexão de seu banco, edite o arquivo de configuração do Zabbix com o seguinte comando:

vim /etc/zabbix/zabbix_server.conf

Neste arquivo edite os seguintes parâmetros com os seguintes valores:

DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix

Tela de referencia (este é um exemplo de arquivo com muitos comentários que fica desconfortável no fundo de tela preto):


Por ser uma aplicação global, devemos informar ao Zabbix em qual GMT ele irá operar, edite o arquivo de configuração com o seguinte comando:

vim /etc/httpd/conf.d/zabbix.conf

Se a linha de configuração "php_value date.timezone", estiver comentada, ou seja, com o caractere # no inicio da linha, apague-o e depois deixe-a como o exemplo abaixo:

php_value date.timezone America/Sao_Paulo

Todas as configurações de arquivos feitas, hora de verificar e iniciar os serviços:

/etc/init.d/zabbix-server status
/etc/init.d/httpd status
/etc/init.d/zabbix-server start
/etc/init.d/httpd start

Tela de referência:


Podemos verificar que tanto o serviço do Zabbix (zabbix-server) quanto o de sua interface web (httpd) não estavam iniciados e após os comandos de start os dois iniciaram com sucesso.

Para que a interface web se comunique com o serviço do Zabbix, precisamos liberar este acesso no SELinux. O SELinux, para quem está acostumado com o mundo Windows, é similar à Local Security Policy. Podemos apenas liberar esta comunicação com o comando abaixo:

setsebool -P httpd_can_network_connect=true

Ou então, edite o arquivo de configuração com o comando abaixo e desabilite o SELinux por completo:

vim /etc/sysconfig/selinux

Tela de referência:


É necessário liberar no firewall do Linux para que as máquinas da rede conectem na interface web, no meu caso irei simplesmente desativar os firewalls do Linux para IPv4 e IPv6:

/etc/init.d/iptables stop
/etc/init.d/ip6tables stop
chkconfig iptables off
chkconfig ip6tables off

Execute os comandos abaixo para também colocar os serviços do Zabbix com início automático:

chkconfig zabbix-server on
chkconfig httpd on

Tela de referência:


Finalmente podemos acessar a interface Zabbix, que no meu caso é http://c3po/zabbix.


No primeiro logon será apresentado um wizard para confirmação de algumas configurações, pressione "Next".


A interface web executará um checklist na configuração, estando tudo OK pressione "Next".


Preencha os dados de conexão do banco, similar ao preenchido anteriormente no arquivo de configuração do Zabbix, tendo um OK, pressione "Next".


No campo "Name", coloque o nome do servidor Zabbix e pressione "Next".


Apenas um sumário, pressione "Next".


Com tudo OK, pressione "Finish".


O primeiro acesso pode ser realizado com o usuário Admin, senha zabbix.


Caso não seja realizada a devida configuração do SELinux, esta mensagem será apresentada, caso ocorra, revise as configurações efetuadas anteriormente.


Caso toda configuração esteja OK, esta será a tela apresentada. O Zabbix está configurado e pronto para receber os performance counters de nosso Microsoft SQL Server.

Continua em Monitorando servidores Microsoft SQL Server - It`s free! - Parte 03.

Até logo e obrigado pelos peixes!



Nenhum comentário:

Postar um comentário