Zabbix: Tunning

julho 24, 2017

Tunning de configuração do Zabbix

Naturalmente que cada ambiente, com suas próprias características, precisará passar por uma analise antes de aplicar as configurações abaixo.

No entanto, o intuito desse material é compartilhar minha experiencia pessoal para ajudar dando um norte de algumas configurações importantes que acabam passando despercebidas e podem fazer com isso com que o Zabbix fique instavel mesmo com sobra de recurso (hardware).

Tunning Mysql (MariaDB): Aumentando o número de requisições no banco de Dados

vi /etc/my.cnf.d/server.cnf
[mysqld]
#max_connections Default is 100
max_connections = 2000

#default
MariaDB [zabbix]> SHOW VARIABLES LIKE “max_connections”;
+—————–+——-+
| Variable_name | Value |
+—————–+——-+
| max_connections | 214 |
+—————–+——-+

#ajustado para
MariaDB [zabbix]> SET GLOBAL max_connections = 500;
Query OK, 0 rows affected (0.00 sec)

MariaDB [zabbix]> SHOW VARIABLES LIKE “max_connections”;
+—————–+——-+
| Variable_name | Value |
+—————–+——-+
| max_connections | 500 |
+—————–+——-+

 

Tunning Zabbix AppTier: Aumentando o número de polling para aplicação

vi /etc/zabbix/zabbix_server.conf
StartPollers=160
StartIPMIPollers=10
StartPollersUnreachable=25
StartPingers=10
StartDiscoverers=10
### Option: CacheSize
# CacheSize=8M
CacheSize=48M
### Option: HistoryCacheSize
# HistoryCacheSize=16M
HistoryCacheSize=80M
### Option: TrendCacheSize
# TrendCacheSize=4M
TrendCacheSize=20M
### Option: ValueCacheSize
# ValueCacheSize=8M
ValueCacheSize=64M

systemctl restart zabbix-server

Aumentando o número de “Últimos Incidentes” na Dashboard do Zabbix

vi /usr/share/zabbix/include/defines.inc.php
define(‘DEFAULT_LATEST_ISSUES_CNT’, 200); //No lugar do 200 era 20

systemctl restart zabbix-server

Configuração de shared memory / cache size

Definição de shared memory: “Na ciência da computação, memória compartilhada é a memória que pode ser acessado simultaneamente por vários programas com a intenção de proporcionar a comunicação entre eles ou evitar cópias redundantes. Memória compartilhada é um meio eficiente de transmitir dados entre programas. Dependendo do contexto, os programas podem ser executados em um único processador ou em vários processadores separados.”
ref: wifipedia

Aplicação prática no zabbix: Quando trabalhamos em ambientes com muitos itens, hosts etc… podemos ter que ajustar o parâmetro shared memory no servidor linux a fim de que ele seja capaz de suportar tantos processos concorrentes.

  • Sintoma: Serviço Zabbix-Server não inicia ou fica caindo.
  • Análise: Logs de erro no Servidor Zabbix

tail -f /var/log/zabbix/zabbix_server.log
26569:20161004:175132.438 [file:strpool.c,line:53] zbx_mem_malloc(): out of memory (requested 61 bytes)
26569:20161004:175132.438 [file:strpool.c,line:53] zbx_mem_malloc(): please increase CacheSize configuration parameter

  • Ajuste do shared memory no servidor Linux (Debian):
    ref: Zabbix Org

    • Verificar as quantidade de memória atual: sysctl -a | grep -E “shmall|shmmax”
      kernel.shmmax = 33554432 #32M
      kernel.shmall = 2097152
    • Para Ajutar para 128M deve-se adicionar o parametro equivalente no arquivo vi /etc/sysctl.conf
      #128M
      kernel.shmmax=134217728
    • Para aplicar as alterações: sysctl -p
  • Ajuste do Cache Size no Zabbix
    ref: Zabbix.com

    • vi /etc/zabbix/zabbix_server.conf

### Option: CacheSize
# Size of configuration cache, in bytes.
# Shared memory size for storing host, item and trigger data.
#
# Mandatory: no
# Range: 128K-2G
# Default:
CacheSize=128M

  • Iniciar o serviço do Zabbix-Server e acompanhar os logs

