Monitoração por SNMP

O Virtual Appliance do Authfy MFAO possui um serviço de SNMP embutido que pode fornecer as métricas de monitoração de hardware e software do servidor.

O SNMP no Virtual Appliance fornece uma ampla variedade de informações de desempenho através do seu protocolo.

O suporte ao protocolo SNMP está presente na maioria das plataformas de monitoração, principalmente nas First-Class.

No contexto do SNMP atualmentente o Virtual Appliance do Authfy MFAO suporta mais de 201 itens.

Configurações de Hardware

O Host Resources MIB incluído no Net-SNMP apresenta informações sobre a configuração atual de hardware e informações adicionais de um host para um utilitário de cliente. A tabela abaixo resume os diferentes OIDs disponíveis sob essa MIB.

OID Descrição
HOST-RESOURCES-MIB::hrSystem Contém informações gerais do sistema, como tempo de atividade, número de processos em execução.
HOST-RESOURCES-MIB::hrStorage Contém dados sobre a memória e o uso do sistema de arquivos.
HOST-RESOURCES-MIB::hrDevices Contém uma lista de todos os processadores, dispositivos de rede e sistemas de arquivos.
HOST-RESOURCES-MIB::hrSWRun Contém uma lista de todos os processos em execução.
HOST-RESOURCES-MIB::hrSWRunPerf Contém estatísticas de memória e CPU na tabela de processos de HOST-RESOURCES-MIB :: hrSWRun.

Há também várias tabelas SNMP disponíveis no Host Resources MIB que podem ser usadas para recuperar um resumo das informações disponíveis. O exemplo a seguir exibe HOST-RESOURCES-MIB :: hrFSTable:

snmptable -c public -Cb [ip ou nome do servidor] HOST-RESOURCES-MIB::hrFSTable

Exemplo da saída do comando:

 Index       MountPoint RemoteMountPoint                                Type    Access Bootable StorageIndex LastFullBackupDate LastPartialBackupDate
     1              "/"               "" HOST-RESOURCES-TYPES::hrFSLinuxExt2 readWrite     true           31      0-1-1,0:0:0.0         0-1-1,0:0:0.0
     4 "/sys/fs/cgroup"               ""     HOST-RESOURCES-TYPES::hrFSOther readWrite    false           34      0-1-1,0:0:0.0         0-1-1,0:0:0.0
    10           "/run"               ""     HOST-RESOURCES-TYPES::hrFSOther readWrite    false           40      0-1-1,0:0:0.0         0-1-1,0:0:0.0
    11      "/run/lock"               ""     HOST-RESOURCES-TYPES::hrFSOther readWrite    false           41      0-1-1,0:0:0.0         0-1-1,0:0:0.0

Informações de CPU e Memória

A maioria dos dados de desempenho do sistema está disponível no UCD SNMP MIB. O systemStats OID fornece vários contadores sobre o uso do processador. Em particular, os OIDs ssCpuRawUser, ssCpuRaw System, ssCpuRawWait e ssCpuRawIdle fornecem contadores úteis para determinar se um sistema está gastando a maior parte do tempo do processador em espaço de kernel, espaço de usuário ou E / S. ssRawSwapIn e ssRawSwapOut podem ser úteis ao determinar se um sistema está sofrendo de exaustão de memória.

O exemplo a seguir lista o resumo do status do sistema:

snmpwalk -c public [ip ou nome do servidor] UCD-SNMP-MIB::systemStats

Exemplo da saída do comando:

