An open API service indexing awesome lists of open source software.

https://github.com/rhecosystemappeng/mongodb-atlas-kubernetes

MongoDB Atlas Kubernetes Operator - Manage your MongoDB Atlas clusters from Kubernetes
https://github.com/rhecosystemappeng/mongodb-atlas-kubernetes

Last synced: 6 months ago
JSON representation

MongoDB Atlas Kubernetes Operator - Manage your MongoDB Atlas clusters from Kubernetes

Awesome Lists containing this project

README

          

# MongoDB Atlas Operator (Beta)
[![MongoDB Atlas Operator](https://github.com/mongodb/mongodb-atlas-kubernetes/workflows/Test/badge.svg)](https://github.com/mongodb/mongodb-atlas-kubernetes/actions/workflows/test.yml?query=branch%3Amain)
[![MongoDB Atlas Go Client](https://img.shields.io/badge/Powered%20by%20-go--client--mongodb--atlas-%2313AA52)](https://github.com/mongodb/go-client-mongodb-atlas)

The MongoDB Atlas Operator provides a native integration between the Kubernetes orchestration platform and MongoDB Atlas — the only multi-cloud document database service that gives you the versatility you need to build sophisticated and resilient applications that can adapt to changing customer demands and market trends.

> Current Status: *Beta*.
> The Operator gives users the ability to provision
> Atlas projects, clusters and database users using Kubernetes Specifications and bind connection information
> into applications deployed to Kubernetes or via Private Endpoints on AWS or Azure.
> More features like private endpoints, backup management, LDAP/X.509 authentication, etc. are yet to come.

The full documentation for the Operator can be found [here](https://docs.atlas.mongodb.com/atlas-operator/)

## Quick Start guide
### Step 1. Deploy Kubernetes operator using all in one config file
```
kubectl apply -f https://raw.githubusercontent.com/mongodb/mongodb-atlas-kubernetes/main/deploy/all-in-one.yaml
```
### Step 2. Create Atlas Cluster

**1.** Create an Atlas API Key Secret

In order to work with the Atlas Operator you need to provide [authentication information](https://docs.atlas.mongodb.com/configure-api-access)
to allow the Atlas Operator to communicate with Atlas API. Once you have generated a Public and Private key in Atlas, you can create a Kuberentes Secret with:
```
kubectl create secret generic mongodb-atlas-operator-api-key \
--from-literal="orgId=" \
--from-literal="publicApiKey=" \
--from-literal="privateApiKey=" \
-n mongodb-atlas-system

kubectl label secret mongodb-atlas-operator-api-key atlas.mongodb.com/type=credentials -n mongodb-atlas-system
```

**2.** Create an `AtlasProject` Custom Resource

The `AtlasProject` CustomResource represents Atlas Projects in our Kubernetes cluster. You need to specify
`projectIpAccessList` with the IP addresses or CIDR blocks of any hosts that will connect to the Atlas Cluster.
```
cat <