MongoDB.local SF, Jan 15: See the speaker lineup & ship your AI vision faster. Use WEB50 to save 50%
Find out more >
Docs 菜单
Docs 主页
/ /
/ / /

AtlasDataFederation 自定义资源

注意

Atlas Kubernetes Operator 不支持 Atlas for 政府 的AtlasDataFederation自定义资源。

AtlasDataFederation 自定义资源在Atlas中配置联合数据库实例。当您创建 AtlasDataFederation 自定义资源时, Atlas Kubernetes Operator会尝试在Atlas中创建或更新联合数据库实例。您可以使用联合数据库实例来运行联合查询。

重要

自定义资源不再默认删除对象

  • Atlas Kubernetes Operator使用 自定义资源配置文件来管理Atlas配置,但从Atlas Kubernetes Operator2.0 开始,您在Kubernetes中删除的自定义资源不再(默认)在Atlas中删除。相反, Atlas Kubernetes Operator只是停止管理Atlas中的这些资源。 AtlasProject示例,如果您在Kubernetes中删除 自定义资源,默认默认, Atlas Kubernetes Operator不再自动从Atlas中删除相应的项目。这种行为更改旨在帮助防止意外删除。 要学习;了解详情,包括如何将此行为恢复为Atlas Kubernetes Operator2 0之前使用的默认行为,请参阅新的默认值: Atlas Kubernetes Operator2 中的删除保护。0 。

    同样,如果您使用Atlas Kubernetes Operator从Kubernetes中的Atlas项目中删除团队,则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 资源高级集群 API 资源来创建新的联合数据库实例或更新现有的联合数据库实例。 如果您指定spec.serverlessSpec下的字段值,Atlas Kubernetes Operator 将使用 Atlas Serverless Instance API 资源为联合数据库实例创建或配置私有端点。

如果您从 Kubernetes 集群中删除AtlasDataFederation资源,Atlas Kubernetes Operator 将从 Atlas 中删除联合数据库实例。

以下示例显示了已配置私有端点的AtlasDataFederation自定义资源规范:

apiVersion: atlas.mongodb.com/v1
kind: AtlasDataFederation
metadata:
name: my-federated-deployment
spec:
projectRef:
name: my-project
namespace: default
cloudProviderConfig:
aws:
roleId: 12345678
testS3Bucket: my-bucket
dataProcessRegion:
cloudProvider: AWS
region: OREGON_USA
name: my-fdi
storage:
databases:
- collections:
- dataSources:
- allowInsecure: false
collection: my-collection
collectionRegex:
database: my-database
databaseRegex:
defaultFormat: ".avro"
path: /
provenanceFieldName: string
storeName: my-data-store
urls:
- string:
name: my-collection-mdb
maxWildcardCollections: 100
name: my-database-mdb
views:
- name: my-view
pipeline:
source: my-source-collection
stores:
- name: my-store
provider: S3
additionalStorageClasses:
- STANDARD
bucket: my-bucket
delimiter: /
includeTags: false
prefix: data-
public: false
region: US_WEST_1
privateEndpoints:
- endpointId: vpce-3bf78b0ddee411ba1
provider: AWS
type: DATA_LAKE
- endpointId: vpce-3bf78b0ddee411ba2
provider: AWS
type: DATA_LAKE

AtlasDataFederation 是Atlas Data Federation API的模式。

Name
类型
说明
必需

apiVersion

字符串

atlas.mongodb.com/v1

true

kind

字符串

AtlasDataFederation

true

metadata

对象

有关 metadata字段的字段,请参阅Kubernetes API 文档。

true

spec

对象

DataFederationSpec 定义了 AtlasDataFederation 的目标状态。

false

status

对象

DataFederationStatus 定义了 AtlasDataFederation 的观察到的状态。

false

DataFederationSpec 定义了 AtlasDataFederation 的目标状态。

Name
类型
说明
必需

name

字符串

人类可读标签,用于标识联合数据库实例。

true

projectRef

对象

项目是对部署所属的 AtlasProject资源的引用。

true

cloudProviderConfig

对象

托管此联合数据库实例的云提供商的配置。

false

dataProcessRegion

对象

有关联邦数据库实例路由客户端连接的云提供商区域的信息。

