Você pode instalar e configurar o monitoramento do SQL Server no Kubernetes usando o chart do Helm mssql-otel. Opcionalmente, o chart também pode executar um job de configuração que cria o login de monitoramento para você.
Instalação guiada
Para instalar isso pela interface da New Relic, acesse one.newrelic.com > Integrations & Agents > Microsoft SQL Server (Database 360) . Siga as instruções na tela para configurar a integração. Esta página aborda apenas a instalação manual.
Importante
Este chart suporta apenas a Autenticação do SQL Server (nome de usuário/senha). Ele não suporta a Autenticação do Windows, a Autenticação de domínio do Windows ou gMSA. O coletor sempre acessa o SQL Server remotamente pela rede, seja executado no Linux ou no Windows, auto-hospedado ou no RDS, portanto, a autenticação do SQL funciona de forma idêntica em todos os casos. Ele também relata apenas métricas do SQL Server (sem métricas de host/infraestrutura), já que o coletor é executado como uma implantação do Kubernetes em vez de no próprio host do SQL Server.
Pré-requisitos
Chave de licença da New Relic válida.
Helm 3.0 ou posterior, e
kubectlconfigurado para acessar seu cluster do Kubernetes.Conectividade de rede do seu cluster do Kubernetes para o host do SQL Server (ou endpoint do RDS) e porta:
- Auto-hospedado: um caminho roteado para o host do SQL Server (VPN, peering ou rede compartilhada), e o firewall do lado do SQL Server deve permitir o IP de origem da conexão.
- AWS RDS: emparelhamento de VPC, um transit gateway ou posicionamento em VPC compartilhada com a instância do RDS, e o grupo de segurança do RDS deve permitir a porta do SQL Server (
1433por padrão) a partir da origem de saída do cluster.
Um login de monitoramento que você já criou ou credenciais de administrador do SQL Server (um login com a função
sysadmin, comosaou o usuário mestre do RDS) para que o job de configuração do chart possa criar um para você. Veja Configurar credenciais de monitoramento abaixo.
Crie o namespace
Crie o namespace onde a instalação será realizada. Ele deve existir antes da criação de qualquer secret na próxima etapa, já que helm install --create-namespace cria o namespace apenas durante a etapa final de instalação:
$kubectl create namespace newrelicDica
Defina-o como o namespace padrão para o seu contexto kubectl atual para que não seja necessário passar -n em todos os comandos abaixo:
$kubectl config set-context --current --namespace=newrelicConfigure as credenciais de monitoramento
Decida se deseja que o job de configuração do chart crie o login de monitoramento do SQL Server para você e, caso contrário, como você fornecerá as credenciais dele:
Configure os valores do Helm
Defina mssql.topology para corresponder ao seu ambiente:
Valor | Descrição |
|---|---|
| SQL Server auto-hospedado, acessado pela rede (host Linux ou Windows). |
| SQL Server no AWS RDS. |
Use o values.yaml que corresponde ao método de credencial escolhido na etapa anterior:
Parâmetro | Descrição |
|---|---|
| Sua chave de licença New Relic. |
| O endpoint OTLP/HTTP da sua região, como um URL completo com esquema:
(US) ou
(EU). Para mais informações, consulte a documentação dos endpoints OTLP da New Relic . |
/
| Seu host do SQL Server (ou endpoint do RDS) e porta, acessíveis a partir do cluster. |
/
| Opcional. Defina
para criptografar a conexão com o SQL Server e
para ignorar a validação do certificado (útil para certificados autoassinados em ambientes de teste). |
/
| Uma imagem compatível com
usada pelo job de configuração. Não há padrão: o
da Microsoft, que pode ser baixado gratuitamente, é de 2017 e não tem manutenção; portanto, confirme se está confortável com a idade (incluindo CVEs sem correção) antes de usá-lo, ou crie você mesmo uma imagem atual a partir dos pacotes apt
da Microsoft. Necessário apenas para credenciais baseadas em segredos, em que o job de configuração está habilitado. |
Dica
Consulte o values.yaml do chart para ver todas as opções de configuração disponíveis, incluindo mssql.collectionInterval, mssql.maxConcurrentQueries e a válvula de escape additionalReceiverConfig.
(Opcional) Monitorar várias instâncias a partir de um release
Em vez de mssql.*, defina mssqlMulti.enabled: true para monitorar várias instâncias do SQL Server (self-hosted ou RDS) a partir de um único pod de coletor em um release. Os dois modos são mutuamente exclusivos: não defina mssql.server e mssqlMulti.enabled: true no mesmo release.
O modo multi-instância não possui um caminho de nome de usuário/senha em texto simples: cada instância precisa de seu próprio secret do Kubernetes com credenciais de monitoramento. Decida se você também deseja que o job de configuração crie cada login de monitoramento para você:
Parâmetro | Descrição |
|---|---|
| Defina como
para monitorar várias instâncias de uma versão em vez de
. O padrão é
. |
|
ou
, mesmo significado que
, compartilhado por todas as instâncias nesta versão. |
| Lista de instâncias a serem monitoradas. Cada entrada requer um
exclusivo,
(
tem como padrão
) e
; adicione
por entrada apenas quando
for
. |
Dica
As configurações de scrape (intervalo de coleta, TLS, métricas) se aplicam de forma idêntica a cada instância em mssqlMulti.databases. Não há substituição por instância. Use additionalReceiverConfig para qualquer item que precise ser diferente. O job de configuração é executado uma vez por instância (<release>-setup-<name>) em vez de uma vez por release.
Instale o Helm chart
Adicione o repositório Helm da New Relic:
bash$helm repo add newrelic https://helm-charts.newrelic.com$helm repo updateInstale o chart usando seu arquivo
values.yaml:bash$helm upgrade --install mssql-otel newrelic/mssql-otel \>-n newrelic \>--create-namespace \>-f values.yaml
Verifique a instalação
Verifique se o job de configuração foi concluído (se ativado) e se o pod do coletor está em execução:
bash$kubectl get jobs,pods -n newrelic --watchExecute esta consulta no criador de consulta para confirmar se os dados estão chegando:
SELECT count(*) FROM MetricWHERE metricName LIKE 'sqlserver.%'AND instrumentation.provider = 'opentelemetry'SINCE 10 minutes ago
Encontre e use seus dados
Assim que os dados estiverem sendo coletados, será possível acessar o monitoramento abrangente do banco de dados SQL Server por meio da interface do New Relic.
Para encontrar sua entidade de banco de dados SQL Server no New Relic:
Vá para one.newrelic.com > All capabilities > Databases.
Na dropdown Entity type, selecione MSSQL instance e clique em Apply.
Selecione seu banco de dados SQL Server na lista de entidades.
Após configurar o monitoramento do SQL Server com o NRDOT, você pode:
- Crie dashboards personalizados para visualizar suas métricas de banco de dados
- Configure alertas para limites críticos de desempenho do banco de dados
- Explore seus dados usando os recursos de consulta do New Relic
Documentação relacionada
Referência de métricas
Saiba mais sobre as métricas disponíveis coletadas pelo NRDOT Collector.
Resolução de problemas
Saiba como solucionar problemas na sua configuração de monitoramento do MSSQL no New Relic.
Configurar a correlação entre APM e banco de dados
Aprenda a correlacionar o desempenho do seu aplicativo com as operações de banco de dados no New Relic.