The AtlasThirdPartyIntegration custom resource configures third party integrations in an Atlas project. These resources allow you to manage third-party integrations with various monitoring services to collect and analyze the performance of your Atlas deployment.
Importante
Os Recursos Personalizados Não Excluem Mais Objetos por Padrão
O Atlas Kubernetes Operator utiliza arquivos de configuração de recurso personalizado para gerenciar sua configuração do Atlas , mas a partir do Atlas Kubernetes Operator,2.0 os recursos personalizados que você exclui no Kubernetes não são mais (por padrão) excluÃdos no Atlas. Em vez disso, o Atlas Kubernetes Operator simplesmente para de gerenciar estes recursos no Atlas. Por exemplo, se você excluir um
AtlasProjectRecurso Personalizado no Kubernetes, por padrão, o Atlas Kubernetes Operator não excluirá mais automaticamente o projeto correspondente do Atlas. Essa mudança no comportamento destina-se a ajudar a evitar exclusões acidentais ou inesperadas. Para saber mais, incluindo como reverter este comportamento para o padrão utilizado antes do Atlas Kubernetes Operator.,2 0consulte Novo padrão: Proteção de exclusão no Atlas Kubernetes 2 0Operator..Da mesma forma, o Atlas Kubernetes Operator não exclui equipes do Atlas se você as remover de um projeto do Atlas no Kubernetes com o Atlas Kubernetes Operator.
Defina explicitamente os detalhes de configuração desejados para evitar o uso implÃcito de valores de configuração padrão do Atlas . Em alguns casos, herdar os padrões do Atlas pode resultar em um loop de reconciliação que pode impedir que seu recurso personalizado atinja um estado
READY. Por exemplo, definir explicitamente o comportamento de autoscaling desejado em seu recurso personalizadoAtlasDeployment, conforme mostrado no exemplo incluÃdo, garante que um tamanho de instância estática em seu recurso personalizado não esteja sendo aplicado repetidamente a um sistema do Atlas que tenha o autoscaling ativado.autoScaling: diskGB: enabled: true compute: enabled: true scaleDownEnabled: true minInstanceSize: M30 maxInstanceSize: M40
O Atlas Kubernetes Operator realiza uma das seguintes ações usando o recurso da API de integração de serviços de terceiros do Atlas:
Cria uma nova integração de serviços de terceiros.
Atualiza uma integração de serviços de terceiros existente.
Exemplos
Exemplo básico
O exemplo seguinte mostra um recurso personalizado do AtlasThirdPartyIntegration que define uma integração DataDog dentro do projeto my-project.
apiVersion: atlas.mongodb.com/v1 kind: AtlasThirdPartyIntegration metadata: name: my-atlas-integ spec: projectRef: name: my-project namespace: my-operator-namespace type: DATADOG datadog: apiKeySecretRef: name: datadog-secret region: US sendCollectionLatencyMetrics: enabled sendDatabaseMetrics: enabled
Exemplo de CRD independente
The following example shows an AtlasThirdPartyIntegration independent CRD that defines the same Datadog integration defined in the Basic Example. This custom resource definition allows you to create this third-party integration in a project you don't manage in the same instance of Atlas Kubernetes Operator with which you define this resource. To enable independent operation, you must use an externalProjectRef instead of a projectRef, and you must supply a connectionSecret directly since this resource can't inherit API credentials from its parent project.
apiVersion: atlas.mongodb.com/v1 kind: AtlasThirdPartyIntegration metadata: name: my-atlas-integ spec: externalProjectRef: projectID: 66e2f2b621571b7e69a89b66 connectionSecret: name: atlas-connection-secret type: DATADOG datadog: apiKeySecretRef: name: datadog-secret region: US sendCollectionLatencyMetrics: enabled sendDatabaseMetrics: enabled
Parâmetros
AtlasThirdPartyIntegration
AtlasThirdPartyIntegration é o esquema da API de integrações de terceiros do atlas 3.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string | atlas.mongodb.com/v1 | true |
| string |
| true |
| objeto | Consulte a documentação do Kubernetes | true |
| objeto |
| false |
| objeto |
| false |
AtlasThirdPartyIntegration.spec
AtlasThirdPartyIntegrationSpec contém a configuração esperada para uma integração
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| enum | Tipo de integração. enumeração: | true |
| objeto | Nome do segredo contendo as chaves privada e pública do Atlas | false |
| objeto | O Datadog contém os campos de configuração para Integração do Datadog. | false |
| objeto |
| false |
| objeto |
| false |
| objeto |
| false |
| objeto |
| false |
| objeto |
| false |
| objeto |
| false |
| objeto | Prometheus contém os campos de configuração para a integração de Prometheus. | false |
| objeto | O Slack contém os campos de configuração para a integração do Slack. | false |
| objeto |
| false |
| objeto | Webhook contém os campos de configuração para integração do webhook. | false |
AtlasThirdPartyIntegration.spec.connectionSecret
Nome do segredo que contém as chaves privadas e públicas da Atlas API.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string | Nome do recurso que está sendo referenciado Mais informações: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names | true |
AtlasThirdPartyIntegration.spec.datadog
O Datadog contém os campos de configuração para Integração do Datadog.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| objeto | APIKeySecretRef contém o nome de um segredo que contém a chave Datadog | true |
| string | Região é a região do Datadog | true |
| enum |
| false |
| enum |
| false |
| enum |
| false |
| enum |
| false |
AtlasThirdPartyIntegration.spec.datadog.apiKeySecretRef
APIKeySecretRef contém o nome de um segredo que contém a chave de API Datadog .
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string | Nome do recurso que está sendo referenciado Mais informações: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names | true |
AtlasThirdPartyIntegration.spec.externalProjectRef
externalProjectRef contém o ID do grupo pai do Atlas. Mutualmente exclusivo com o campo"projectRef".
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string |
| true |
AtlasThirdPartyIntegration.spec.microsoftTeams
O MicrosoftTeams contém os campos de configuração para a integração do Microsoft Teams.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| objeto | URLSecretRef contém o nome de um segredo que contém o segredo | true |
AtlasThirdPartyIntegration.spec.microsoftTeams.urlSecretRef
URLSecretRef contém o nome de um segredo que contém o URL secreto do Microsoft Teams.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string | Nome do recurso que está sendo referenciado Mais informações: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names | true |
AtlasThirdPartyIntegration.spec.newRelic
NewRelic contém os campos de configuração para a integração do New Relic.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| objeto |
| true |
AtlasThirdPartyIntegration.spec.newRelic.credentialsSecretRef
CredentialsSecretRef detém o nome de um segredo que contém as credenciais do New Relic: ID da conta, chave de licença, tokens de leitura e gravação.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string | Nome do recurso que está sendo referenciado Mais informações: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names | true |
AtlasThirdPartyIntegration.spec.opsGenie
O OpsGenie contém os campos de configuração para a integração do Ops Genie.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| objeto | APIKeySecretRef contém o nome de um segredo que contém a chave | true |
| string | Região é a região do Ops Genie. | true |
AtlasThirdPartyIntegration.spec.opsGenie.apiKeySecretRef
APIKeySecretRef contém o nome de um segredo que contém a chave API do Ops Genie.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string | Nome do recurso que está sendo referenciado Mais informações: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names | true |
AtlasThirdPartyIntegration.spec.pagerDuty
PagerDuty contém os campos de configuração para Integração do PagerDuty.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string | Região é a região do Serviço do Pager. | true |
| objeto |
| true |
AtlasThirdPartyIntegration.spec.pagerDuty.serviceKeySecretRef
ServiceKeySecretRef detém o nome de um segredo que contém a chave de serviço Pager Duty.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string | Nome do recurso que está sendo referenciado Mais informações: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names | true |
AtlasThirdPartyIntegration.spec.projectRef
projectRef é uma referência ao recurso pai AtlasProject. Mutualmente exclusivo com o campo"externalProjectRef".
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string | Nome do Recurso Kubernetes | true |
| string | Namespace do Recurso Kubernetes | false |
AtlasThirdPartyIntegration.spec.prometheus
Prometheus contém os campos de configuração para a integração de Prometheus.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string | Habilitado é verdadeiro quando a integração Prometheus está habilitada. | true |
| objeto |
| true |
| enum |
| true |
AtlasThirdPartyIntegration.spec.prometheus.prometheusCredentialsSecretRef
PrometheusCredentialsSecretRef detém o nome de um segredo contendo o Prometheus. nome de usuário e senha
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string | Nome do recurso que está sendo referenciado Mais informações: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names | true |
AtlasThirdPartyIntegration.spec.slack
O Slack contém os campos de configuração para a integração do Slack.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| objeto | APITokenSecretRef contém o nome de um segredo que contém o token Slack | true |
| string |
| true |
| string |
| true |
AtlasThirdPartyIntegration.spec.slack.apiTokenSecretRef
APITokenSecretRef contém o nome de um segredo que contém o token da API do Slack.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string | Nome do recurso que está sendo referenciado Mais informações: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names | true |
AtlasThirdPartyIntegration.spec.victorOps
VictorOps contém os campos de configuração para Integração do VictorOps.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| objeto | APIKeySecretRef é o nome de um segredo que contém a chave Victor Ops | true |
| string |
| true |
AtlasThirdPartyIntegration.spec.victorOps.apiKeySecretRef
APIKeySecretRef é o nome de um segredo que contém a chave API Victor Ops.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string | Nome do recurso que está sendo referenciado Mais informações: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names | true |
AtlasThirdPartyIntegration.spec.webhook
Webhook contém os campos de configuração para integração do webhook.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| objeto | URLSecretRef contém o nome de um segredo que contém o webhook | true |
AtlasThirdPartyIntegration.spec.webhook.urlSecretRef
URLSecretRef contém o nome de um segredo que contém o URL e o segredo do webhook.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string | Nome do recurso que está sendo referenciado Mais informações: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names | true |
AtlasThirdPartyIntegration.status
AtlasThirdPartyIntegrationStatus mantém o status de uma integração
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| [] objeto | Condições que contêm os detalhes de status | false |
| string |
| false |
AtlasThirdPartyIntegration.status. conditions
A condição contém detalhes para um aspecto do estado atual deste recurso API.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string |
| true |
| string | a mensagem é um | true |
| string | contém um identificador programático que indica o | true |
| enum | o status da condição, um de verdadeiro, falso, desconhecido. enumeração: verdadeiro, falso, desconhecido | true |
| string | tipo de condição em | true |
| inteiro |
| false |