How to monitor MS DFSR Replication Queue with Zabbix

Olá, meu nome é Diego Luisi e no artigo de hoje demonstrarei como monitorar fila de replicação do DFS entre servidores windows usando o Zabbix.

Edite o arquivo zabbix_agentd.conf e insira as seguintes linhas

Timeout=30
UnsafeUserParameters=1
UserParameter=dfs_queue[*], “C:\Zabbix\dfs_queue.bat” $1,$2,$3,$4

Salve, saia e reinicie o serviço do zabbix_agent.

Agora crie um novo arquivo “c:\zabbix\dfs_queue.bat” e insira o seguinte conteúdo:

@echo off

 

@del C:\zabbix\lista.txt

 

@dfsrdiag backlog /rgname:%3 /rfname:%4 /sendingmember:%1 /receivingmember:%2 > C:\zabbix\lista.txt

 

@for /F “delims=” %%a in (‘findstr Membro C:\zabbix\lista.txt’) do set var=%%a

 

@set var1=%var:~67,75%

 

@IF “%var1%” EQU “~67,75” (
echo 0
)
@IF “%var1%” GTR “0” (
echo %var1%
)

 

 

Agora crie um arquivo chamado “Template_DFSR-QUEUE.xml” e cole o seguinte conteúdo:

 

