Ad Widget

Collapse

Espaço em Disco Lotado

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • roberto1890
    Junior Member
    • Aug 2018
    • 10

    #1

    Espaço em Disco Lotado

    Boa tarde pessoal,

    Tenho um servidor Zabbix 4.0 operando no Centos 7 ocupando 25GB, porém só tenho 1GB livre e estou precisando de uma ação de emergencia para desocupar espaço, já que eu havia feito uma limpeza de itens antigos mas mesmo assim não diminuiu o espaço após execução do HouseKeeper...

    Alguém pode me dar um auxilio nessa questão?
  • Jefte
    Senior Member
    • Oct 2015
    • 207

    #2
    Através da aba General / Limpeza de Dados é possível configurar alguns parâmetros, dê uma olhada no período de retenção destes dados dentre os principais Históricos e Estatísticas.
    Não sabemos a quantidade de hosts e quantidade de itens e o tempo de retenção do seu cenário, qual tamanho da sua base de dado zabbix?

    Comment


    • roberto1890
      roberto1890 commented
      Editing a comment
      Amigo, o meu ambiente faz mais ou menos uns 6 meses que está em funcionamento. Eu tenho percebido a limpeza de dados na aba General, porém eu não sei se isso pode excluir estatisticas ou históricos importantes que eu tenho cadastrado em alguns itens...

      Supondo que eu mudei para 4 meses o parâmetro de retenção de histórico e estatisticas na Limpeza de Dados, esses itens que eu tenho cadastrado com um período de retenção maior do que 4 meses também irá sumir?

      Outra coisa, como eu verifico se o HouseKeeper está executando?

    • roberto1890
      roberto1890 commented
      Editing a comment
      Segue minhas configurações de Housekeeper:

      ### Option: HousekeepingFrequency
      # How often Zabbix will perform housekeeping procedure (in hours).
      # Housekeeping is removing outdated information from the database.
      # To prevent Housekeeper from being overloaded, no more than 4 times HousekeepingFrequency
      # hours of outdated information are deleted in one housekeeping cycle, for each item.
      # To lower load on server startup housekeeping is postponed for 30 minutes after server start.
      # With HousekeepingFrequency=0 the housekeeper can be only executed using the runtime control option.
      # In this case the period of outdated information deleted in one housekeeping cycle is 4 times the
      # period since the last housekeeping cycle, but not less than 4 hours and not greater than 4 days.
      #
      # Mandatory: no
      # Range: 0-24
      # Default:
      HousekeepingFrequency=1

      ### Option: MaxHousekeeperDelete
      # The table "housekeeper" contains "tasks" for housekeeping procedure in the format:
      # [housekeeperid], [tablename], [field], [value].
      # No more than 'MaxHousekeeperDelete' rows (corresponding to [tablename], [field], [value])
      # will be deleted per one task in one housekeeping cycle.
      # SQLite3 does not use this parameter, deletes all corresponding rows without a limit.
      # If set to 0 then no limit is used at all. In this case you must know what you are doing!
      #
      # Mandatory: no
      # Range: 0-1000000
      # Default:
      # MaxHousekeeperDelete=5000
  • Jefte
    Senior Member
    • Oct 2015
    • 207

    #3
    1ª Pergunta - Se configurar para 4 meses , perderá as informações anteriores:
    Sim, irá perder quando o housekeeper for executado.


    2ª Pergunta - Com saber se o zabbix está rodando housekeeper delete.
    Bom, para saber se o housekeeper está executando é possível observar através do log com seguinte comando.
    Code:
    grep -i 'housekeeper' /var/log/zabbix/zabbix_server.log
    Você terá retornos parecido com estes:

    Code:
    12555:20190112:082140.058 executing housekeeper 12555:20190112:082157.195 housekeeper [deleted 295588 hist/trends, 0 items, 80 events, 28 problems, 0 sessions, 0 alarms, 0 audit items in 17.136654 sec, idle for 1 hour(s)]
    Ou,
    Simplesmente através do gráfico do seu próprio zabbix-server em -> zabbix internal process busy % , você terá Zabbix busy housekeeper process in %

    PS:
    O que pode está acontecendo é que suas configurações de MaxHousekeeperDelete=5000 pode está sendo um valor baixo, para a quantidade de itens, (Observer se seu zabbix busy housekeeper process está sendo utilizado 100%) o ideal é aumentar a quantidade de MaxHouseKeeperDelete para que o zabbix possa deletar uma quantidade maior de "dados" passados. Aumente gradativamente e perceba um valor ideal.

    Comment


    • roberto1890
      roberto1890 commented
      Editing a comment
      Realizei todos os procedimentos mencionandos e modifiquei muitas opções de retenção de itens, porém a minha base de dados do Mysql não diminuiu de tamanho...

      Meu HouseKeeper também está rodando sem problemas... Tenho visto que parece existir alguns comandos que podem ser digitados no mysql para remover esses itens antigos...

      Tenho pouca experiência com mysql e não sei se isso pode ser efetivo no meu caso também. Você teria alguma sugestão?

      Meu ambiente atualmente é este:

      Meu Centos:
      Sist. Arq. Tam. Usado Disp. Uso% Montado em
      /dev/mapper/centos-root 26G 26G 587M 98% /
      devtmpfs 1,9G 0 1,9G 0% /dev
      tmpfs 1,9G 0 1,9G 0% /dev/shm
      tmpfs 1,9G 36M 1,9G 2% /run
      tmpfs 1,9G 0 1,9G 0% /sys/fs/cgroup
      /dev/sda1 1014M 265M 750M 27% /boot
      tmpfs 378M 0 378M 0% /run/user/0

      MYSQL:
      +--------------------+---------------------+
      | NOME DO BANCO | Tamanho do BD em MB |
      +--------------------+---------------------+
      | information_schema | 0.00976563 |
      | mysql | 1.08242226 |
      | performance_schema | 0.00000000 |
      | meu_zabbix | 22077.14062500 |
      +--------------------+---------------------+
  • Jefte
    Senior Member
    • Oct 2015
    • 207

    #4
    Bom,
    É possível realizar essa limpeza manualmente direto pelo MySQL, posso lhe recomendar os seguintes comandos

    (caso não tenha nenhuma familiaridade com MySQL):
    Leia com atenção.
    Few posts on the internet about this but quickest way i found of deleting old data below. Save the below code as .sql and run from the server with… #mysql zabbix -p ./deleteolddata.sql SQL CODE – -- intervals in days SET @history_interval = 7; SET @trends_interval = 90; DELETE FROM alerts WHERE (UNIX_TIMESTAMP(NOW()) - clock) Read more about Zabbix Database Cleanup – Delete Old Data[…]

    Comment


    • roberto1890
      roberto1890 commented
      Editing a comment
      Hum, estava pensando em realizar esses comandos aqui:


      Qual você acredita ser mais interessante?

    • roberto1890
      roberto1890 commented
      Editing a comment
      mysql> DELETE FROM history WHERE clock < UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 110 DAY));
      ERROR 1114 (HY000): The table 'history' is full
      mysql>

    • roberto1890
      roberto1890 commented
      Editing a comment
      Depois que executei os comandos e reiniciei o servidor ai peteco o mysql:

      Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)


      Tive que restaurar o snapshot do servidor pra voltar a rodar...
Working...