UCD-SNMP-MIB::ssIndex.0 = INTEGER: 1
UCD-SNMP-MIB::ssErrorName.0 = STRING: systemStats
UCD-SNMP-MIB::ssSwapIn.0 = INTEGER: 0 kB
UCD-SNMP-MIB::ssSwapOut.0 = INTEGER: 0 kB
UCD-SNMP-MIB::ssIOSent.0 = INTEGER: 6 blocks/s
UCD-SNMP-MIB::ssIOReceive.0 = INTEGER: 0 blocks/s
UCD-SNMP-MIB::ssSysInterrupts.0 = INTEGER: 68 interrupts/s
UCD-SNMP-MIB::ssSysContext.0 = INTEGER: 164 switches/s
UCD-SNMP-MIB::ssCpuUser.0 = INTEGER: 0
UCD-SNMP-MIB::ssCpuSystem.0 = INTEGER: 0
UCD-SNMP-MIB::ssCpuIdle.0 = INTEGER: 99
UCD-SNMP-MIB::ssCpuRawUser.0 = Counter32: 1387314
UCD-SNMP-MIB::ssCpuRawNice.0 = Counter32: 26424
UCD-SNMP-MIB::ssCpuRawSystem.0 = Counter32: 443964
UCD-SNMP-MIB::ssCpuRawIdle.0 = Counter32: 385959332
UCD-SNMP-MIB::ssCpuRawWait.0 = Counter32: 62426
UCD-SNMP-MIB::ssCpuRawKernel.0 = Counter32: 0
UCD-SNMP-MIB::ssCpuRawInterrupt.0 = Counter32: 0
UCD-SNMP-MIB::ssIORawSent.0 = Counter32: 23447776
UCD-SNMP-MIB::ssIORawReceived.0 = Counter32: 1059138
UCD-SNMP-MIB::ssRawInterrupts.0 = Counter32: 228000798
UCD-SNMP-MIB::ssRawContexts.0 = Counter32: 602264562
UCD-SNMP-MIB::ssCpuRawSoftIRQ.0 = Counter32: 6396
UCD-SNMP-MIB::ssRawSwapIn.0 = Counter32: 0
UCD-SNMP-MIB::ssRawSwapOut.0 = Counter32: 0
UCD-SNMP-MIB::systemStats.64.0 = Counter32: 193176
UCD-SNMP-MIB::systemStats.65.0 = Counter32: 0
UCD-SNMP-MIB::systemStats.66.0 = Counter32: 0

Mais informações de memória estão disponíveis no UCD-SNMP-MIB :: memory OID, que fornece dados semelhantes ao comando free, conforme exemplo:

snmpwalk -c public [ip ou nome do servidor] UCD-SNMP-MIB::memory

Exemplo da saída do comando:

UCD-SNMP-MIB::memIndex.0 = INTEGER: 0
UCD-SNMP-MIB::memErrorName.0 = STRING: swap
UCD-SNMP-MIB::memTotalSwap.0 = INTEGER: 0 kB
UCD-SNMP-MIB::memAvailSwap.0 = INTEGER: 0 kB
UCD-SNMP-MIB::memTotalReal.0 = INTEGER: 2046432 kB
UCD-SNMP-MIB::memAvailReal.0 = INTEGER: 286068 kB
UCD-SNMP-MIB::memTotalFree.0 = INTEGER: 286068 kB
UCD-SNMP-MIB::memMinimumSwap.0 = INTEGER: 16000 kB
UCD-SNMP-MIB::memShared.0 = INTEGER: 760 kB
UCD-SNMP-MIB::memBuffer.0 = INTEGER: 60836 kB
UCD-SNMP-MIB::memCached.0 = INTEGER: 1270564 kB
UCD-SNMP-MIB::memSwapError.0 = INTEGER: error(1)
UCD-SNMP-MIB::memSwapErrorMsg.0 = STRING: Running out of swap space (0)

As médias de carga (Load Average) também estão disponíveis no UCD SNMP MIB. A tabela SNMP UCD-SNMP-MIB :: laTable possui uma lista das médias de carga de 1, 5 e 15 minutos, conforme exemplo:

snmptable -c public [ip ou nome do servidor] UCD-SNMP-MIB::laTable SNMP table: UCD-SNMP-MIB::laTable

