Skip to main content

Migration Of MS SQL From Azure VM To Amazon RDS

The MongoDB operator is a custom CRD-based operator inside Kubernetes to create, manage, and auto-heal MongoDB setup. It helps in providing different types of MongoDB setup on Kubernetes like- standalone, replicated, and sharded. There are quite amazing features we have introduced inside the operator and some are in-pipeline on which deployment is going on. Some of the MongoDB operator features are:-

  • Standalone and replicated cluster setup
  • Failover and recovery of MongoDB nodes
  • Inbuilt monitoring support for Prometheus using MongoDB Exporter.
  • Different Kubernetes-related best practices like:- Affinity, Pod Disruption Budget, Resource management, etc, are also part of it.
  • Insightful and detailed monitoring dashboards for Grafana.
  • Custom MongoDB configuration support.

[Good Read: Migration Of MS SQL From Azure VM To Amazon RDS ]

Other than this, there are a lot of features are in the backlog on which active development is happening. For example:-

  • Backup and Restore support
  • TLS encryption and decryption
  • DB management support
  • User management support
  • Roles management support

MongoDB Operator architecture looks like this:-

For more information about MongoDB Operator, please check out the documentation page of it.
https://ot-mongodb-operator.netlify.app/
https://github.com/OT-CONTAINER-KIT/mongodb-operator

Installation and Configuration of MongoDB Operator

MongoDB Operator requires a Kubernetes cluster of version >=1.16.0. If you have just started with the CRD and Operators, it’s highly recommended to use the latest version of Kubernetes.

Setup of MongoDB operator can be easily done by using simple helm and kubectl commands.

First, add the helm repository to your system.

# Add the helm chart
$ helm repo add ot-helm \
https://ot-container-kit.github.io/helm-charts/
...
"ot-helm" has been added to your repositories

Once the helm repository is configured, we can simply deploy the operator using the helm install command.

# Deploy the MongoDB Operator
$ helm install mongodb-operator \
ot-helm/mongodb-operator --namespace ot-operators
...
Release "mongodb-operator" does not exist. Installing it now.
NAME: mongodb-operator
LAST DEPLOYED: Sun Jan 9 23:05:13 2022
NAMESPACE: ot-operators
STATUS: deployed
REVISION: 1

After the operator deployment is successful, we can verify it using the kubectl command line.

# List the pod and status of mongodb-operator
$ kubectl get pods -n ot-operators -l name=mongodb-operator
...
NAME READY STATUS RESTARTS AGE
mongodb-operator-fc88b45b5-8rmtj 1/1 Running 0 21d

MongoDB Cluster setup on Kubernetes

MongoDB cluster can be easily set up on Kubernetes cluster by providing a simple manifest file like this:-

---
apiVersion: opstreelabs.in/v1alpha1
kind: MongoDBCluster
metadata:
name: mongodb
spec:
clusterSize: 3
kubernetesConfig:
image: quay.io/opstree/mongo:v5.0
imagePullPolicy: IfNotPresent
securityContext:
fsGroup: 1001
storage:
accessModes: ["ReadWriteOnce"]
storageSize: 1Gi
storageClass: csi-cephfs-sc
mongoDBSecurity:
mongoDBAdminUser: admin
secretRef:
name: mongodb-secret
key: password
mongoDBMonitoring:
enableExporter: true
image: bitnami/mongodb-exporter:0.11.2-debian-10-r382
imagePullPolicy: IfNotPresent

You can check more info about: MongoDB Setup on Kubernetes using MongoDB Operator.

 

Comments

Popular posts from this blog

Step-by-Step Guide to Cloud Migration With DevOps

This successful adoption of cloud technologies is attributed to scalability, security, faster time to market, and team collaboration benefits it offers. With this number increasing rapidly among companies at all levels, organizations are  looking forward to the methods that help them: Eliminate platform complexities Reduce information leakage Minimize cloud operation costs To materialize these elements, organizations are actively turning to DevOps culture that helps them integrate development and operations processes to automate and optimize the complete software development lifecycle. In this blog post, we will discuss the step-by-step approach to cloud migration with DevOps. Steps to Perform Cloud Migration With DevOps Approach Automation, teamwork, and ongoing feedback are all facilitated by the DevOps culture in the cloud migration process. This translates into cloud environments that are continuously optimized to support your business goals and enable faster, more seamless mi...

Containerization vs Virtualization: Explore the Difference!

  In today’s world, technology has become an integral part of our daily lives, and the way we work has been greatly revolutionized by the rise of cloud computing. One of the critical aspects of cloud computing is the ability to run applications and services in a virtualized environment. However, with the emergence of new technologies and trends, there are two popular approaches that have emerged, containerization and virtualization, and it can be confusing to understand the difference between the two. In this blog on Containerization vs Virtualization, we’ll explore what virtualization and containerization are, the key difference between virtualization and containerization, and the use cases they are best suited for. By the end of this article, you should have a better understanding of the two technologies and be able to make an informed decision on which one is right for your business needs. Here, we’ll discuss, –  What is Containerization? –  What is Virtualization? – B...