<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Arquivos graficos - Remontti</title>
	<atom:link href="https://blog.remontti.com.br/tag/graficos/feed" rel="self" type="application/rss+xml" />
	<link>https://blog.remontti.com.br/tag/graficos</link>
	<description>rudimar@remontti</description>
	<lastBuildDate>Tue, 14 Jan 2025 19:41:30 +0000</lastBuildDate>
	<language>pt-BR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://blog.remontti.com.br/wp-content/uploads/2024/09/icone-rr-80x80.png</url>
	<title>Arquivos graficos - Remontti</title>
	<link>https://blog.remontti.com.br/tag/graficos</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Instalação do Grafana 11&gt;  com integração com Zabbix &#8211; (Debian 11 Bullseye/12 Bookworm)</title>
		<link>https://blog.remontti.com.br/6370</link>
					<comments>https://blog.remontti.com.br/6370#comments</comments>
		
		<dc:creator><![CDATA[Rudimar Remontti]]></dc:creator>
		<pubDate>Wed, 14 Jun 2023 19:00:02 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Tutoriais]]></category>
		<category><![CDATA[administração]]></category>
		<category><![CDATA[Configuração]]></category>
		<category><![CDATA[dashboard]]></category>
		<category><![CDATA[Debian 11 Bullseye]]></category>
		<category><![CDATA[Debian 12 Bookworm]]></category>
		<category><![CDATA[ferramenta]]></category>
		<category><![CDATA[fontes de dados]]></category>
		<category><![CDATA[grafana]]></category>
		<category><![CDATA[graficos]]></category>
		<category><![CDATA[instalaçao]]></category>
		<category><![CDATA[instalação do Grafana]]></category>
		<category><![CDATA[integração]]></category>
		<category><![CDATA[integração com o Zabbix]]></category>
		<category><![CDATA[métricas]]></category>
		<category><![CDATA[monitoramento]]></category>
		<category><![CDATA[monitoramento de redes]]></category>
		<category><![CDATA[painéis]]></category>
		<category><![CDATA[software livre]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[tutorial Debian 11 Bullseye]]></category>
		<category><![CDATA[tutorial Debian 12 Bookworm]]></category>
		<category><![CDATA[tutorial Grafana]]></category>
		<category><![CDATA[tutorial passo a passo]]></category>
		<category><![CDATA[tutorial Zabbix.]]></category>
		<category><![CDATA[visualização de dados]]></category>
		<category><![CDATA[visualização de métricas]]></category>
		<category><![CDATA[zabbix]]></category>
		<guid isPermaLink="false">https://blog.remontti.com.br/?p=6370</guid>

					<description><![CDATA[<p>O Grafana é um software livre que permite a visualização de formato de dados métricos. Ele permite criar painéis e gráficos a partir de várias fontes, e neste tutorial vamos aprender a instala-lo e&#46;&#46;&#46;</p>
<p>O post <a href="https://blog.remontti.com.br/6370">Instalação do Grafana 11&gt;  com integração com Zabbix &#8211; (Debian 11 Bullseye/12 Bookworm)</a> apareceu primeiro em <a href="https://blog.remontti.com.br">Remontti</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><center><img fetchpriority="high" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2023/06/grafana_debian.jpg" alt="" width="720" height="340" class="alignnone size-full wp-image-7454" srcset="https://blog.remontti.com.br/wp-content/uploads/2023/06/grafana_debian.jpg 720w, https://blog.remontti.com.br/wp-content/uploads/2023/06/grafana_debian-300x142.jpg 300w, https://blog.remontti.com.br/wp-content/uploads/2023/06/grafana_debian-520x245.jpg 520w" sizes="(max-width: 720px) 100vw, 720px" /></center></p>
<p>O Grafana é um software livre que permite a visualização de formato de dados métricos. Ele permite criar painéis e gráficos a partir de várias fontes, e neste tutorial vamos aprender a instala-lo e integrar com o Zabbix.</p>
<h3>Requisitos:</h3>
<p>Debian<br />
<strong><a href="https://blog.remontti.com.br/7236" rel="noopener" target="_blank">Instalação Debian 12 Bookworm</a></strong><br />
<strong><a href="https://blog.remontti.com.br/5792" rel="noopener" target="_blank">Instalação Debian 11 Bullseye</a></strong><br />
Zabbix:<br />
<strong><a href="https://blog.remontti.com.br/7870" rel="noopener" target="_blank">Instalação do Zabbix 7 LTS + NGINX + PostgreSQL + Debian 12 Bookworm</a></strong><br />
<strong><a href="https://blog.remontti.com.br/7411" rel="noopener" target="_blank">Instalação do Zabbix 6 LTS + NGINX + PostgreSQL + Debian 12 Bookworm</a></strong><br />
<strong><a href="https://blog.remontti.com.br/6350" rel="noopener" target="_blank">Instalação do Zabbix 6 LTS + NGINX + PostgreSQL + Debian 11 Bullseye</a></strong></p>
<p>Vamos baixar a key do repositório e adiciona-lo </p>
<pre class="remontti-code"># apt install gnupg2 apt-transport-https software-properties-common wget
# wget -q -O - https://apt.grafana.com/gpg.key | \
 gpg --dearmor | tee /etc/apt/keyrings/grafana.gpg &gt; /dev/null
# echo &quot;deb [signed-by=/etc/apt/keyrings/grafana.gpg]\
 https://apt.grafana.com stable main&quot; &gt; /etc/apt/sources.list.d/grafana.list
</pre>
<p>Atualize o repositório e instale o grafana</p>
<pre class="remontti-code"># apt update; apt install grafana -y </pre>
<p>Já aconteu dos desenvolvedores remover do repositório o pacote grafana, nesse caso acesse:<br />
<a href="https://grafana.com/grafana/download?edition=oss" rel="noopener" target="_blank">https://grafana.com/grafana/download?edition=oss</a> e faça a instalação de forma manual.</p>
<h3>Proxy com Nginx grafana</h3>
<p>Se você esta usando como servidor web o Nginx para acessar o grafana através de um domínio faça: (se o seu for apache pule)</p>
<pre class="remontti-code"># vim /etc/nginx/sites-available/grafana.conf</pre>
<p>Adicione:</p>
<pre class="remontti-code">server {
    listen 80;
    listen [::]:80;

    server_name grafana.remontti.com.br;

    # Descomente para restringir o acesso apenas aos IPs Listados
    # allow 127.0.0.1;
    # allow ::1;
    # allow 192.168.0.0/16;
    # allow 2801:db8::/32;
    # deny  all;
    # error_page  403   http://www.remontti.com.br;
 
    location / {
        proxy_pass http://127.0.0.1:3000;  # Porta padrão do Grafana
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_read_timeout 90;

        # Suporte a WebSocket
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection &quot;upgrade&quot;;
        proxy_cache_bypass $http_upgrade;
    }
}</pre>
<p>Cria o link para sites-enabled em seguida verifique as configurações e reinicie o serviço.</p>
<pre class="remontti-code"># ln -s /etc/nginx/sites-available/grafana.conf /etc/nginx/sites-enabled/
# nginx -t
# systemctl restart nginx</pre>
<h3>Proxy com Apache grafana</h3>
<p>Se você esta usando como servidor web o Apache para acessar o grafana através de um domínio faça:</p>
<pre class="remontti-code"># a2enmod rewrite; a2enmod headers; a2enmod proxy ; a2enmod proxy_http ; 
mkdir /var/www/grafana
</pre>
<pre class="remontti-code"># vim /etc/apache2/sites-available/grafana.conf</pre>
<p>Adicione:</p>
<pre class="remontti-code">&lt;VirtualHost *:80&gt;
	Protocols h2 http/1.1
	ServerName grafana.remontti.com.br
	ServerAdmin noc@remontti.com.br
	DocumentRoot /var/www/grafana

	ErrorDocument 403 http://www.remontti.com.br

	&lt;Directory /var/www/grafana/&gt;
		Options Indexes FollowSymLinks
		AllowOverride all
		# Descomente para restringir o acesso apenas aos IPs Listados
		# Require ip 127.0.0.1 ::1 200.200.200.0/26 2001:db8:cafe::/48
	&lt;/Directory&gt;

	LogLevel warn

	ProxyPreserveHost On
	ProxyPass / http://127.0.0.1:3000/
	ProxyPassReverse / http://127.0.0.1:3000/

	ErrorLog ${APACHE_LOG_DIR}/grafana_error.log
	CustomLog ${APACHE_LOG_DIR}/grafana_access.log combined
	TransferLog ${APACHE_LOG_DIR}/grafana_access.log

&lt;/VirtualHost&gt;</pre>
<p>Ative a nova configuração e reinicie o Apache:</p>
<pre class="remontti-code"># a2ensite grafana
# systemctl restart apache2</pre>
<p>Vamos fazer alguns ajustes:</p>
<pre class="remontti-code"># vim /etc/grafana/grafana.ini</pre>
<p>Como utilizei um proxy irei executar o grafana apenas em modo localhost para que a porta 3000 fique aberta apenas para ele mesmo. Localize <strong>;http_addr = </strong> e deixe assim: </p>
<pre class="remontti-code">http_addr = 127.0.0.1</pre>
<p>Em <strong>;domain =</strong> ajuste para seu domínio.</p>
<pre class="remontti-code">domain = grafana.remontti.com.br</pre>
<p>E ajuste a <strong>;root_url = %(protocol)s://%(domain)s:%(http_port)s/</strong> para:</p>
<pre class="remontti-code">root_url = %(protocol)s://%(domain)s/</pre>
<p>Instale o <strong>Plugin Zabbix</strong></p>
<pre class="remontti-code"># grafana-cli plugins install alexanderzobnin-zabbix-app</pre>
<p>É recomendado que mensalmente você faça atualizações dos plugins instalados, com o comando:</p>
<pre class="remontti-code"># grafana-cli plugins update-all</pre>
<p>Depois da versão 11.1 existe um bug que acaba nao dando permissão para o usuário grafana ler/gravar em /var/lib/grafana/plugins, então corrija utilizando o comando: </p>
<pre class="remontti-code"># chown -R grafana: /var/lib/grafana/plugins</pre>
<p>Agora sim colocamos o Grafana para iniciar junto com a inicialização, ativamos e inicializamos o serviço:</p>
<pre class="remontti-code"># systemctl daemon-reload
# systemctl enable grafana-server
# systemctl start grafana-server</pre>
<p>Acesse em seu navegador seu <strong>&#8220;http://grafana._______.___.__&#8221;</strong> ou então <strong>http://IP_URL:3000</strong> ou pela porta que você alterou. O nome de usuário padrão é <strong>admin</strong> e a senha padrão é <strong>admin</strong>.</p>
<p>Se caso perder a senha de admin pode resetar ela com o comando:</p>
<pre class="remontti-code">grafana-cli admin reset-admin-password admin</pre>
<p><a href="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12.png" data-rel="lightbox-gallery-h1YVbJKj" data-rl_title="" data-rl_caption="" title=""><img decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12.png" alt="" width="1920" height="974" class="alignnone size-full wp-image-7430" srcset="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12.png 1920w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12-300x152.png 300w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12-1024x519.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12-768x390.png 768w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12-1536x779.png 1536w" sizes="(max-width: 1920px) 100vw, 1920px" /></a><br />
Ao fazer login pela primeira vez, você será solicitado a <strong>alterar sua senha</strong>.</p>
<h4>Integração com a base de dados Zabbix</h4>
<p>Acesse o Menu (1) Administration (2) Plugins(3) Localize o Zabbix e clique no mesmo.<br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_3.png" data-rel="lightbox-gallery-h1YVbJKj" data-rl_title="" data-rl_caption="" title=""><img decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_3.png" alt="" width="794" height="626" class="alignnone size-full wp-image-7433" srcset="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_3.png 794w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_3-300x237.png 300w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_3-768x606.png 768w" sizes="(max-width: 794px) 100vw, 794px" /></a></p>
<p>Escreva na pesquisa (1) Zabbix e em seguida clique sobre (2)<br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_4.png" data-rel="lightbox-gallery-h1YVbJKj" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_4.png" alt="" width="1064" height="607" class="alignnone size-full wp-image-7435" srcset="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_4.png 1064w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_4-300x171.png 300w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_4-1024x584.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_4-768x438.png 768w" sizes="auto, (max-width: 1064px) 100vw, 1064px" /></a></p>
<p>Clique em Enable (1)<br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_5.png" data-rel="lightbox-gallery-h1YVbJKj" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_5.png" alt="" width="1654" height="722" class="alignnone size-full wp-image-7436" srcset="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_5.png 1654w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_5-300x131.png 300w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_5-1024x447.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_5-768x335.png 768w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_5-1536x670.png 1536w" sizes="auto, (max-width: 1654px) 100vw, 1654px" /></a></p>
<p>Volte ao Menu (1) abra Connections (2) Clique em Data sources (3)<br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_6.png" data-rel="lightbox-gallery-h1YVbJKj" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_6.png" alt="" width="801" height="558" class="alignnone size-full wp-image-7437" srcset="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_6.png 801w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_6-300x209.png 300w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_6-768x535.png 768w" sizes="auto, (max-width: 801px) 100vw, 801px" /></a></p>
<p>Clique em Add data sourece<br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_7.png" data-rel="lightbox-gallery-h1YVbJKj" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_7.png" alt="" width="1659" height="573" class="alignnone size-full wp-image-7438" srcset="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_7.png 1659w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_7-300x104.png 300w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_7-1024x354.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_7-768x265.png 768w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_7-1536x531.png 1536w" sizes="auto, (max-width: 1659px) 100vw, 1659px" /></a></p>
<p>Escreve na busca (1) Zabbix e clique nele (2)<br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_8.png" data-rel="lightbox-gallery-h1YVbJKj" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_8.png" alt="" width="1648" height="432" class="alignnone size-full wp-image-7439" srcset="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_8.png 1648w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_8-300x79.png 300w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_8-1024x268.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_8-768x201.png 768w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_8-1536x403.png 1536w" sizes="auto, (max-width: 1648px) 100vw, 1648px" /></a></p>
<p>Agora em URL<strong> http://localhost/api_jsonrpc.php</strong> se você seguiu o tutorial do bloque para instalação do zabbix com domínio deve ter visto uma alias também para localhost, caso contrário informe os dados correto da URL do seu Zabbix.<br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_9.png" data-rel="lightbox-gallery-h1YVbJKj" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_9.png" alt="" width="1657" height="907" class="alignnone size-full wp-image-7440" srcset="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_9.png 1657w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_9-300x164.png 300w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_9-1024x561.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_9-768x420.png 768w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_9-1536x841.png 1536w" sizes="auto, (max-width: 1657px) 100vw, 1657px" /></a></p>
<p>Role mais um pouco e informe o usuário e senha do zabbix (eu gosto de criar um usuário só para isso)<br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_10.png" data-rel="lightbox-gallery-h1YVbJKj" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_10.png" alt="" width="1646" height="971" class="alignnone size-full wp-image-7441" srcset="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_10.png 1646w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_10-300x177.png 300w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_10-1024x604.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_10-768x453.png 768w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_10-1536x906.png 1536w" sizes="auto, (max-width: 1646px) 100vw, 1646px" /></a></p>
<p>Clique em Save &#038; test (1) Se tudo ocorrer bem você receberá uma mensagem de sucesso (2)<br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_11.png" data-rel="lightbox-gallery-h1YVbJKj" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_11.png" alt="" width="1367" height="524" class="alignnone size-full wp-image-7442" srcset="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_11.png 1367w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_11-300x115.png 300w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_11-1024x393.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_11-768x294.png 768w" sizes="auto, (max-width: 1367px) 100vw, 1367px" /></a></p>
<p>Volte ao Menu, Connections, Data source (1) e clique em Add new data source (2)<br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_12.png" data-rel="lightbox-gallery-h1YVbJKj" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_12.png" alt="" width="1668" height="591" class="alignnone size-full wp-image-7444" srcset="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_12.png 1668w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_12-300x106.png 300w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_12-1024x363.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_12-768x272.png 768w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_12-1536x544.png 1536w" sizes="auto, (max-width: 1668px) 100vw, 1668px" /></a></p>
<p>Iremos adicionar o Postgresql para otimizar as consultas no zabbix, isso faz total diferença em otimização! Então pesquise (1) por Postgresql e clique sobre (2)<br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_13.png" data-rel="lightbox-gallery-h1YVbJKj" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_13.png" alt="" width="1653" height="486" class="alignnone size-full wp-image-7445" srcset="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_13.png 1653w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_13-300x88.png 300w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_13-1024x301.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_13-768x226.png 768w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_13-1536x452.png 1536w" sizes="auto, (max-width: 1653px) 100vw, 1653px" /></a></p>
<p>Informe os dados de conexão com o Postgres qual usou na instalação da base do zabbix.<br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_14.png" data-rel="lightbox-gallery-h1YVbJKj" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_14.png" alt="" width="1653" height="930" class="alignnone size-full wp-image-7446" srcset="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_14.png 1653w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_14-300x169.png 300w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_14-1024x576.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_14-768x432.png 768w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_14-1536x864.png 1536w" sizes="auto, (max-width: 1653px) 100vw, 1653px" /></a></p>
<p>Role para baixo e selecione a versão (1) do seu PostgreSQL. Para Debian 12 a versão é a 15, e para Debian 11 a versão é a 13. Em Seguida Clique em Save &#038; Test (2) Se uma mensagem de sucesso (3) aparecer tudo funcionou!<br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_15.png" data-rel="lightbox-gallery-h1YVbJKj" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_15.png" alt="" width="1649" height="791" class="alignnone size-full wp-image-7447" srcset="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_15.png 1649w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_15-300x144.png 300w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_15-1024x491.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_15-768x368.png 768w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_15-1536x737.png 1536w" sizes="auto, (max-width: 1649px) 100vw, 1649px" /></a></p>
<p>Volte ao Menu, Connections, Data source (1) e clique em Zabbix (2)<br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_16.png" data-rel="lightbox-gallery-h1YVbJKj" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_16.png" alt="" width="1661" height="486" class="alignnone size-full wp-image-7449" srcset="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_16.png 1661w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_16-300x88.png 300w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_16-1024x300.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_16-768x225.png 768w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_16-1536x449.png 1536w" sizes="auto, (max-width: 1661px) 100vw, 1661px" /></a></p>
<p>Role até achar Direct DB Connection (1) e clique em enable (2), em Data Source selecione PostgreSQL (3) em seguida clique em Save &#038; Test (4), você receberá uma mensagem de sucesso (5)<br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_17.png" data-rel="lightbox-gallery-h1YVbJKj" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_17.png" alt="" width="1586" height="556" class="alignnone size-full wp-image-7450" srcset="https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_17.png 1586w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_17-300x105.png 300w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_17-1024x359.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_17-768x269.png 768w, https://blog.remontti.com.br/wp-content/uploads/2022/02/grafana_10_debian12_17-1536x538.png 1536w" sizes="auto, (max-width: 1586px) 100vw, 1586px" /></a></p>
<p>Agora vem a parte mais &#8220;legal&#8221; que é você montar seus gráficos, como isso é algo bem peculiar de cada um, o intuito aqui era ensinar instalar. Recomendo a leitura de <a href="https://alexanderzobnin.github.io/grafana-zabbix/guides/gettingstarted/" rel="noopener noreferrer" target="_blank">Introdução ao Grafana-Zabbix</a> do autor do plugin.</p>
<p>Simples né? Gostou e quer me ajudar? <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p><strong>Se quiser fazer uma doação para o café ficarei muito feliz pelo seu reconhecimento!</strong><br />
<a href="https://blog.remontti.com.br/doar"><img decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2019/07/quero-doar-remontti.png" /></a></p>
<p>Se não puder doar pode deixar seu agradecimento nos comentário também ficarei feliz em saber que ajudei. Se tiver qualquer pergunta deixe-a também. Se preferir entrar em Contato <a href="https://blog.remontti.com.br/meucontato" rel="noopener noreferrer" target="_blank">clique aqui.</a></p>
<p>Abraço!</p>
<p>Fontes:<br />
<a href="https://grafana.com/docs/grafana/latest/installation/debian/" rel="noopener" target="_blank">https://grafana.com/docs/grafana/latest/installation/debian/</a><br />
<a href="https://grafana.com/grafana/plugins/alexanderzobnin-zabbix-app" rel="noopener" target="_blank">https://grafana.com/grafana/plugins/alexanderzobnin-zabbix-app</a><br />
<a href="https://www.zabbix.com/documentation/" rel="noopener" target="_blank">https://www.zabbix.com/documentation/</a></p>
<p>O post <a href="https://blog.remontti.com.br/6370">Instalação do Grafana 11&gt;  com integração com Zabbix &#8211; (Debian 11 Bullseye/12 Bookworm)</a> apareceu primeiro em <a href="https://blog.remontti.com.br">Remontti</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.remontti.com.br/6370/feed</wfw:commentRss>
			<slash:comments>15</slash:comments>
		
		
			</item>
		<item>
		<title>Como obter gráficos de tráfego por AS utilizando AS-STATS (open source)</title>
		<link>https://blog.remontti.com.br/5129</link>
					<comments>https://blog.remontti.com.br/5129#comments</comments>
		
		<dc:creator><![CDATA[Rudimar Remontti]]></dc:creator>
		<pubDate>Thu, 05 Nov 2020 19:53:31 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Mikrotik]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[Tutoriais]]></category>
		<category><![CDATA[as-stats]]></category>
		<category><![CDATA[ElastiFlow]]></category>
		<category><![CDATA[graficos]]></category>
		<category><![CDATA[monitoramento]]></category>
		<category><![CDATA[Monitoring]]></category>
		<category><![CDATA[Netflow]]></category>
		<category><![CDATA[sFlow]]></category>
		<category><![CDATA[Traffic Flow]]></category>
		<guid isPermaLink="false">https://blog.remontti.com.br/?p=5129</guid>

					<description><![CDATA[<p>AS-Stats é uma ferramenta simples para gerar gráficos de tráfego por AS a partir de registros NetFlow / sFlow criada por Manuel Kasper para Monzoon Networks AG está na versão 1.6 (2014-09-12) e atualmente&#46;&#46;&#46;</p>
<p>O post <a href="https://blog.remontti.com.br/5129">Como obter gráficos de tráfego por AS utilizando AS-STATS (open source)</a> apareceu primeiro em <a href="https://blog.remontti.com.br">Remontti</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><strong><a href="https://github.com/manuelkasper/AS-Stats" rel="noopener noreferrer" target="_blank">AS-Stats</a></strong> é uma ferramenta simples para gerar gráficos de tráfego por AS a partir de registros NetFlow / sFlow criada<br />
por <a href="mk@neon1.net" rel="noopener noreferrer" target="_blank">Manuel Kasper</a> para Monzoon Networks AG está na versão 1.6 (2014-09-12) e atualmente não tem mais tempo para manter AS-Stats. No entanto houve algumas contribuições e além disso, <a href="https://github.com/nidebr/as-stats-gui" rel="noopener noreferrer" target="_blank">Nicolas Debrigode</a> lançou uma IU da Web mais moderna para AS-Stats, bem como o <a href="https://github.com/JackSlateur/perl-ip2as" rel="noopener noreferrer" target="_blank">Jack Slateur</a> que contribui para o mapeamento de IP para ASN.</p>
<p>Com todas essas melhorias fiz um novo <a href="https://github.com/remontti/AS-Stats" rel="noopener noreferrer" target="_blank">fork do projeto AS-Stats</a> atualizado varias coisas e unificando todo o projeto. </p>
<p><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2020/11/as-stats.png" alt="" width="1180" height="634" class="alignnone size-full wp-image-5139" srcset="https://blog.remontti.com.br/wp-content/uploads/2020/11/as-stats.png 1180w, https://blog.remontti.com.br/wp-content/uploads/2020/11/as-stats-300x161.png 300w, https://blog.remontti.com.br/wp-content/uploads/2020/11/as-stats-1024x550.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2020/11/as-stats-768x413.png 768w" sizes="auto, (max-width: 1180px) 100vw, 1180px" /></p>
<h3>Como funciona</h3>
<p>Um script Perl (asstatd.pl) coleta registros de agregação do NetFlow v8/v9 AS ou amostras sFlow v5 de um ou mais roteadores. Ele os armazena em cache por cerca de um minuto (para evitar gravações excessivas em arquivos RRD), identifica o link a que cada registro se refere (por meio do índice de interface de entrada/saída SNMP), mapeia-o para um &#8220;link conhecido&#8221; correspondente e dados RRD fonte e, em seguida, executa o RRDtool. Para evitar a perda de novos registros enquanto os arquivos RRD são atualizados, a tarefa de atualização é executada em um processo separado.</p>
<p>Para cada AS, um arquivo RRD separado é criado conforme necessário. Ele contém duas fontes de dados para cada link &#8211; uma para o tráfego de entrada e outra para o tráfego de saída. Em gráficos de tráfego por AS gerados, o tráfego de entrada é mostrado como positivo, enquanto o tráfego de saída é mostrado como valores negativos.</p>
<p>Outro script Perl, rrd-extractstats.pl, deve ser executado uma vez por hora. Ele soma o tráfego por AS e link durante as últimas 24 horas, classifica os AS pelo tráfego total (decrescente) e grava os resultados em um arquivo de texto. Isso é então usado para exibir os &#8220;principais N AS&#8221; e outras estatísticas dos scripts PHP fornecidos.</p>
<h4>Considerações</h4>
<p>Os arquivos RRD são pequenos, mas existem em grande quantidade. Você verá um ganho de desempenho em um sistema de arquivos como XFS sobre EXT4. Considere em qual sistema de arquivos você colocou os arquivos RRD se o desempenho for um fator para suas necessidades.</p>
<h3>Pré-requisitos</h3>
<p><a href="https://blog.remontti.com.br/5792" target="_blank" rel="noopener noreferrer">Debian 11 Bullseye – Instalação Limpa</a></p>
<p>Hardware vai depender muito da quantidade de flows coletado, mas ele é muito mais modesto em relação ao elastflow, vou deixar aqui um exemplo, de um servidor que subi com o Rudson para coletar ~5GB de um Huawei NE40 coletando de 4 interfaces. (4CPU 2.20GHz + 8GB Ram) mas como pode ver no print está super de boa <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /><br />
<img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2020/09/htop.png" alt="" width="1231" height="253" class="alignnone size-full wp-image-5166" srcset="https://blog.remontti.com.br/wp-content/uploads/2020/09/htop.png 1231w, https://blog.remontti.com.br/wp-content/uploads/2020/09/htop-300x62.png 300w, https://blog.remontti.com.br/wp-content/uploads/2020/09/htop-1024x210.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2020/09/htop-768x158.png 768w" sizes="auto, (max-width: 1231px) 100vw, 1231px" /><br />
Na questão de espaço em disco vai depender de quantas interfaces vc irá coletar, mas se prepare com ~50GB para não ter dor de cabeça, e na pior das hipóteses #format <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f600.png" alt="😀" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p>Ajustes seu repositório para pacotes <strong>non-free</strong> e <strong>contrib</strong>:</p>
<pre class="remontti-code"># vim /etc/apt/sources.list</pre>
<p>Ajuste:</p>
<pre class="remontti-code-plain">deb http://deb.debian.org/debian/ bullseye main contrib non-free
deb-src http://deb.debian.org/debian/ bullseye main contrib non-free

deb http://security.debian.org/debian-security bullseye-security main contrib non-free
deb-src http://security.debian.org/debian-security bullseye-security main contrib non-free

deb http://deb.debian.org/debian/ bullseye-updates main contrib non-free
deb-src http://deb.debian.org/debian/ bullseye-updates main contrib non-free</pre>
<p>Instalaremos todos os pacotes necessários para o projeto</p>
<pre class="remontti-code"># apt update
# apt install \
  unzip wget git net-tools curl dnsutils whois build-essential \
  perl libnet-patricia-perl libjson-xs-perl netcat python3-requests \
  libdbd-sqlite3-perl libtrycatch-perl rrdtool-tcl libgd-graph-perl \
  librrds-perl librrdp-perl librrdtool-oo-perl \
  rrdtool python3-rrdtool python3-rrdtool-dbg librrd-dev rrdcollect \
  apache2 libapache2-mod-php php php-sqlite3 \
  php-cli php-gmp php-gd php-bcmath php-mbstring \
  php-pear php-curl php-xml php-zip libyaml-perl</pre>
<pre class="remontti-code"># perl -MCPAN -e &#039;install Net::sFlow&#039;</pre>
<p>Responta <strong>YES</strong></p>
<pre class="remontti-code-plain">Would you like to configure as much as possible automatically? [yes]</pre>
<p>Último resultado será:</p>
<pre class="remontti-code-plain">/usr/bin/make install  -- OK</pre>
<pre class="remontti-code"># perl -MCPAN -e &#039;install File::Find::Rule&#039;</pre>
<p>Último resultado será:</p>
<pre class="remontti-code-plain">/usr/bin/make install  -- OK</pre>
<p>Como dito unifique todo o projeto, então vamos baixa-lo em uma pasta /data onde ficará todos os arquivos.</p>
<pre class="remontti-code"># mkdir /data/
# cd /data/
# git clone https://github.com/remontti/AS-Stats.git asstats
# mkdir /data/asstats/rrd</pre>
<p>Pesquisas adicionais (em caso de Mikrotik será necessário um complemento a mais já que o flow enviado não vem informação do AS, a solução <del datetime="2020-11-05T15:06:01+00:00">gambiarra</del> é usar um &#8220;tradutor de IPs para AS&#8221;. </p>
<pre class="remontti-code"># cp /data/asstats/ip2asn/ip2as.pm /usr/share/perl5/</pre>
<p>Vai ser necessário instalar o snmpwalk e as MIBs para coletarmos informações do router, pois é com essas informações que vamos dizer qual interface vamos coletar os flows. </p>
<pre class="remontti-code"># apt install snmp snmp-mibs-downloader
# cp  /etc/snmp/snmp.conf   /etc/snmp/snmp.conf.old
# echo &quot;&quot; &gt; /etc/snmp/snmp.conf</pre>
<p>Para fazer a coleta <strong>precisamos saber</strong> o identificador (<strong>ifIndex</strong>) da <strong>interface</strong>, para isso então vamos usar o snmpwalk para descobrir qual os nomes (<strong>ifDescr</strong>) primeiro e em seguida o identificador (<strong>ifIndex</strong>).</p>
<p><strong>Exemplo de saída snmpwalk de um huawei:</strong></p>
<pre class="remontti-code"># snmpwalk -v2c -c public 10.20.30.2 IF-MIB::ifDescr</pre>
<pre class="remontti-code-plain">IF-MIB::ifDescr.1 = STRING: Virtual-Template0
IF-MIB::ifDescr.2 = STRING: NULL0
IF-MIB::ifDescr.3 = STRING: InLoopBack0
IF-MIB::ifDescr.4 = STRING: Ethernet0/0/0
IF-MIB::ifDescr.6 = STRING: GigabitEthernet0/7/0
IF-MIB::ifDescr.7 = STRING: GigabitEthernet0/7/1
IF-MIB::ifDescr.8 = STRING: GigabitEthernet0/7/2
IF-MIB::ifDescr.9 = STRING: GigabitEthernet0/7/3
IF-MIB::ifDescr.10 = STRING: GigabitEthernet0/7/4
IF-MIB::ifDescr.11 = STRING: GigabitEthernet0/7/5
IF-MIB::ifDescr.12 = STRING: GigabitEthernet0/7/6
IF-MIB::ifDescr.13 = STRING: GigabitEthernet0/7/7
IF-MIB::ifDescr.14 = STRING: GigabitEthernet0/7/8
IF-MIB::ifDescr.15 = STRING: GigabitEthernet0/7/9
IF-MIB::ifDescr.32 = STRING: LoopBack1023
IF-MIB::ifDescr.33 = STRING: Eth-Trunk100
IF-MIB::ifDescr.34 = STRING: Eth-Trunk100.2022
IF-MIB::ifDescr.35 = STRING: Eth-Trunk100.309
IF-MIB::ifDescr.36 = STRING: Eth-Trunk100.700
IF-MIB::ifDescr.37 = STRING: Eth-Trunk100.701
IF-MIB::ifDescr.38 = STRING: Eth-Trunk100.928
IF-MIB::ifDescr.39 = STRING: Eth-Trunk100.929
IF-MIB::ifDescr.40 = STRING: LoopBack0
IF-MIB::ifDescr.41 = STRING: Eth-Trunk100.200
IF-MIB::ifDescr.42 = STRING: Eth-Trunk100.2371
IF-MIB::ifDescr.44 = STRING: Eth-Trunk100.3675
IF-MIB::ifDescr.45 = STRING: Eth-Trunk100.3672</pre>
<pre class="remontti-code"># snmpwalk -v2c -c public 10.250.250.1 IF-MIB::ifIndex</pre>
<pre class="remontti-code-plain">IF-MIB::ifIndex.1 = INTEGER: 1
IF-MIB::ifIndex.2 = INTEGER: 2
IF-MIB::ifIndex.3 = INTEGER: 3
IF-MIB::ifIndex.4 = INTEGER: 4
IF-MIB::ifIndex.6 = INTEGER: 6
IF-MIB::ifIndex.7 = INTEGER: 7
IF-MIB::ifIndex.8 = INTEGER: 8
IF-MIB::ifIndex.9 = INTEGER: 9
IF-MIB::ifIndex.10 = INTEGER: 10
IF-MIB::ifIndex.11 = INTEGER: 11
IF-MIB::ifIndex.12 = INTEGER: 12
IF-MIB::ifIndex.13 = INTEGER: 13
IF-MIB::ifIndex.14 = INTEGER: 14
IF-MIB::ifIndex.15 = INTEGER: 15
IF-MIB::ifIndex.32 = INTEGER: 32
IF-MIB::ifIndex.33 = INTEGER: 33
IF-MIB::ifIndex.34 = INTEGER: 34
IF-MIB::ifIndex.35 = INTEGER: 35
IF-MIB::ifIndex.36 = INTEGER: 36
IF-MIB::ifIndex.37 = INTEGER: 37
IF-MIB::ifIndex.38 = INTEGER: 38
IF-MIB::ifIndex.39 = INTEGER: 39
IF-MIB::ifIndex.40 = INTEGER: 40
IF-MIB::ifIndex.41 = INTEGER: 41
IF-MIB::ifIndex.42 = INTEGER: 42
IF-MIB::ifIndex.44 = INTEGER: 44
IF-MIB::ifIndex.45 = INTEGER: 45</pre>
<p><strong>Exemplo de saída snmpwalk de um RouterOS/Mikrotik:</strong></p>
<pre class="remontti-code"># snmpwalk -v2c -c public 10.20.30.2 IF-MIB::ifDescr</pre>
<pre class="remontti-code-plain">IF-MIB::ifDescr.1 = STRING: sfp-sfpplus1
IF-MIB::ifDescr.2 = STRING: sfp-sfpplus2
IF-MIB::ifDescr.3 = STRING: ether1
IF-MIB::ifDescr.4 = STRING: ether2
IF-MIB::ifDescr.5 = STRING: ether3
IF-MIB::ifDescr.6 = STRING: ether4
IF-MIB::ifDescr.7 = STRING: ether5
IF-MIB::ifDescr.8 = STRING: ether6
IF-MIB::ifDescr.9 = STRING: ether7
IF-MIB::ifDescr.10 = STRING: ether8
IF-MIB::ifDescr.11 = STRING: VLAN-IX-SP-IPv4.10
IF-MIB::ifDescr.12 = STRING: VLAN-IX-SP-IPv6.11
IF-MIB::ifDescr.13 = STRING: VLAN-IX-PR-IPv6.20
IF-MIB::ifDescr.14 = STRING: VLAN-IX-PR-IPv4.21
IF-MIB::ifDescr.15 = STRING: VLAN-IX-RS-IPv4.30
IF-MIB::ifDescr.16 = STRING: VLAN-IX-RS-IPv6.31</pre>
<pre class="remontti-code"># snmpwalk -v2c -c public 10.20.30.2 IF-MIB::ifIndex</pre>
<pre class="remontti-code-plain">IF-MIB::ifIndex.1 = INTEGER: 1
IF-MIB::ifIndex.2 = INTEGER: 2
IF-MIB::ifIndex.3 = INTEGER: 3
IF-MIB::ifIndex.4 = INTEGER: 4
IF-MIB::ifIndex.5 = INTEGER: 5
IF-MIB::ifIndex.6 = INTEGER: 6
IF-MIB::ifIndex.7 = INTEGER: 7
IF-MIB::ifIndex.8 = INTEGER: 8
IF-MIB::ifIndex.9 = INTEGER: 9
IF-MIB::ifIndex.10 = INTEGER: 10
IF-MIB::ifIndex.11 = INTEGER: 11
IF-MIB::ifIndex.13 = INTEGER: 13
IF-MIB::ifIndex.14 = INTEGER: 14
IF-MIB::ifIndex.15 = INTEGER: 15
IF-MIB::ifIndex.16 = INTEGER: 16</pre>
<p>Agora que já sabemos os IDs (ifIndex) das suas respectivas interfaces:<br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2020/11/snmpwalk.png" data-rel="lightbox-gallery-fhUPuQqs" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2020/11/snmpwalk.png" alt="" width="1235" height="824" class="alignnone size-full wp-image-5134" srcset="https://blog.remontti.com.br/wp-content/uploads/2020/11/snmpwalk.png 1235w, https://blog.remontti.com.br/wp-content/uploads/2020/11/snmpwalk-300x200.png 300w, https://blog.remontti.com.br/wp-content/uploads/2020/11/snmpwalk-1024x683.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2020/11/snmpwalk-768x512.png 768w" sizes="auto, (max-width: 1235px) 100vw, 1235px" /></a></p>
<p>Vamos aos  ajustes as entradas no arquivo knownlinks:</p>
<pre class="remontti-code"># vim /data/asstats/conf/knownlinks</pre>
<p>Exemplo:</p>
<pre class="remontti-code-plain"># nota: tabulações devem ser usadas para separar campos (não espaços)
# máx. o comprimento da tag é de 12 caracteres; caracteres permitidos: a-z A-Z 0-9 _
# sampling: taxa de amostragem pode ser separada para entrada / saída especificando taxas &lt;in&gt; / &lt;out&gt;.
#
# Router IP		SNMP ifindex    tag					description	color	samplingrate
10.20.30.2		11				vlan10				IX.SP 		F44336	1
10.20.30.2		15				vlan30				IX.RS		CDDC39	1
10.20.30.2		13				vlan20				IX.PR		4CAF50	1
10.20.30.2		5				Eth-Trunk100.309	LINK1	009688	128
10.20.30.2		2				Eth-Trunk100.308	LINK2	A09688	128
</pre>
<p>Para melhor entendimento:<br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2020/11/knownlinks.png" data-rel="lightbox-gallery-fhUPuQqs" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2020/11/knownlinks.png" alt="" width="1093" height="727" class="alignnone size-full wp-image-5135" srcset="https://blog.remontti.com.br/wp-content/uploads/2020/11/knownlinks.png 1093w, https://blog.remontti.com.br/wp-content/uploads/2020/11/knownlinks-300x200.png 300w, https://blog.remontti.com.br/wp-content/uploads/2020/11/knownlinks-1024x681.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2020/11/knownlinks-768x511.png 768w" sizes="auto, (max-width: 1093px) 100vw, 1093px" /></a></p>
<p>knownlinks configurado, vamos configurar nosso arquivo que inicirá o processo, mas mantes é necessário informar o seu AS e caso for um RouterOS/Mikrotik as coisas mudam um pouco.</p>
<pre class="remontti-code"># vim /data/asstats/bin/start</pre>
<p>Altere para seu AS</p>
<pre class="remontti-code">MEUAS=1234</pre>
<p>Se seu router é um RouterOS/Mikrotik permaneça com a linha a baixo descomentada!</p>
<pre class="remontti-code-plain">perl ${ASSTATD} -r ${DIRRRD} -k ${KNOWNLINKS} -a ${MEUAS} -n -m ${IP2ASN} &amp;</pre>
<p>Caso ser outro, comente a linha acima e descomenta a linha:</p>
<pre class="remontti-code-plain">perl ${ASSTATD} -r ${DIRRRD}  -p 9996 -P 6343 -k ${KNOWNLINKS} -a ${MEUAS} &amp;</pre>
<p><strong>Exemplo:  &#8220;AS 666 no Huawei&#8221;</strong></p>
<pre class="remontti-code">#!/bin/bash

# Informe seu AS:
MEUAS=666

ASSTATD=&#039;/data/asstats/bin/asstatd.pl&#039;
DIRRRD=&#039;/data/asstats/rrd&#039;
KNOWNLINKS=&#039;/data/asstats/conf/knownlinks&#039;
IP2ASN=&#039;/data/asstats/ip2asn/ip2asn.json&#039;

# -p = Port netflow / -P port sflow
# 
# netflow/sflow - (Huawei NE, Cisco, JunOS...)
perl ${ASSTATD} -r ${DIRRRD}  -p 9996 -P 6343 -k ${KNOWNLINKS} -a ${MEUAS} &amp;

# Flow v5 - (RoutesOS/Mikrotik)
# perl ${ASSTATD} -r ${DIRRRD} -k ${KNOWNLINKS} -a ${MEUAS} -n -m ${IP2ASN} &amp;</pre>
<p>Para iniciar o serviço execute:</p>
<pre class="remontti-code"># /data/asstats/bin/start</pre>
<p>Verifique se as portas estão ouvindo</p>
<pre class="remontti-code"># netstat -putan  |grep perl</pre>
<pre class="remontti-code-plain">udp        0      0 0.0.0.0:9996            0.0.0.0:*                           1261/perl           
udp        0      0 0.0.0.0:6343            0.0.0.0:*                           1261/perl  </pre>
<p>Para carregar o start na inicialização faça:</p>
<pre class="remontti-code"># ln -s /lib/systemd/system/rc-local.service /etc/systemd/system/rc-local.service</pre>
<pre class="remontti-code"># vim /etc/rc.local</pre>
<p>Adicione</p>
<pre class="remontti-code">#!/bin/bash
/data/asstats/bin/start
exit 0</pre>
<p>Altere as permissões para execução:</p>
<pre class="remontti-code"># chmod +x /etc/rc.local</pre>
<p>Ajustes no cron:</p>
<pre class="remontti-code"># crontab -e</pre>
<p>Adicione as linhas a baixo ao final do arquivo:</p>
<pre class="remontti-code"># 5min
*/5 * * * * perl /data/asstats/bin/rrd-extractstats.pl /data/asstats/rrd /data/asstats/conf/knownlinks /data/asstats/asstats/asstats_day.txt

# 7 Dias
#0 0 * * 0 perl /data/asstats/bin/rrd-extractstats.pl /data/asstats/rrd /data/asstats/conf/knownlinks /data/asstats/asstats/asstats_week.txt 168

# 30 dias 
#0 0 1 * * perl /data/asstats/bin/rrd-extractstats.pl /data/asstats/rrd /data/asstats/conf/knownlinks /data/asstats/asstats/asstats_month.txt 720
</pre>
<p>Reinicie o serviço cron</p>
<pre class="remontti-code"># systemctl restart cron</pre>
<p>Instale o tcpdump para verificar se os pacotes irão chegando ao seu servidor ao configurar os flows em seu servidor. Obs: <strong>enp0s3</strong> é o nome da interface do servidor.</p>
<pre class="remontti-code"># apt install tcpdump
# tcpdump -i enp0s3 -n udp port 9996 -T cnfp</pre>
<h3>Configuração para o router</h3>
<h4>RouterOS/Mikrotik (Flow v5)</h4>
<pre class="remontti-code">/ip traffic-flow
set active-flow-timeout=5m cache-entries=16k enabled=yes interfaces=INTERFACES

/ip traffic-flow ipfix
set dst-address-mask=no dst-mac-address=no first-forwarded=no gateway=no icmp-code=no icmp-type=no igmp-type=no ip-header-length=no ip-total-length=no ipv6-flow-label=no is-multicast=no last-forwarded=no \
    nat-dst-address=no nat-dst-port=no nat-src-address=no nat-src-port=no src-address-mask=no src-mac-address=no tcp-ack-num=no tcp-flags=no tcp-seq-num=no tcp-window-size=no tos=no ttl=no udp-length=no

/ip traffic-flow target
add dst-address=IP_SERVER_ASSTATS port=9996 src-address=IP_ORIGEM version=5</pre>
<h4>Huawei NE Netstream (netflow)</h4>
<p>Contribuição o <a href="https://www.facebook.com/rudson.costa.16" rel="noopener noreferrer" target="_blank">Rudson Costa</a> / <a href="http://t.me/gabrielmocan" rel="noopener" target="_blank">Gabriel Mocan</a> compartilhou: (Huawei NE40/8000)</p>
<pre class="remontti-code">
# CONFIG GLOBAL
#
ip netstream export version 9 origin-as
ip netstream export index-switch 32
ip netstream as-mode 32
ip netstream timeout active 5
ip netstream timeout inactive 60
ip netstream export template timeout-rate 1
ip netstream export template option sampler
ip netstream sampler fix-packets 128 inbound
ip netstream sampler fix-packets 128 outbound
ip netstream export source &gt;&gt;IPV4_LOOPBACK_ORIGEM&lt;&lt;
ip netstream export host &gt;&gt;IP_SERVIDOR&lt;&lt; 9996
#
ipv6 netstream export version 9 origin-as
ipv6 netstream export index-switch 32
ipv6 netstream as-mode 32
ipv6 netstream timeout active 5
ipv6 netstream timeout inactive 60
ipv6 netstream export template timeout-rate 1
ipv6 netstream export template option sampler
ipv6 netstream sampler fix-packets 128 inbound
ipv6 netstream sampler fix-packets 128 outbound
ipv6 netstream export source &gt;&gt;IPV4_LOOPBACK_ORIGEM&lt;&lt;
ipv6 netstream export host &gt;&gt;IP_SERVIDOR&lt;&lt; 9996

# CONFIG NO SLOT 
# NE40: slot 3
# NE8000-F1A: slot 0
# NE8000-M8: slot 9 ou 10 

# EXECUTE O COMANDO NO ROOT (ADM), COMANDO NÃO FUNCIONA EM VS
slot 0
 ip netstream sampler to slot self
 ipv6 netstream sampler to slot self

# APLICAR APENAS NAS INTERFACES UPSTREAM (LINK IP, PTT, IX...)
ip netstream inbound
ip netstream outbound
ipv6 netstream inbound
ipv6 netstream outbound

# EM CASO DE INTERFACES DE CDN INTERNO, APLICAR:
ip netstream inbound
ipv6 netstream inbound

# EM CASO DE INTERFACE BILATERAL (ONDE TANTO RECEBE QUANTO ENVIA CONTEÚDO), APLICAR:
ip netstream inbound
ipv6 netstream inbound
</pre>
<p>Contribuição do Thiago Melo para Juniper:</p>
<pre class="remontti-code">
# ---- ipv4
set chassis afeb slot 0 sampling-instance as-stats
set chassis afeb slot 0 inline-services flow-table-size ipv4-flow-table-size 10
set chassis afeb slot 0 inline-services flow-table-size ipv6-flow-table-size 10

set forwarding-options sampling instance as-stats input rate 2048
set forwarding-options sampling instance as-stats input max-packets-per-second 4096
set forwarding-options sampling instance as-stats family inet output flow-server IP_SERVIDOR_FLOW port 9996
set forwarding-options sampling instance as-stats family inet output flow-server IP_SERVIDOR_FLOW autonomous-system-type origin
set forwarding-options sampling instance as-stats family inet output flow-server IP_SERVIDOR_FLOW no-local-dump
set forwarding-options sampling instance as-stats family inet output flow-server IP_SERVIDOR_FLOW version-ipfix template ipv4
set forwarding-options sampling instance as-stats family inet output inline-jflow source-address IP_ORIGEM

set services flow-monitoring version-ipfix template ipv4 flow-active-timeout 60
set services flow-monitoring version-ipfix template ipv4 flow-inactive-timeout 30
set services flow-monitoring version-ipfix template ipv4 template-refresh-rate packets 48000
set services flow-monitoring version-ipfix template ipv4 template-refresh-rate seconds 30
set services flow-monitoring version-ipfix template ipv4 option-refresh-rate packets 48000
set services flow-monitoring version-ipfix template ipv4 option-refresh-rate seconds 30
set services flow-monitoring version-ipfix template ipv4 ipv4-template

set interfaces xe-2/0/0 unit 0 family inet sampling input
set interfaces xe-2/0/0 unit 0 family inet sampling output

# ---- ipv6

set forwarding-options sampling instance as-stats family inet6 output flow-server IP_SERVIDOR_FLOW port 9996
set forwarding-options sampling instance as-stats family inet6 output flow-server IP_SERVIDOR_FLOW autonomous-system-type origin
set forwarding-options sampling instance as-stats family inet6 output flow-server IP_SERVIDOR_FLOW no-local-dump
set forwarding-options sampling instance as-stats family inet6 output flow-server IP_SERVIDOR_FLOW version-ipfix template ipv6
set forwarding-options sampling instance as-stats family inet6 output inline-jflow source-address IP_ORIGEM

set services flow-monitoring version-ipfix template ipv6 flow-active-timeout 60
set services flow-monitoring version-ipfix template ipv6 flow-inactive-timeout 60
set services flow-monitoring version-ipfix template ipv6 template-refresh-rate packets 1000
set services flow-monitoring version-ipfix template ipv6 template-refresh-rate seconds 10
set services flow-monitoring version-ipfix template ipv6 option-refresh-rate packets 1000
set services flow-monitoring version-ipfix template ipv6 option-refresh-rate seconds 10
set services flow-monitoring version-ipfix template ipv6 ipv6-template

set interfaces xe-2/0/0 unit 0 family inet6 sampling input
set interfaces xe-2/0/0 unit 0 family inet6 sampling output</pre>
<p>No <a href="https://github.com/manuelkasper/AS-Stats">projeto oficial</a> você encontra modelos de configurações para outros vendors. </p>
<p>Agora é aguardar ~5 min até gerar os arquivos em /data/asstats/rrd</p>
<p>Uma boa dica é você ficar ligado com o a saúde do seu servidor, olhar para o processamento/memoria e como ta a escrita no disco é importante, vou deixar duas ferramentas para observar isso:</p>
<pre class="remontti-code"># apt install htop iotop
# htop
# iotop</pre>
<p>Agora precisamos fazer o acesso web para visualizar as informações.<br />
Ajustes de segurança para o apache:</p>
<pre class="remontti-code"># sed -i &#039;s/ServerTokens OS/ServerTokens Prod/&#039; /etc/apache2/conf-available/security.conf
# sed -i &#039;s/ServerSignature On/ServerSignature Off/&#039; /etc/apache2/conf-available/security.conf</pre>
<p>Para ficar algo bom vou criar um <a href="https://blog.remontti.com.br/3464" rel="noopener noreferrer" target="_blank">domínio virtual</a> para acessar o as-stats, não esqueça de apontar em seu DNS!</p>
<pre class="remontti-code"># vim /etc/apache2/sites-available/asstats.conf</pre>
<p>Ajuste para sua realidade, fique ligado que em Require ip só permite que estes tenham acesso:</p>
<pre class="remontti-code">&lt;virtualhost *:80&gt;
   ServerName asstats.remontti.com.br
   ServerAdmin noc@remontti.com.br
 
   DocumentRoot /data/asstats/www
 
   ErrorDocument 403 http://www.remontti.com.br
 
   &lt;Directory /data/asstats/www/&gt;
      Options FollowSymLinks
      AllowOverride All
      Require all denied
      &lt;RequireAll&gt;
         &lt;RequireAny&gt;
            Require ip 192.168.0.0/24 2804:1234:bebe::/48
         &lt;/RequireAny&gt;
      &lt;/RequireAll&gt;
   &lt;/Directory&gt;
 
   ErrorLog ${APACHE_LOG_DIR}/error_asstats.log
   CustomLog ${APACHE_LOG_DIR}/access_asstats.log combined
 
&lt;/VirtualHost&gt;</pre>
<pre class="remontti-code"># a2ensite asstats.conf
# systemctl restart apache2</pre>
<p>Ajuste seu ASN:</p>
<pre class="remontti-code"># vim /data/asstats/www/config.inc </pre>
<p>Localize $my_asn = "1234" e altere pelo seu.</p>
<pre class="remontti-code-plain">$my_asn = &quot;1234&quot;;</pre>
<p>Execute para que o asstats_day.txt seja criado e ao acessar o web-ui não fique em branco.</p>
<pre class="remontti-code"># perl /data/asstats/bin/rrd-extractstats.pl /data/asstats/rrd /data/asstats/conf/knownlinks /data/asstats/asstats/asstats_day.txt</pre>
<p>Acesse em seu navegador "<strong>http://asstats.remontti.com.br</strong>". Caso você não tenha dificuldade com dominios virtuais pode fazer um atalho dentro de /var/www/html, assim basta vc acessar o IP/as-stats/</p>
<pre class="remontti-code"># ln -s /data/asstats/www/ /var/www/html/as-stats</pre>
<p> e acessar <strong>http://ip/as-stats</strong></p>
<p><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2020/11/as-stats-zero.png" alt="" width="1427" height="473" class="alignnone size-full wp-image-5149" srcset="https://blog.remontti.com.br/wp-content/uploads/2020/11/as-stats-zero.png 1427w, https://blog.remontti.com.br/wp-content/uploads/2020/11/as-stats-zero-300x99.png 300w, https://blog.remontti.com.br/wp-content/uploads/2020/11/as-stats-zero-1024x339.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2020/11/as-stats-zero-768x255.png 768w" sizes="auto, (max-width: 1427px) 100vw, 1427px" /></p>
<p>Espero que tenha gostado!</p>
<p><strong>Se quiser fazer uma doação para o café ficarei muito feliz pelo seu reconhecimento!</strong><br />
<a href="https://blog.remontti.com.br/doar"><img decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2019/07/quero-doar-remontti.png" /></a></p>
<p>Participe do canal no <a href="https://t.me/blogremontti" rel="noopener noreferrer" target="_blank">telegram</a> para ficar atualizado sempre que publicar um novo tutorial. </p>
<p>Se não puder doar pode deixar seu agradecimento nos comentário também ficarei feliz em saber que ajudei. Se tiver qualquer pergunta deixe-a também. Se preferir entrar em Contato <a href="https://blog.remontti.com.br/meucontato" rel="noopener noreferrer" target="_blank">clique aqui.</a></p>
<p>Fontes:<br />
<a href="https://github.com/manuelkasper/AS-Stats" rel="noopener noreferrer" target="_blank">https://github.com/manuelkasper/AS-Stats</a><br />
<a href="https://github.com/nidebr/as-stats-gui" rel="noopener noreferrer" target="_blank">https://github.com/nidebr/as-stats-gui</a><br />
<a href="https://github.com/JackSlateur/perl-ip2as" rel="noopener noreferrer" target="_blank">https://github.com/JackSlateur/perl-ip2as</a></p>
<p>O post <a href="https://blog.remontti.com.br/5129">Como obter gráficos de tráfego por AS utilizando AS-STATS (open source)</a> apareceu primeiro em <a href="https://blog.remontti.com.br">Remontti</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.remontti.com.br/5129/feed</wfw:commentRss>
			<slash:comments>66</slash:comments>
		
		
			</item>
		<item>
		<title>Gerando gráfico ICMP(ms) MRTG</title>
		<link>https://blog.remontti.com.br/669</link>
					<comments>https://blog.remontti.com.br/669#comments</comments>
		
		<dc:creator><![CDATA[Rudimar Remontti]]></dc:creator>
		<pubDate>Fri, 02 Jan 2015 22:45:18 +0000</pubDate>
				<category><![CDATA[Dicas]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[graficos]]></category>
		<category><![CDATA[mrtg]]></category>
		<category><![CDATA[mrtg-ping-probe]]></category>
		<category><![CDATA[ping]]></category>
		<category><![CDATA[rede]]></category>
		<guid isPermaLink="false">http://www.remontti.com.br/blog/?p=669</guid>

					<description><![CDATA[<p>O mrtg-ping-probe é um módulo para MRTG 2.x. usado para monitorar a latência. Distribuição usada: Debian 8, tenha o pacote mrtg já instalado. Instalando # apt-get install mrtg-ping-probe Para usar o mrtg-ping-probe você precisa configurar&#46;&#46;&#46;</p>
<p>O post <a href="https://blog.remontti.com.br/669">Gerando gráfico ICMP(ms) MRTG</a> apareceu primeiro em <a href="https://blog.remontti.com.br">Remontti</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p style="text-align: justify;">O mrtg-ping-probe é um módulo para MRTG 2.x. usado para monitorar a latência.</p>
<p style="text-align: justify;">Distribuição usada: Debian 8, tenha o pacote <strong>mrtg</strong> já instalado.</p>
<p style="text-align: justify;">Instalando<br />
<span style="color: #000080;"><strong># apt-get install mrtg-ping-probe</strong></span></p>
<p>Para usar o mrtg-ping-probe você precisa configurar o MRTG para chamá-lo, isto é feito no arquivo de configuração do MRTG, que é geralmente /etc/mrtg.conf<br />
<span id="more-669"></span><br />
Adicione o seguinte em seu /etc/mrtg.cfg, onde farei o teste para o host www.google.com.br porém pode ser um IP.</p>
<pre class="remontti-code">
Title[www.google.com.br.latencia]: Latencia www.google.com.br
PageTop[www.google.com.br.latencia]:
MaxBytes[www.google.com.br.latencia]: 200
WithPeak[www.google.com.br.latencia]: ymwd
Options[www.google.com.br.latencia]: gauge,nobanner,transparent
Target[www.google.com.br.latencia]: `mrtg-ping-probe &lt;strong&gt;www.google.com.br&lt;/strong&gt;`
YLegend[www.google.com.br.latencia]: ms
ShortLegend[www.google.com.br.latencia]: ms
LegendI[www.google.com.br.latencia]:  Max:
LegendO[www.google.com.br.latencia]:  Min:

Title[www.google.com.br.perda]: Pacotes Perdidos para www.google.com.br
PageTop[www.google.com.br.perda]:
Target[www.google.com.br.perda]: `mrtg-ping-probe -t 42 -p loss/loss &lt;strong&gt;www.google.com.br&lt;/strong&gt;`
MaxBytes[www.google.com.br.perda]: 100
#AbsMax[www.google.com.br.perda]: 101
WithPeak[www.google.com.br.perda]: ymwd
Options[www.google.com.br.perda]: gauge,nobanner,transparent
Unscaled[www.google.com.br.perda]: dwmy
YLegend[www.google.com.br.perda]: % Pacotes Perdidos
ShortLegend[www.google.com.br.perda]: %
LegendI[www.google.com.br.perda]:  % perda:
LegendO[www.google.com.br.perda]:  % perda:

</pre>
<p>O post <a href="https://blog.remontti.com.br/669">Gerando gráfico ICMP(ms) MRTG</a> apareceu primeiro em <a href="https://blog.remontti.com.br">Remontti</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.remontti.com.br/669/feed</wfw:commentRss>
			<slash:comments>7</slash:comments>
		
		
			</item>
	</channel>
</rss>