Exemplo da saída do comando:

laIndex laNames laLoad laConfig laLoadInt laLoadFloat laErrorFlag laErrMessage
      1  Load-1   0.00    12.00         0    0.000000     noError
      2  Load-5   0.00    12.00         0    0.000000     noError
      3 Load-15   0.00    12.00         0    0.000000     noError

Informações sobre FileSystem e Disco

O Host Resources MIB fornece informações sobre tamanho e uso do sistema de arquivos. Cada sistema de arquivos (e também cada conjunto de memórias) possui uma entrada na tabela HOST-RESOURCES-MIB :: hrStorageTable, exemplo abaixo:

snmptable -c public -Cb [ip ou nome do servidor] HOST-RESOURCES-MIB::hrStorageTable SNMP table: HOST-RESOURCES-MIB::hrStorageTable

Exemplo da saída do comando:

Index                                         Type           Descr AllocationUnits     Size    Used AllocationFailures
    1           HOST-RESOURCES-TYPES::hrStorageRam Physical memory      1024 Bytes  2046432 1758760                  ?
    3 HOST-RESOURCES-TYPES::hrStorageVirtualMemory  Virtual memory      1024 Bytes  2046432 1758760                  ?
    6         HOST-RESOURCES-TYPES::hrStorageOther  Memory buffers      1024 Bytes  2046432   60836                  ?
    7         HOST-RESOURCES-TYPES::hrStorageOther   Cached memory      1024 Bytes  1270768 1270768                  ?
    8         HOST-RESOURCES-TYPES::hrStorageOther   Shared memory      1024 Bytes      760     760                  ?
   10 HOST-RESOURCES-TYPES::hrStorageVirtualMemory      Swap space      1024 Bytes        0       0                  ?
   31     HOST-RESOURCES-TYPES::hrStorageFixedDisk               /      4096 Bytes 10312784 1634748                  ?
   34     HOST-RESOURCES-TYPES::hrStorageFixedDisk  /sys/fs/cgroup      4096 Bytes        1       0                  ?
   40     HOST-RESOURCES-TYPES::hrStorageFixedDisk            /run      4096 Bytes    51161      94                  ?
   41     HOST-RESOURCES-TYPES::hrStorageFixedDisk       /run/lock      4096 Bytes     1280       0                  ?
   42     HOST-RESOURCES-TYPES::hrStorageFixedDisk        /run/shm      4096 Bytes   255804      70                  ?
   43     HOST-RESOURCES-TYPES::hrStorageFixedDisk       /run/user      4096 Bytes    25600       0                  ?

Os OIDs em HOST-RESOURCES-MIB :: hrStorageSize e HOST-RESOURCES-MIB :: hrStorageUsed podem ser usados ​​para calcular a capacidade restante de cada sistema de arquivos montado. Os dados de E / S estão disponíveis no (ssIORawSent.0 e ssIORawRecieved.0) UCD-SNMP-MIB :: systemStats e no UCD-DISKIO-MIB :: diskIOTable. Este último fornece dados muito mais granulares. Sob o exemplo abaixo, estão os OIDs para diskIONReadX e diskIONWrittenX, que fornecem contadores para o número de bytes lidos e gravados no dispositivo de bloco em questão desde a inicialização do sistema.

snmptable -c public -Cb [ip ou nome do servidor] UCD-DISKIO-MIB::diskIOTable SNMP table: UCD-DISKIO-MIB::diskIOTable

Exemplo da saída do comando:

Index Device     NRead   NWritten Reads  Writes LA1 LA5 LA15    NReadX   NWrittenX
    1  loop0         0          0     0       0   0   0    0         0           0
    2  loop1         0          0     0       0   0   0    0         0           0
    3  loop2         0          0     0       0   0   0    0         0           0
    4  loop3         0          0     0       0   0   0    0         0           0
    5  loop4         0          0     0       0   0   0    0         0           0
    6  loop5         0          0     0       0   0   0    0         0           0
    7  loop6         0          0     0       0   0   0    0         0           0
    8  loop7         0          0     0       0   0   0    0         0           0
    9   xvda 542278656 3418632192 14266 1329577   0   0    0 542278656 12008579072
   10  xvda1 541586432 3418632192 14119 1329577   0   0    0 541586432 12008579072

