AtlasThirdPartyIntegration 사용자 지정 리소스 Atlas 프로젝트 에서 타사 통합을 구성합니다. 이러한 리소스를 사용하면 다양한 모니터링 서비스와의 타사통합을 관리 Atlas 배포서버 의 성능을 수집하고 분석 .
중요
Custom Resource(사용자 정의 리소스)는 더 이상 기본적으로 객체를 삭제하지 않음
Atlas Kubernetes Operator 사용자 지정 리소스 구성 파일을 사용하여 Atlas 구성을 관리 하지만, Atlas Kubernetes Operator 부터는 Kubernetes 에서 삭제 사용자 지정 2.0 리소스가 더 이상 ( 기본값) Atlas 에서 삭제되지 않습니다. 대신 Atlas Kubernetes Operator Atlas 에서 해당 리소스 관리를 중지할 뿐입니다. 예시 들어, Kubernetes 에서 Custom Resource(사용자
AtlasProject지정 리소스)를 삭제 하면 기본값 으로 Atlas Kubernetes Operator 더 이상 Atlas 에서 해당 프로젝트 자동으로 삭제하지 않습니다. 이러한 동작 변경은 우발적이거나 예기치 않은 삭제를 방지하기 위한 것입니다. 이 동작을 Atlas Kubernetes Operator 이전에 사용된 기본값 으로 되돌리는 방법 2 등 자세히 학습0., 새 기본값: Atlas Kubernetes Operator 의 삭제 보호 기능 2 을0 참조하세요.마찬가지로, Atlas Kubernetes Operator 를 사용하여 Kubernetes 의 Atlas 프로젝트 에서 팀을 제거 하는 경우 Atlas Kubernetes Atlas Kubernetes Operator 는 Atlas 에서 팀을 삭제 하지 않습니다.
기본값 Atlas 구성 값을 암시적으로 사용하지 않으려면 원하는 구성 세부 정보를 명시적으로 정의하세요. 경우에 따라 Atlas 기본값을 상속하면 조정 루프가 발생하여 사용자 지정 리소스
READY상태 달성하지 못할 수 있습니다. 예시 들어AtlasDeployment사용자 지정 리소스 에 원하는 자동 확장 동작을 명시적으로 정의하면 포함된 예시 와 같이 사용자 지정 리소스 의 정적 인스턴스 크기가 자동 확장이 활성화된 Atlas 배포서버 에 반복적으로 적용되지 않도록 할 수 있습니다.autoScaling: diskGB: enabled: true compute: enabled: true scaleDownEnabled: true minInstanceSize: M30 maxInstanceSize: M40
Atlas Kubernetes Operator는 Atlas 타사 서비스 통합 API 리소스를 사용하여 다음 조치 중 하나를 수행합니다.
새로운 타사 서비스 통합을 생성합니다.
기존 타사 서비스 통합을 업데이트합니다.
예시
기본 예시
다음 예시 my-project 프로젝트 내에서 DataDog 통합을 정의하는 AtlasThirdPartyIntegration 사용자 지정 리소스 보여줍니다.
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
독립적인 CRD 예제
다음 예시 AtlasThirdPartyIntegration 기본 예제 에 정의된 것과 동일한 DataDog 통합을 정의하는 독립적인 CRD를 보여줍니다. 이 사용자 지정 리소스 정의를 사용하면 이 리소스 정의하는 데 사용되는 동일한 Atlas Kubernetes Operator 인스턴스 에서 관리 하지 않는 프로젝트 에서 이러한 타사 통합을 생성할 수 있습니다. 독립적인 작업을 활성화 하려면 projectRef 대신 externalProjectRef 를 사용해야 하며, 이 리소스 상위 프로젝트 로부터 API 자격 증명 상속할 수 없으므로 connectionSecret 를 직접 제공해야 합니다.
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
매개변수
이 섹션에서는 사용 가능한 AtlasThirdPartyIntegration 사용자 지정 리소스 매개 변수에 대해 설명합니다.
metadata.name유형: 문자열
필수 사항
AtlasThirdPartyIntegrationCustom Resource(사용자 지정 리소스)가 이 타사 통합을 프로젝트에 추가하는 데 사용하는 이름을 지정합니다.
metadata.namespace유형: 문자열
옵션
AtlasThirdPartyIntegration사용자 지정 리소스 포함할 네임스페이스입니다. 지정하지 않으면 Atlas Kubernetes Operatorkubectl에서 설정하다 현재 네임스페이스 사용합니다.
spec.connectionSecret유형: 문자열
조건부
Atlas Kubernetes Operator Atlas 에 연결하는 데 사용하는 조직 ID 및 API 키가 포함된 불투명 시크릿 의 이름입니다. 지정되지 않은 경우 Atlas Kubernetes Operator 다음 중 하나로 대체됩니다.
상위
atlasProject의spec.connectionSecretRef.name매개 변수기본값
global시크릿(상위atlasProject에 대해spec.connectionSecretRef.name이 정의되지 않은 경우)
이 매개변수는 독립적인 CRD의 경우 필수입니다.
Atlas Kubernetes Operator
atlas.mongodb.com/type=credentials불필요한 시크릿을 감시하지 않기 위해 레이블이 있는 시크릿만 감시합니다.다음 예시에서는 시크릿에 레이블을 지정합니다.
kubectl label secret the-user-password atlas.mongodb.com/type=credentials
spec.externalProjectRef유형: 문자열
조건부
타사 통합이 속한 프로젝트 의 ID . 기존 Atlas 프로젝트의 프로젝트 ID 지정해야 합니다. 이 매개변수는 다음 중 하나에서 managed 프로젝트에 속하는 타사 통합에 필요합니다.
Atlas Kubernetes Operator 의 다른 인스턴스
Atlas Kubernetes Operator 이외의 도구
Atlas Kubernetes Operator 의 동일한 인스턴스 에서 managed 하는 프로젝트에 속한 배포서버의 경우
spec.externalProjectRef.id을(를) 사용하지 않는 경우spec.projectRef.name을(를) 사용하세요.타사 통합은 하나의 프로젝트 에만 속할 수 있습니다. 여러 프로젝트에 대해 동일한 타사 통합을 정의하려면 각 프로젝트 에 대한 사용자 지정 리소스 정의를 만듭니다.
spec.projectRef.name유형: 문자열
조건부
타사 통합이 속한 프로젝트 의 이름입니다. 기존
AtlasProjectCustom Resource(사용자 지정 리소스)를 지정해야 합니다. 이 매개변수는 동일한 인스턴스 Atlas Kubernetes Operator 에서 managed 프로젝트에 속한 타사 통합에만 적용됩니다.다음 중 하나에서 managed 프로젝트에 속한 타사 통합의 경우:
Atlas Kubernetes Operator 의 다른 인스턴스
Atlas Kubernetes Operator 이외의 도구
spec.externalProjectRef.id을(를) 사용하세요.타사 통합은 하나의 프로젝트 에만 속할 수 있습니다. 여러 프로젝트에 대해 동일한 타사 통합을 정의하려면 각 프로젝트 에 대한 사용자 지정 리소스 정의를 만듭니다.
spec.type유형: 문자열
필수 사항
Atlas 와 통합할 타사 서비스의 이름입니다. 이 값은 다음 중 하나여야 합니다.
DATADOGMICROSOFT_TEAMSNEW_RELICOPS_GENIEPAGER_DUTYPROMETHEUSSLACKVICTOR_OPSWEBHOOK
각 통합
type에는 고유한 구성 필드 설정하다 가 필요합니다. 예시 들어type을DATADOG로 설정하다 경우spec.datadog문서 와 해당 하위 필드만 구성해야 합니다.동일한 프로젝트 내에서 여러 타사 통합을 정의하려면 각각에 대해 별도의 CRD를 만들어야 합니다. 특정 프로젝트 내에서 각 통합 유형의 인스턴스 하나만 정의할 수 있습니다. 이는 이 CRD와
AtlasProjectCRD의spec.integrations매개변수 모두에 적용됩니다.
spec.datadog유형: 문서
조건부
DataDog 타사 서비스 통합에 대한 구성 매개변수 선언을 문서화합니다.
spec.type값을DATADOG로 설정하다 경우 이 매개변수를 선언해야 합니다.
spec.datadog.apiKeySecretRef.name유형: 문자열
조건부
DataDog API 키가 포함된 시크릿입니다.
spec.type값을DATADOG로 설정하다 경우 이 매개변수를 선언해야 합니다.
spec.datadog.region유형: 문자열
조건부
DataDog 서비스가 호스팅되는 지리적 리전 입니다.
spec.type값을DATADOG로 설정하다 경우 이 매개변수를 선언해야 합니다.
spec.datadog.sendCollectionLatencyMetrics유형: 문자열
조건부
DataDog에 컬렉션 지연 시간 지표 보낼지 여부를 제어하는 토글입니다.
enabled또는disabled여야 합니다.spec.type값을DATADOG로 설정하다 경우 이 매개변수를 선언해야 합니다.
spec.datadog.sendDatabaseMetrics유형: 문자열
조건부
데이터베이스 지표 DataDog에 보낼지 여부를 제어하는 토글입니다.
enabled또는disabled중 하나여야 합니다.spec.type값을DATADOG로 설정하다 경우 이 매개변수를 선언해야 합니다.
spec.microsoftTeams.urlSecretRef.name유형: 문자열
조건부
Microsoft Teams 시크릿 URL 포함된 시크릿입니다.
webhookURL값을 포함해야 합니다.spec.type값을MICROSOFT_TEAMS로 설정하다 경우 이 매개변수를 선언해야 합니다.
spec.newRelic.credentialsSecretRef.name유형: 문자열
조건부
New Relic 자격 증명 포함된 시크릿입니다. 여기에는 다음이 포함되어야 합니다.
새 유물 계정 ID
New Relic 라이선스 키
New Relic 읽기 및 쓰기 (write) 토큰
spec.type값을NEW_RELIC로 설정하다 경우 이 매개변수를 선언해야 합니다.
spec.opsGenie유형: 문서
조건부
Ops Genie 타사 서비스 통합을 위한 구성 매개변수 선언을 문서화합니다.
spec.type값을OPS_GENIE로 설정하다 경우 이 매개변수를 선언해야 합니다.
spec.opsGenie.apiKeySecretRef.name유형: 문자열
조건부
Ops Genie API 키가 포함된 시크릿입니다.
spec.type값을OPS_GENIE로 설정하다 경우 이 매개변수를 선언해야 합니다.
spec.opsGenie.region유형: 문자열
조건부
Ops Genie 서비스가 호스팅되는 지리적 리전 입니다.
spec.type값을OPS_GENIE로 설정하다 경우 이 매개변수를 선언해야 합니다.
spec.pagerDuty유형: 문서
조건부
호출기 듀티 타사 서비스 통합에 대한 구성 매개변수 선언을 문서화합니다.
spec.type값을PAGER_DUTY로 설정하다 경우 이 매개변수를 선언해야 합니다.
spec.pagerDuty.region유형: 문자열
조건부
Ops Genie 서비스가 호스팅되는 지리적 리전 입니다.
spec.type값을OPS_GENIE로 설정하다 경우 이 매개변수를 선언해야 합니다.
spec.prometheus유형: 문서
조건부
Prometheus 타사 서비스 통합에 대한 구성 매개변수 선언을 문서화합니다.
spec.type값을PROMETHEUS로 설정하다 경우 이 매개변수를 선언해야 합니다.
spec.prometheus.enabled유형: 문자열
조건부
Prometheus 데이터 컬렉션 허용하도록 토글합니다.
enabled또는disabled중 하나여야 합니다.spec.type값을PROMETHEUS로 설정하다 경우 이 매개변수를 선언해야 합니다.
spec.prometheus.serviceDiscovery유형: 문자열
조건부
Prometheus가 서비스를 검색하는 방법을 결정하는 토글입니다.
http또는file로 설정하다 해야 합니다.spec.type값을PROMETHEUS로 설정하다 경우 이 매개변수를 선언해야 합니다.
spec.prometheus.prometheusCredentialsSecretRef.name유형: 문자열
조건부
Prometheus 사용자 이름 과 비밀번호가 포함된 시크릿입니다.
spec.type값을PROMETHEUS로 설정하다 경우 이 매개변수를 선언해야 합니다.
spec.slack유형: 문서
조건부
Slack 타사 서비스 통합을 위한 구성 매개변수 선언을 문서화합니다.
spec.type값을SLACK로 설정하다 경우 이 매개변수를 선언해야 합니다.
spec.slack.apiTokenSecretRef.name유형: 문자열
조건부
Slack API 토큰이 포함된 시크릿입니다.
spec.type값을SLACK로 설정하다 경우 이 매개변수를 선언해야 합니다.
spec.slack.channelName유형: 문자열
조건부
Atlas 와 통합할 Slack 채널 의 이름입니다.
spec.type값을SLACK로 설정하다 경우 이 매개변수를 선언해야 합니다.
spec.slack.teamName유형: 문자열
조건부
spec.slack.channelName이(가) 속한 Slack 팀 의 이름입니다.spec.type값을SLACK로 설정하다 경우 이 매개변수를 선언해야 합니다.
spec.victorOps유형: 문서
조건부
Victor Ops 타사 서비스 통합을 위한 구성 매개변수 선언을 문서화합니다.
spec.type값을VICTOR_OPS로 설정하다 경우 이 매개변수를 선언해야 합니다.
spec.victorOps.apiKeySecretRef.name유형: 문자열
조건부
Victor Ops의 API 키가 포함된 시크릿입니다.
spec.type값을VICTOR_OPS로 설정하다 경우 이 매개변수를 선언해야 합니다.