false

privateEndpoints

[]对象

用于将联合数据库实例和在线存档添加到指定项目的私有端点。

false

storage

对象

每个数据存储的配置信息及其到 MongoDB Atlas数据库的映射。

false

项目是对部署所属的 AtlasProject资源的引用。

Name
类型
说明
必需

name

字符串

Kubernetes资源名称

true

namespace

字符串

Kubernetes资源的命名空间

false

托管此联合数据库实例的云提供商的配置。

Name
类型
说明
必需

aws

对象

AWS 中运行Data Federation的配置。

false

在 AWS 中运行Data Federation的配置。

Name
类型
说明
必需

roleId

字符串

data lake可用于访问权限数据存储的角色的唯一标识符。如果指定 cloudProviderConfig,则为必填项。

false

testS3Bucket

字符串

所提供的角色ID 有权访问权限的S3 数据存储桶的名称。如果指定 cloudProviderConfig,则为必填项。

false

有关联邦数据库实例路由客户端连接的云提供商区域的信息。

Name
类型
说明
必需

cloudProvider

枚举

托管联合数据库实例基础架构的云服务的名称。枚举:AWS

false

region

枚举

regiondata lake将客户端连接路由到的 的名称。枚举: SYDNEY_AUSMUMBAI_INDFRANKFURT_DEUDUBLIN_IRLLONDON_GBRVIRGINIA_USAOREGON_USASAOPAULO_BRASINGAPORE_SGP

false

Name
类型
说明
必需

endpointId

字符串

唯一的 22 字符构成的字母数字字符串,用于标识私有端点。

false

provider

字符串

用于标识云服务提供商的可读标签。Atlas Data Lake 仅支持 Amazon Web Services。

false

type

字符串

人类可读标签,用于标识与此私有端点关联的资源type

false

每个数据存储的配置信息及其到MongoDB Atlas数据库的映射。

Name
类型
说明
必需

databases

[]对象

包含此data lake的可查询 databases 和集合的数组。

false

stores

[]对象

包含data lake的数据 stores 的数组。

false

与此data lake关联的数据库。数据库包含集合和视图。

Name
类型
说明
必需

collections

[]对象

collections 和映射到商店数据存储的数据源组成的数组。

false

maxWildcardCollections

整型

数据库中通配符集合的最大数量。这仅适用于 S3 数据源。最小值为 1,最大值为 1000。默认值为 100。

false

name

字符串

人类可读标签,用于标识数据库data lake将数据映射到的数据库。

false

views

[]对象

应用集合的聚合管道数组。这仅适用于 S3 数据源。

false

集合映射到商店数据存储。

Name
类型
说明
必需

dataSources

[]对象

包含映射到此data lake的集合的数据存储的数组。

false

name

字符串

人类可读标签,用于标识 MongoDB Atlas将数据存储中的数据映射到的集合。

false

Name
类型
说明
必需

allowInsecure

布尔

用于验证指定 URL 中的方案的标志。如果为 true,则允许不安全的 HTTP 方案,不验证服务器的证书链和主机名,并接受服务器提供的具有任何主机名的任何证书。如果为 false,则仅允许安全的 HTTPS 方案。

false

collection

字符串

人类可读标签,用于标识数据库中的 collection。要创建通配符 (*)集合,必须省略此参数。

false

collectionRegex

字符串

用于创建通配符 (*)集合的正则表达式模式。

false

database

字符串

用于标识数据库的人类可读标签,其中包含集群中的集合。必须省略此参数才能为动态生成的数据库生成通配符 (*) 集合。

false

databaseRegex

字符串

用于创建通配符 (*)数据库的正则表达式模式。

false

defaultFormat

枚举

MongoDBCloudstoreName 在搜索2 2时遇到不带文件扩展名的文件时使用的文件格式。枚举:.avro,.avro.bz,.avro.gz,.bson,.bson.bz,.bson.gz,.bsonx,.csv,.csv.bz,.csv2 2.gz、.json、.json.bz 、.json.gz、.orc、.parquet、.tsv、.tsv.bz2 、.tsv.gz

false

path

字符串

文件 path,用于控制 MongoDB Cloud 在将文件映射到集合之前如何搜索和解析 storeName 中的文件。指定 / 以捕获前缀路径中的所有文件和文件夹。