Informações de Rede

Informações sobre dispositivos de rede são fornecidas pelo MIB Interfaces. O IF-MIB :: ifTable fornece uma tabela SNMP com uma entrada para cada interface no sistema, a configuração da interface e vários contadores de pacotes para a interface. O exemplo a seguir mostra as primeiras colunas do ifTable em um sistema com duas interfaces de rede:

snmptable -c public -Cb [ip ou nomw do servidor] IF-MIB::ifTable SNMP table: IF-MIB::ifTable

Exemplo da saída do comando:

Index           Descr             Type   Mtu      Speed       PhysAddress AdminStatus OperStatus   LastChange   InOctets InUcastPkts InNUcastPkts InDiscards InErrors InUnknownProtos  OutOctets OutUcastPkts OutNUcastPkts OutDiscards OutErrors OutQLen                Specific
    1              lo softwareLoopback 65536   10000000                            up         up 0:0:00:00.00          0           0            0          0        0               0          0            0             0           0         0       0 SNMPv2-SMI::zeroDotZero
    2            eth0   ethernetCsmacd  9001          0  e:15:c5:c9:4e:49          up         up 0:0:00:00.00 1215453369    10289972            0          0        0               0 2232623202     13452937             0           0         0       0 SNMPv2-SMI::zeroDotZero

O tráfego de rede está disponível nos OIDs IF-MIB :: ifOutOctets e IF-MIB :: ifInOctets. As seguintes consultas SNMP recuperam o tráfego de rede para cada uma das interfaces neste sistema:

  • Interfaces de Rede: snmpwalk -c public [ip ou nome doservidor] IF-MIB::ifDescr

    Exemplo da saída do comando:

      IF-MIB::ifDescr.1 = STRING: lo
      IF-MIB::ifDescr.2 = STRING: eth0
      IF-MIB::ifDescr.3 = STRING: docker0
      IF-MIB::ifDescr.4 = STRING: br-865d1a0533f9
      IF-MIB::ifDescr.12 = STRING: vethbe26442
      IF-MIB::ifDescr.18 = STRING: veth457f4cf
      IF-MIB::ifDescr.20 = STRING: vethddbd282
    
  • Tréfego Out: snmpwalk -c public [ip ou nome doservidor] IF-MIB::ifOutOctets

    Exemplo da saída do comando:

      IF-MIB::ifOutOctets.1 = Counter32: 0
      IF-MIB::ifOutOctets.2 = Counter32: 2232743958
      IF-MIB::ifOutOctets.3 = Counter32: 0
      IF-MIB::ifOutOctets.4 = Counter32: 15551682
      IF-MIB::ifOutOctets.12 = Counter32: 834841
      IF-MIB::ifOutOctets.18 = Counter32: 1821429
      IF-MIB::ifOutOctets.20 = Counter32: 20577325
    
  • Tráfego In: snmpwalk -c public [ip ou nome doservidor] IF-MIB::ifInOctets

    Exemplo da saída do comando:

      IF-MIB::ifInOctets.1 = Counter32: 0
      IF-MIB::ifInOctets.2 = Counter32: 1215550807
      IF-MIB::ifInOctets.3 = Counter32: 0
      IF-MIB::ifInOctets.4 = Counter32: 44427967
      IF-MIB::ifInOctets.12 = Counter32: 1069911
      IF-MIB::ifInOctets.18 = Counter32: 5634405
      IF-MIB::ifInOctets.20 = Counter32: 53209297
    

results matching ""

    No results matching ""