Você pode usar o Monitoramento de rede agente da New Relic para monitorar seu ambiente Meraki.
Iniciar
Antes de começar, certifique-se de ter os pré-requisitos de segurança New Relic, Docker, Meraki e Network:
Uma conta New Relic .
Uma New Relic
.
Possibilidade de lançamento de novos contêineres via linha de comando.
Chave de API dashboard Meraki para autenticação.
Regras de firewall de rede
Direção | Fonte | Destino | Portas | Protocolo | Obrigatório |
---|---|---|---|---|---|
Saída | Hospedeiro de contêiner |
| 443 | TCP | ✓ |
Saída | Hospedeiro de contêiner | New Relic API endpoint API Relic métrica: | 443 | TCP | ✓ |
Saída | Hospedeiro de contêiner | New Relic API endpoint API de evento Relic: | 443 | TCP | ✓ |
Saída | Hospedeiro de contêiner | API endpoint da API Relic Logs: | 443 | TCP | |
Saída | Hospedeiro de contêiner | Meraki dashboard API endpoint: | 443 (padrão) | TCP | ✓ |
instalação
Você pode dashboard API adicionar o monitoramento Meraki a um contêiner SNMP existente ou implantá-lo em um contêiner dedicado e mantê-lo separado de seus outros dispositivos SNMP. Selecione a opção abaixo que melhor corresponde ao seu caso de uso:
No arquivo de configuração existente do agente SNMP, adicione manualmente o objeto de dispositivo Meraki. Substitua
$DASHBOARD_API_KEY
pela chave de API dashboard Meraki:devices:meraki_cloud_controller:device_name: meraki_cloud_controllerdevice_ip: snmp.meraki.comprovider: meraki-cloud-controllerext:ext_only: truemeraki_config:api_key: "$DASHBOARD_API_KEY"Dica
Este é um exemplo básico. Você pode encontrar opções de configuração adicionais em nosso documento de configuração avançada.
Pare e remova o contêiner existente:
bash$# Find your current container$docker ps -a$$# Forcibly stop and delete the target container (you may also use the container ID here in place of the name)$docker rm -f $CONTAINER_NAMEInicie um novo contêiner com o arquivo de configuração atualizado. Substitua
$CONTAINER_SERVICE
por um nome exclusivo para o contêiner e substitua$YOUR_NR_LICENSE_KEY
e$YOUR_NR_ACCOUNT_ID
pelos seus valores. Neste exemplo, presume-se que o arquivo de configuração padrão tenha o nomesnmp-base.yaml
:bash$docker run -d --name ktranslate-$CONTAINER_SERVICE --restart unless-stopped --pull=always -p 162:1620/udp \>-v `pwd`/snmp-base.yaml:/snmp-base.yaml \>-e NEW_RELIC_API_KEY=$YOUR_NR_LICENSE_KEY \>kentik/ktranslate:v2 \>-snmp /snmp-base.yaml \>-nr_account_id=$YOUR_NR_ACCOUNT_ID \>-metrics=jchf \>-tee_logs=true \>-service_name=$CONTAINER_SERVICE \>-snmp_discovery_on_start=true \>-snmp_discovery_min=180 \>nr1.snmp
Em um host Linux com Docker instalado, utilize o editor de texto de sua preferência para criar o arquivo de configuração que você utilizará para executar o contêiner. Substitua
$DASHBOARD_API_KEY
pela chave de API dashboard Meraki.Exemplo usando vim:
bash$sudo vim meraki-base.yamlConteúdo do arquivo:
devices:meraki_cloud_controller:device_name: meraki_cloud_controllerdevice_ip: snmp.meraki.comprovider: meraki-cloud-controllerext:ext_only: truemeraki_config:api_key: "$DASHBOARD_API_KEY"trap: {}discovery: {}global:poll_time_sec: 300timeout_ms: 30000Dica
Este é um exemplo básico. Você pode encontrar opções de configuração adicionais em nosso documento de configuração avançada.
Inicie o agente de monitoramento de rede para pesquisar a Meraki.dashboard API Substitua
$CONTAINER_SERVICE
por um nome exclusivo para o contêiner e substitua$YOUR_NR_LICENSE_KEY
e$YOUR_NR_ACCOUNT_ID
pelos seus valores. Neste exemplo, salvamos nosso arquivo de configuração como ‘meraki-base.yaml’:bash$docker run -d --name ktranslate-$CONTAINER_SERVICE --restart unless-stopped --pull=always -p 162:1620/udp \>-v `pwd`/meraki-base.yaml:/snmp-base.yaml \>-e NEW_RELIC_API_KEY=$YOUR_NR_LICENSE_KEY \>kentik/ktranslate:v2 \>-snmp /snmp-base.yaml \>-nr_account_id=$YOUR_NR_ACCOUNT_ID \>-metrics=jchf \>-tee_logs=true \>-service_name=$CONTAINER_SERVICE \>-snmp_discovery_on_start=true \>-snmp_discovery_min=180 \>nr1.snmp
No arquivo de configuração existente do agente SNMP, adicione manualmente o objeto de dispositivo Meraki. Substitua
$DASHBOARD_API_KEY
pela chave de API dashboard Meraki:devices:meraki_cloud_controller:device_name: meraki_cloud_controllerdevice_ip: snmp.meraki.comprovider: meraki-cloud-controllerext:ext_only: truemeraki_config:api_key: "$DASHBOARD_API_KEY"Dica
Este é um exemplo básico. Você pode encontrar opções de configuração adicionais em nosso documento de configuração avançada.
Pare e remova o contêiner existente:
bash$# Find your current container$podman ps -a$$# Forcibly stop and delete the target container (you may also use the container ID here in place of the name)$podman rm -f $CONTAINER_NAMEInicie um novo contêiner com o arquivo de configuração atualizado. Substitua
$CONTAINER_SERVICE
por um nome exclusivo para o contêiner e substitua$YOUR_NR_LICENSE_KEY
e$YOUR_NR_ACCOUNT_ID
pelos seus valores. Neste exemplo, estamos assumindo o nome do arquivo de configuração padrãosnmp-base.yaml
:bash$podman run -d --name ktranslate-$CONTAINER_SERVICE --userns=keep-id --restart unless-stopped --pull=always --net=host \>-v `pwd`/snmp-base.yaml:/snmp-base.yaml \>-e NEW_RELIC_API_KEY=$YOUR_NR_LICENSE_KEY \>kentik/ktranslate:v2 \>-snmp /snmp-base.yaml \>-nr_account_id=$YOUR_NR_ACCOUNT_ID \>-metrics=jchf \>-tee_logs=true \>-service_name=$CONTAINER_SERVICE \>-snmp_discovery_on_start=true \>-snmp_discovery_min=180 \>nr1.snmpImportante
Se você ainda não criou uma regra
iptables
para lidar com o redirecionamento de pacotes para mensagens trap, será necessário fazer isso com o comando:bash$sudo iptables -t nat -A PREROUTING -p udp --dport 162 -j REDIRECT --to-port 1620
Em um host Linux com Podman instalado, use o editor de texto de sua preferência para criar o arquivo de configuração que você usará para executar o contêiner. Substitua
$DASHBOARD_API_KEY
pela chave de API dashboard Meraki.Exemplo usando vim:
bash$sudo vim meraki-base.yamlConteúdo do arquivo:
devices:meraki_cloud_controller:device_name: meraki_cloud_controllerdevice_ip: snmp.meraki.comprovider: meraki-cloud-controllerext:ext_only: truemeraki_config:api_key: "$DASHBOARD_API_KEY"trap: {}discovery: {}global:poll_time_sec: 300timeout_ms: 30000Dica
Este é um exemplo básico. Você pode encontrar opções de configuração adicionais em nosso documento de configuração avançada.
Inicie o agente de monitoramento de rede para pesquisar a Meraki.dashboard API Substitua
$CONTAINER_SERVICE
por um nome exclusivo para o contêiner e substitua$YOUR_NR_LICENSE_KEY
e$YOUR_NR_ACCOUNT_ID
pelos seus valores. Neste exemplo, salvamos nosso arquivo de configuração como ‘meraki-base.yaml’:bash$podman run -d --name ktranslate-$CONTAINER_SERVICE --userns=keep-id --restart unless-stopped --pull=always --net=host \>-v `pwd`/snmp-base.yaml:/snmp-base.yaml \>-e NEW_RELIC_API_KEY=$YOUR_NR_LICENSE_KEY \>kentik/ktranslate:v2 \>-snmp /snmp-base.yaml \>-nr_account_id=$YOUR_NR_ACCOUNT_ID \>-metrics=jchf \>-tee_logs=true \>-service_name=$CONTAINER_SERVICE \>-snmp_discovery_on_start=true \>-snmp_discovery_min=180 \>nr1.snmpImportante
Se você ainda não criou uma regra
iptables
para lidar com o redirecionamento de pacotes para mensagens trap, será necessário fazer isso com o comando:bash$sudo iptables -t nat -A PREROUTING -p udp --dport 162 -j REDIRECT --to-port 1620
Qual é o próximo
Você pode configurar mais agentes para complementar os dados do seu ambiente Meraki:
- Para obter melhor visibilidade sobre como sua rede é usada, configure o monitoramento de dados de fluxo de rede.
- Para obter insights sobre mensagens do sistema dos seus dispositivos, configure a coleta de syslog de rede.