<?xml version=”1.0″ encoding=”UTF-8″?>
<zabbix_export>
<version>2.0</version>
<date>2014-05-13T03:34:18Z</date>
<groups>
<group>
<name>Templates</name>
</group>
</groups>
<templates>
<template>
<template>Template_DFSR-QUEUE</template>
<name>Template_DFSR-QUEUE</name>
<groups>
<group>
<name>Templates</name>
</group>
</groups>
<applications>
<application>
<name>DSFR</name>
</application>
</applications>
<items>
<item>
<name>DFS Queue {$RECIVE} x {$SEND}</name>
<type>0</type>
<snmp_community/>
<multiplier>0</multiplier>
<snmp_oid/>
<key>dfs_queue[&quot;{$RECIVE}&quot;,&quot;{$SEND}&quot;,&quot;{$RFNAME}&quot;,&quot;{$RGNAME}&quot;]</key>
<delay>180</delay>
<history>90</history>
<trends>365</trends>
<status>0</status>
<value_type>3</value_type>
<allowed_hosts/>
<units/>
<delta>0</delta>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<formula>1</formula>
<delay_flex>50/1-7,00:00-24:00</delay_flex>
<params/>
<ipmi_sensor/>
<data_type>0</data_type>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<description/>
<inventory_link>0</inventory_link>
<applications>
<application>
<name>DSFR</name>
</application>
</applications>
<valuemap/>
</item>
<item>
<name>DFS Queue {$SEND} x {$RECIVE}</name>
<type>0</type>
<snmp_community/>
<multiplier>0</multiplier>
<snmp_oid/>
<key>dfs_queue[&quot;{$SEND}&quot;,&quot;{$RECIVE}&quot;,&quot;{$RFNAME}&quot;,&quot;{$RGNAME}&quot;]</key>
<delay>180</delay>
<history>90</history>
<trends>365</trends>
<status>0</status>
<value_type>3</value_type>
<allowed_hosts/>
<units/>
<delta>0</delta>
<snmpv3_contextname/>
<snmpv3_securityname/>
<snmpv3_securitylevel>0</snmpv3_securitylevel>
<snmpv3_authprotocol>0</snmpv3_authprotocol>
<snmpv3_authpassphrase/>
<snmpv3_privprotocol>0</snmpv3_privprotocol>
<snmpv3_privpassphrase/>
<formula>1</formula>
<delay_flex>50/1-7,00:00-24:00</delay_flex>
<params/>
<ipmi_sensor/>
<data_type>0</data_type>
<authtype>0</authtype>
<username/>
<password/>
<publickey/>
<privatekey/>
<port/>
<description/>
<inventory_link>0</inventory_link>
<applications>
<application>
<name>DSFR</name>
</application>
</applications>
<valuemap/>
</item>
</items>
<discovery_rules/>
<macros/>
<templates/>
<screens/>
</template>
</templates>
<triggers>
<trigger>
<expression>{Template_DFSR-QUEUE:dfs_queue[&quot;{$RECIVE}&quot;,&quot;{$SEND}&quot;,&quot;{$RFNAME}&quot;,&quot;{$RGNAME}&quot;].last()}&gt;100</expression>
<name>DFS Fila alta de {$RECIVE} para {$SEND} é {ITEM.LASTVALUE}</name>
<url/>
<status>0</status>
<priority>4</priority>
<description>Fila alta no DFSR</description>
<type>0</type>
<dependencies/>
</trigger>
<trigger>
<expression>{Template_DFSR-QUEUE:dfs_queue[&quot;{$SEND}&quot;,&quot;{$RECIVE}&quot;,&quot;{$RFNAME}&quot;,&quot;{$RGNAME}&quot;].last()}&gt;100</expression>
<name>DFS Fila alta de {$SEND} para {$RECIVE} é {ITEM.LASTVALUE}</name>
<url/>
<status>0</status>
<priority>4</priority>
<description>Fila alta no DFSR</description>
<type>0</type>
<dependencies/>
</trigger>
</triggers>
<graphs>
<graph>
<name>DFS Queue Monitor</name>
<width>900</width>
<height>200</height>
<yaxismin>0.0000</yaxismin>
<yaxismax>100.0000</yaxismax>
<show_work_period>1</show_work_period>
<show_triggers>1</show_triggers>
<type>0</type>
<show_legend>1</show_legend>
<show_3d>0</show_3d>
<percent_left>0.0000</percent_left>
<percent_right>0.0000</percent_right>
<ymin_type_1>0</ymin_type_1>
<ymax_type_1>0</ymax_type_1>
<ymin_item_1>0</ymin_item_1>
<ymax_item_1>0</ymax_item_1>
<graph_items>
<graph_item>
<sortorder>0</sortorder>
<drawtype>0</drawtype>
<color>C80000</color>
<yaxisside>0</yaxisside>
<calc_fnc>2</calc_fnc>
<type>0</type>
<item>
<host>Template_DFSR-QUEUE</host>
<key>dfs_queue[&quot;{$SEND}&quot;,&quot;{$RECIVE}&quot;,&quot;{$RFNAME}&quot;,&quot;{$RGNAME}&quot;]</key>
</item>
</graph_item>
<graph_item>
<sortorder>1</sortorder>
<drawtype>0</drawtype>
<color>00C800</color>
<yaxisside>0</yaxisside>
<calc_fnc>2</calc_fnc>
<type>0</type>
<item>
<host>Template_DFSR-QUEUE</host>
<key>dfs_queue[&quot;{$RECIVE}&quot;,&quot;{$SEND}&quot;,&quot;{$RFNAME}&quot;,&quot;{$RGNAME}&quot;]</key>
</item>
</graph_item>
</graph_items>
</graph>
</graphs>
</zabbix_export>

 

Importe esse template do zabbix e associe aos servidores que deseja monitorar.

Crie as seguintes macros:

Imagem

DFSR

 

 

How to Increase the size of a Linux LVM by expanding the virtual machine disk in the fly.

Olá, meu nome é Diego Luisi e no artigo de hoje demonstrarei como fazer extend dos discos no Linux in-the-fly usando VMware. Sem desligar a maquina, vá no VSphere:

1) Edit Settings…

2) Add

3) Hard Disk

4) Create a new virtual disk

5) SCSI

 Imagem

echo “- – – ” > /sys/class/scsi_host/host2/scan 

echo “- – – ” > /sys/class/scsi_host/host1/scan 

echo “- – – ” > /sys/class/scsi_host/host0/scan 

fdisk /dev/sdg

n

p

1

t

8e

w

vgdisplay 

vgextend mysql_Database /dev/sdg1

lvextend /dev/mapper/mysql_Database-lv_mysql /dev/sdg1 

resize2fs /dev/mapper/mysql_Database-lv_mysql

df -h

Pronto, espero que tenham gostado!