MongoDB Atlas
- Product name
- Category
- Database service
- Release
- TKU 2023-March-1
MongoDB Atlas systems are single-tenant, dedicated Cloud virtual servers created solely for an Atlas user.
These virtual servers are isolated within their private cloud (VPC) and do not share logical data storage or processing with other users.
It can be deployed on AWS, Azure, and Google clouds. This does not include multi-cloud, which is not fully supported at the time of writing.
Pattern summary
Pattern name | Operating system | Versioning | Pattern depth |
---|---|---|---|
MongoDBAPI | Cloud | API | instance-based |
Identification
Software Instance triggers
Pattern | Trigger node | Attribute | Condition | Argument |
---|---|---|---|---|
MongoDBAPI | DiscoveredAPIProviderResultList | discovery_method | = | Atlas.listClusters |
Attributes
This pattern can populate the following attributes:
Node type | Attributes | Default value |
---|---|---|
Test Software Instance |
| |
Test Software Cluster |
|
API provider discovery
MongoDB Atlas Clusters are discovered using executing REST API queries and processing obtained data.
Credentials
API Provider credentials in Discovery strictly require to pare of keys to be set. Your MongoDB Atlas administrator may generate these Public and Private keys in the "Organization Access Manager" section. Please follow the official Mongo DB documentation for more details about API key creation.
In overall there are only three attributes in credentials that must be specified:
Public Key: | Atlas Admin API public key |
Atlas Admin API private key | |
Timeout: | Seconds passed until disconnected |
Specifying an HTTP proxy by checking "Use Proxy" and setting appropriate credentials is also possible.
API queries and Discovery methods
Available MongoDB Atlas Discovery methods:
Discovery method | REST API query | Description |
---|---|---|
Atlas.listProjects | {api_url}/groups | Returns details about all projects. Not available to invoke from the pattern |
Atlas.listProcesses | {api_url}/groups/{groupId}/processes | Returns details of all processes for the specified project |
Atlas.listClusters | {api_url}/groups/{groupId}/clusters | Returns the details for all clusters in the specific project to which you have access |
Atlas.listDatabases | {api_url}/groups/{project_id}/processes/{process_id}/databases | Returns the list of databases running on the specified host for the specified project |
Atlas.getProjectDetails | {api_url}/groups/{project_id} | Returns details about the specified project |
Trigger
MongoDB Atlas pattern triggers on DiscoveredAPIProviderResultList where discovery_method = "Atlas.listClusters".
Since API Provider supports dynamic lookup, few scans may be started simultaneously - according to the amount of discovered projects.
Software version detection
The version is obtained from Atlas.listProcesses API call.
Relationships
The pattern creates relationships between the MongoDB Atlas Cluster and related MongoDB Atlas Server(s).
An example of the MongoDB Atlas Cluster.
Information sources
For more information about the described product, see the following official documentation:
Comments
Log in or register to comment.