service zabbix-server start
tail -f /var/log/zabbix/zabbix_server.log

 

Anúncios

Zabbix 3.0 CentOS 7

abril 5, 2016

Passo a passo simples mas funcional para instalação do Zabbix 3.0 no CentOS 7

systemctl stop firewalld
chkconfig firewalld off
setenforce Permissive
vi /etc/selinux/config
SELINUX=permissive
yum install mariadb mariadb-devel mariadb-server -y
systemctl start mariadb
mysql_secure_installation
dbrootpass: MINHASENHADEBANCO
mysql -uroot -p
create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to zabbix@localhost identified by ‘SENHADOZABBIXUSERDB’;
rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
yum search zabbix
yum install zabbix-agent zabbix-server-mysql zabbix-web-mysql -y
cd /etc/zabbix
vi zabbix_server.conf
Ajustar:
DBHost
DBName
DBUser
DBPassword
vi zabbix_agentd.conf
Ajustar:
Hostname
Server=
cd /usr/share/doc/zabbix-server-mysql-3.0.0
zcat create.sql.gz | mysql -uroot -p zabbix
vi /etc/php.ini
timezone
systemctl start httpd
systemctl start zabbix-server
systemctl start zabbix-agent
chkconfig httpd on
chkconfig zabbix-server on
chkconfig zabbix-agent on
tail -f /var/log/zabbix/zabbix_server.log
yum update
yum upgrade

Lembrando de Ajustar e subir de volta o firewall no fim do processo

Trata-se de um problema de permissionamento:

Rodar os seguintes comandos:

chown root.root -v /usr/sbin/fping
chmod a+s -v /usr/sbin/fping*
chmod -v 6755 /usr/sbin/fping

 

Fonte:

https://www.zabbix.com/forum/showthread.php?t=44098

Parece ser um problema ligado a network e VPC.

No meu caso, eu subi uma máquina com base em uma “AMI Image” de outra máquina, contudo, essa “AMI Image” foi baseada em uma máquina que estava com IP fixo definido.

SOLUÇÂO

Como minha máquina era VPC, eu adicionei uma segunda interface de rede, configurei um IP dentro de uma outra VPC que eu tinha acesso, então fiz o acesso por dentro da minha VPC, e ajustei o IP da interface principal para dinâmico.

Pronto, tudo solucionado.

Clique aqui para saber a base utilizada:

https://aws.amazon.com/pt/premiumsupport/knowledge-center/waiting-for-metadata/

1) Upload a new SSL certificate.

2) A partir do certificado baixado da CA, exportar o arquivo pfx através do MMC Windows, marcando a opção para exportar a Private Key (Yes, Export the Private Key, e depois “include al certificates…” e “Export all Extendended…”), definir uma senha  (anotar) e salvar o arquivo.

*Ao longo das etapas abaixo será solicitado algumas vezes a senha acima citada.

a) Gerar o arquivo .pem
// Export the private key file from the pfx file (arquivo gerado na etapa 2).
openssl pkcs12 -in filename.pfx -nocerts -out key.pem

b)// Remove the passphrase from the private key (key.pem é o arquivo gerado acima)
openssl rsa -in key.pem -out server.key

3) Gerar Certificado Público
// Export the certificate file from the pfx file (arquivo gerado na etapa 2).
openssl pkcs12 -in filename.pfx -clcerts -nokeys -out cert.pem

4) Certificado do Canal (arquivo gerado na etapa 2).
openssl pkcs12 -in mycerts.pfx -cacerts -out myissuercerts.cer
(obs: primeiro o root e depois as intermediarias, no arquivo precisa copiar de trás para frente).

Dell Inspiron HD Hibrido Hybrid Ctrl+I disabled. How to manage configure (gerenciar e configurar)

http://en.community.dell.com/support-forums/disk-drives/f/3534/t/19471079

Abaixo, o passo a passo, ficar atento a primeira etapa, pois sem essa permissão, não adiantará conceder acesso direto ao usuário, role ou grupo.

Sem título

 

 

http://docs.aws.amazon.com/IAM/latest/UserGuide/ControllingAccessWebsite.html