Esta página descreve as opções de gerenciamento do contêiner ktranslate usado pelo Monitoramento de rede da New Relic.
Requisitos de contêiner
Recomendamos os seguintes recursos para a imagem de contêiner ktranslate :
Disk
- 100 MB de espaço disponível em disco
CPU
- Coleta de polling/trap SNMP: 1 núcleo de CPU dedicado para cada aproximadamente 1.000 dispositivos
- Coleta de fluxo de dispositivo: 1 núcleo de CPU dedicado para cada aproximadamente 2.000 fluxos por segundo (fps)
- Coleta de mensagens Syslog: 1 núcleo de CPU dedicado para cada aproximadamente 2.000 mensagens por segundo
Memory
- ktranslate geralmente não é limitado por recursos de memória. A quantidade de memória em seu host deve ser determinada pelos tipos de aplicativo/contêiner que você planeja executar. Para se ter uma ideia geral, geralmente vemos sucesso com tamanhos de imagem tão pequenos quanto o AWS t2.micro , que tem 1 vCPU e 1,0 GB de RAM disponível.
Dica
A imagem do contêiner KTranslate executa um único "tipo de trabalho" por vez. Por exemplo, um contêiner implantado para polling SNMP e coleta de trap não será utilizado para coleta de fluxo. Além disso, os contêineres implantados para coleta de fluxo estão limitados a um único tipo -nf.source
por contêiner. Isso significa que é comum ter vários contêineres implantados em um único host Docker a qualquer momento. Eles também podem compartilhar um arquivo de configuração comum, mas não é obrigatório.
Atualizando o contêiner
Manter a imagem do contêiner ktranslate atualizada é uma boa prática para receber as atualizações mais recentes e resolver problemas comuns por meio de diversas correções de bugs aplicadas durante o ciclo de vida de desenvolvimento. É recomendado sempre extrair a última imagem disponível ao reimplantar seu contêiner.
Extraia a imagem de contêiner mais recente disponível executando um dos seguintes procedimentos:
- Docker Hubbash$docker pull kentik/ktranslate:v2
- Quay.iobash$docker pull quay.io/kentik/ktranslate:v2
- Docker Hub
Colete os IDs e nomes de qualquer contêiner existente:
bash$docker ps -a --filter ancestor=kentik/ktranslate:v2 --format "{{.ID}} - {{.Names}}"Exemplo de saída:
3297b134a352 - ktranslate-snmp4962a854b386 - ktranslate-sflowRemova qualquer contêiner pré-existente
bash$docker rm -f $CONTAINER_IDReimplante seu contêiner ktranslate usando as configurações originais implantadas de SNMP, dados de fluxo ou coleta de syslog.
Importante
O arquivo de configuração usado por ktranslate é aplicado ao contêiner em tempo de execução. As alterações neste arquivo exigem que você remova e reinicie o(s) contêiner(es) em execução para aplicar as edições, com exceção do uso de tarefas de descoberta integradas.
Opções de tempo de execução do contêiner
Abaixo estão as diversas opções disponíveis durante o tempo de execução Docker para a imagem do contêiner ktranslate:
Nome da opção | Tipo | Obrigatório | Descrição |
---|---|---|---|
| Bandeira | ✓ | Define o caminho para o arquivo |
| Bandeira | ✓ | O ID da conta New Relic para a qual ktranslate enviará dados. |
| Bandeira | Substitui o nível de log info padrão para ktranslate. As opções disponíveis são | |
| Bandeira | Usado para configurar o contêiner no modo de descoberta SNMP para executar um único trabalho de descoberta, atualizar o arquivo de configuração YAML fornecido e sair. | |
| Bandeira | Usado para configurar integrated discovery jobs no contêiner de pesquisa SNMP programado para ser executado em um intervalo fixo. Essa configuração executará o trabalho de descoberta, atualizará o arquivo de configuração YAML fornecido e, em seguida, reiniciará os threads de coleta SNMP no contêiner de pesquisa SNMP para eliminar a necessidade de destruir/reiniciar todo o contêiner para dispositivos descobertos. | |
| Bandeira | Quando combinado com o sinalizador | |
| Bandeira | Usado para configurar o contêiner para pesquisar um dispositivo de destino sob demanda. | |
| Bandeira | Encaminha o log Docker de ktranslate para o New Relic Logs. | |
| Bandeira | Encaminha métricas de saúde de ktranslate para New Relic. | |
| Bandeira | Anexado ao nome do contêiner no Docker log para ajudar a isolar o log de vários contêineres no New Relic Logs. | |
| Bandeira | Define os endpoints regionais da API para ktranslate encaminhar telemetria para New Relic. As opções são | |
| Bandeira | Permite processar volumes maiores de dados. Recomendamos um núcleo de CPU disponível para cada 2.000 fluxos por segundo (fps) de dados de fluxo de rede enviados, ou para cada 1.000 dispositivos SNMP sendo monitorados, ou para cada 2.000 mensagens syslog por segundo coletadas por um contêiner. O padrão é | |
| Bandeira | Altera o valor da taxa de amostragem padrão na qual os fluxos são passados para o evento New Relic . Isso não acelera a configuração local da taxa de amostragem de fluxo em um dispositivo, mas pode retardá-la. Definir isso como | |
| Bandeira | Substitui o número de trabalhadores usados no processamento de pacotes de rede. Use um trabalhador para cada 4.000 fluxos por segundo (fps) de dados de fluxo de rede enviados. O padrão é | |
| Bandeira | Substitui a porta de escuta para pacotes de fluxo recebidos. O padrão é | |
| Bandeira | Configura o tipo de fluxo que este contêiner processará. As opções são | |
| Bandeira | Define o caminho para um arquivo de mapa do aplicativo no contêiner Docker , com base em uma montagem de volume do host do Docker passada como uma opção durante o tempo de execução. | |
| Bandeira | Define o | |
| Argumento | ✓ (Para contêineres de fluxo) | Este argumento define estaticamente os seguintes sinalizadores: |
| Argumento | ✓ (Para contêineres SNMP) | Este argumento define estaticamente as seguintes opções: |
| Argumento | ✓ (Para contêiner syslog) | Este argumento define estaticamente os seguintes sinalizadores: |
| Bandeira | Formato para analisar mensagens syslog. As opções são
| |
| Bandeira | IP:Port tupla para executar o servidor Syslog. Padrão: | |
| Variável de ambiente | ✓ | Variável de ambiente que deve ser usada durante o tempo de Docker execução para armazenar o New Relic ktranslate para enviar dados para a New Relic API. Exemplo: |
| Variável de ambiente | Variável de ambiente que pode ser usada durante o tempo de execução Docker para configurar ktranslate para enviar dados ao New Relic via proxy. Exemplo: | |
| Variável de ambiente | Variável de ambiente que pode ser usada durante o tempo de execução do docker para configurar ktranslate's | |
| Variável de ambiente | Variável de ambiente que pode ser usada durante o tempo de execução Docker para transmitir a chave de API dashboard Meraki para ktranslate. Exemplo: | |
Variável de ambiente | Variáveis de ambiente que podem ser usadas durante o tempo de execução Docker para recuperar segredos do AWS, Azure ou GCP. |