k8s 单机版mongodb

本文档详细介绍了如何在Kubernetes环境中部署MongoDB,包括配置Deployment、Service,设置安全认证,以及进行数据库的备份和恢复操作。通过kubectl命令,可以方便地进入MongoDB容器并进行管理。此外,还提供了创建用户、数据库以及执行mongodump和mongorestore的步骤。
摘要由CSDN通过智能技术生成
cat <<END>demon.yaml
kind: Deployment
apiVersion: apps/v1
metadata:
  labels:
    k8s-app: test-mongo
  name: test-mongo
  #namespace: devops
spec:
  replicas: 1
  selector:
    matchLabels:
      k8s-app: test-mongo
  template:
    metadata:
      labels:
        k8s-app: test-mongo
      name: test-mongo
    spec:
      containers:
        - name: test-mongo
          image: mongo:latest
          imagePullPolicy: IfNotPresent
          ports:
            - containerPort: 27017
              name: web
              protocol: TCP
          resources:
            limits:
              cpu: 8
              memory: 8Gi
            requests:
              cpu: 1
              memory: 1000Mi
          env:
            - name: MONGO_INITDB_ROOT_USERNAME
              value: root
            - name: MONGO_INITDB_ROOT_PASSWORD
              value: 'klvu9chen123'
          #securityContext:
            #privileged: true
            #runAsUser: 0
          volumeMounts:
            - mountPath: /data/db
              name: data
            - mountPath: /etc/localtime
              name: times
      volumes:
        - name: data
          persistentVolumeClaim: 
            claimName: mongo
        - name: times
          hostPath:
            path: /usr/share/zoneinfo/Asia/Shanghai
---
kind: Service
apiVersion: v1
metadata:
  labels:
    k8s-app: test-mongo
  name: test-mongo
  #namespace: devops
spec:
  type: NodePort
  ports:
    - name: web
      port: 27017
      targetPort: 27017
      nodePort: 31177
  selector:
    k8s-app: test-mongo
END
mongodb 简单操作
# 可以通过 kubectl -n klvhcen exec -it POD_NAME /bin/bash 进入容器

# 进入 mongodb 客户端
mongo admin

# 认证
db.auth('root','klvu9chen123')

# mongodb 创建 test 数据库,创建用户和密码
use test
db.createUser(
   {
     user: "test",
     pwd: "test123",
     roles: [ { role: "readWrite", db: "test" } ]
   }
 )
 

# 备份,会在当前目录下默认创建名为 dump 的备份文件夹
mongodump --host 127.0.0.1 --port 27017 -u test --authenticationDatabase test

# 恢复
mongorestore --host 127.0.0.1 --port 27017 -u test  --authenticationDatabase recommend dump
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值