Docs 菜单
Docs 主页
/ /
MongoDB Atlas Kubernetes Operator

配置对 Atlas 的访问

在此页面上

  • Atlas Kubernetes Operator 密钥
  • 参数
  • 先决条件
  • 步骤

要连接到 Atlas Administration API,Atlas Kubernetes Operator 会从 Atlas Kubernetes Operator 密钥 中读取组织 ID 和 API 密钥 。您还可以配置以下功能:

  • 密钥存储。

  • 网络对等互连。

  • 私有端点。

  • 统一云提供商集成。

  • 自定义数据库角色。

  • X.509 身份验证

  • 静态加密。

  • 联合身份验证

  • 团队。

要了解有关创建 Atlas 帐户的更多信息,请参阅注册新的 Atlas 帐户。

根据您的配置,Atlas Kubernetes Operator 会读取以下 Atlas Kubernetes Operator 密钥 之一 :

范围
地点
说明

全局

Atlas Kubernetes Operator 密钥<operator-deployment-name>-api-key 在同一 命名空间 中创建的 安装 Atlas Kubernetes Operator 的位置。

Atlas Kubernetes Operator 使用此密钥数据连接到 Atlas Administration API,除非AtlasProject自定义资源指定spec.connectionSecretRef.name

global Atlas Kubernetes Operator 密钥 允许您为组织中的所有项目使用一个 API 密钥。任何新的AtlasProject自定义资源都使用相同的API密钥以减少开销。

Atlas Kubernetes Operator 部署的默认名称是mongodb-atlas-operator 。 所以, 秘密 应命名为mongodb-atlas-operator-api-key

项目

Atlas Kubernetes Operator 密钥 在 spec.connectionSecretRef.nameAtlasProject自定义资源 中使用 引用。

默认情况下,Atlas Kubernetes Operator 将连接密钥保存在同一 命名空间AtlasProject 作为 自定义资源 。将密钥存储在另一个 命名空间 中 ,指定spec.connectionSecretRef.namespace 参数。

Atlas Kubernetes Operator 使用此 密钥AtlasDeployment AtlasDatabaseUser用于连接到引用该项目的任何 自定义资源 和 自定义资源的 Atlas Administration API 的数据。

如果您不指定spec.connectionSecretRef.name ,Atlas Kubernetes Operator 将使用global Atlas Kubernetes Operator 密钥。

每个项目的 Atlas Kubernetes Operator 密钥允许更细粒度的访问。您可能需要使用单个 API 密钥来访问单个 Atlas 项目。

globalproject 密钥 需要以下信息:

Parameter
说明

orgId

24string用于标识Atlas 组织 的唯一 位十六进制 。

publicAPIKey

privateAPIKey

您需要以下公共 API 密钥、私有 API 密钥和组织 ID 信息, 配置 Atlas Kubernetes Operator 对 Atlas 的访问权限。

  • 如果您希望Atlas Kubernetes Operator创建新的Atlas项目,请为组织授予编程访问权限。如果您的组织需要Atlas Administration API的IP访问列表,您还必须配置API访问权限列表。

    重要

    您必须为 API 密钥分配 Organization Project Creator组织角色或更高级别的角色。

  • 如果要使用现有Atlas项目,请从项目添加项目访问权限。如果您的组织需要Atlas Administration API的IP访问列表,您还必须配置API访问权限列表。

    重要

    您必须为 API 密钥分配 Project Owner 项目角色。

如需配置 Atlas Kubernetes Operator 访问 Atlas,请执行以下步骤之一。

  • 对于global Atlas Kubernetes Operator 密钥 ,运行以下命令:

    注意

    global Atlas Kubernetes Operator 密钥的名称必须符合预定义的格式。 Atlas Kubernetes Operator 部署的默认名称是mongodb-atlas-operator 。 所以, 秘密 应命名为mongodb-atlas-operator-api-key

    kubectl create secret generic mongodb-atlas-operator-api-key \
    --from-literal="orgId=<the_atlas_organization_id>" \
    --from-literal="publicApiKey=<the_atlas_api_public_key>" \
    --from-literal="privateApiKey=<the_atlas_api_private_key>" \
    -n <operator_namespace>
    kubectl label secret mongodb-atlas-operator-api-key atlas.mongodb.com/type=credentials -n mongodb-atlas-system
  • 对于project Atlas Kubernetes Operator 密钥 ,运行以下命令:

    kubectl create secret generic my-project-connection \
    --from-literal="orgId=<the_atlas_organization_id>" \
    --from-literal="publicApiKey=<the_atlas_api_public_key>" \
    --from-literal="privateApiKey=<the_atlas_api_private_key>" \
    -n <atlas_project_namespace>
    kubectl label secret mongodb-atlas-operator-api-key atlas.mongodb.com/type=credentials -n mongodb-atlas-system

后退

兼容性