false

provenanceFieldName

字符串

包含结果中文档来源的字段的名称。 MongoDB Atlas在结果中为每个支持的提供商返回不同的字段。

false

storeName

字符串

人类可读标签,用于标识 MongoDB Cloud 映射到集合的数据存储。

false

urls

[]string

可公开访问的数据文件的 URL。不能指定需要身份验证的URL。 Atlas Data Lake会为每个 URL 创建一个分区。如果为空或省略, Atlas 数据湖将使用 storeName 参数中指定的存储中的 URL。

false

Name
类型
说明
必需

name

字符串

用于标识视图的人类可读标签,对应于collection上的聚合管道。

false

pipeline

字符串

要应用源集合的聚合 pipeline 阶段。

false

source

字符串

人类可读标签,用于标识视图的 source集合。

false

存储是一群组定义数据存储位置的设置。

Name
类型
说明
必需

additionalStorageClasses

[]string

AWS S3存储类的集合。 Atlas Data Lake在查询结果中包含这些存储类中的文件。

false

bucket

字符串

标识 AWS S3 存储桶的人类可读标签。此标签必须与data lake可以访问权限配置的 AWS 身份和访问管理 (IAM)凭证访问的 S3 bucket 名称完全匹配。

false

delimiter

字符串

在数据存储中分隔路径段的 delimiterMongoDB Atlas使用 delimiter 高效地遍历具有分层目录结构的 S3 存储桶。您可以指定 S3对象键支持的任何字符作为分隔符。

false

includeTags

布尔

指示是否在给定路径中的文件上使用 S3 标签作为附加分区属性的标志。如果设立为 true,data lake会将 S3 标签添加为附加分区属性,并添加新的顶级 BSON 元素,将每个标签与每份文档关联起来。

false

name

字符串

用于标识数据存储的人类可读标签。 storeName字段引用这些值作为映射配置的一部分。要使用 MongoDB Atlas作为数据存储,data lake需要无服务器实例或 M10 或更高版本的集群。

false

prefix

字符串

MongoDB Cloud 在 S3 存储桶中搜索文件时应用的前缀。数据存储会将 prefix 的值预先添加到路径中,以创建要摄取的文件的完整路径。如果省略,MongoDB Cloud 会从 S3 存储桶的根目录搜索所有文件。

false

provider

字符串

用于数据存储的 provider

false

public

布尔

指示存储桶是否公开的标志。如果设立为 true,MongoDB Cloud 不会使用配置的 AWS 身份和访问管理 (IAM)角色来访问权限S3 存储桶。如果设立为 false,则配置的 AWS IAM角色必须包含访问权限S3 存储桶的权限。

false

region

字符串

MongoDB Cloud 部署 AWS 托管的 MongoDB集群节点的物理位置。您选择的 region 可能会影响客户端访问数据库的网络延迟。当 MongoDB Atlas部署专用集群时,它会检查该提供商和地区是否存在 VPCVPC 连接。如果没有,MongoDB Atlas会将其创建为部署的一部分。要将新的 VPC 对等连接限制为一个 CIDR区块和地区,请先创建连接。连接开始后部署集群。

false

DataFederationStatus 定义了观察到的 AtlasDataFederation 状态。

Name
类型
说明
必需

conditions

[]对象

条件是显示Atlas自定义资源当前状态的状态列表

true

mongoDBVersion

字符串

MongoDBVersion 是集群运行的 MongoDB 版本,格式为 。格式。

false

observedGeneration

整型

ObservedGeneration 表示Atlas Operator 感知的资源规范的生成。 Atlas Operator 在开始资源协调后立即将该字段更新为“元数据生成”的值。格式:int64

false

条件描述了Atlas自定义资源在某一点的状态。

Name
类型
说明
必需

status

字符串

条件的状态; True、False、未知之一。

true

type

字符串

Atlas自定义资源条件的类型。

true

lastTransitionTime

字符串

上次条件从一种状态转换为另一种状态的时间。以ISO8601 格式表示。格式:日期-时间

false

message

字符串

提供有关转换的详细信息的 message

false

reason

字符串

条件的最后一次转换的 reason

false

后退

AtlasTeam

在此页面上