K8s部署MongoDB使用cephfs做数据持久化
2021/9/29 19:10:50
本文主要是介绍K8s部署MongoDB使用cephfs做数据持久化,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1.1 前提准备
MongoDB
镜像 可从 Docker Hub 官网 下载镜像- 外部ceph集群搭建好,(使用cephfs-csi 做数据持久卷,作为
MongoDB用来存放数据
)
1.2 编写 yaml
文件
编写 mongo.yaml
文件,提供了一个对外暴露的 NodePort 类型的 Service,用于外部访问。
--- apiVersion: v1 kind: Namespace metadata: name: mongodb labels: name: mongo --- #创建fastdfs存储卷pvc分配1G使用 apiVersion: v1 kind: PersistentVolumeClaim metadata: name: mongodb-pvc namespace: mongodb spec: accessModes: - ReadWriteMany storageClassName: jyy-cephfs-sc resources: requests: storage: 1Gi --- apiVersion: v1 kind: Service metadata: name: mongo namespace: mongodb labels: app: mongo spec: ports: - name: mongo port: 27017 targetPort: 27017 clusterIP: None --- apiVersion: v1 kind: Service metadata: name: mongo-service namespace: mongodb labels: app: mongo spec: ports: - name: mongo-service port: 27017 nodePort: 27017 selector: app: mongo type: NodePort --- apiVersion: apps/v1 kind: StatefulSet metadata: name: mongo namespace: mongodb spec: selector: matchLabels: app: mongo serviceName: "mongo" replicas: 1 template: metadata: labels: app: mongo spec: terminationGracePeriodSeconds: 0 containers: - name: mongo image: mongo:latest env: - name: MONGO_INITDB_ROOT_USERNAME value: root - name: MONGO_INITDB_ROOT_PASSWORD value: 'uUN38#%pq' command: - mongod - "--bind_ip_all" - "--replSet" - rs0 ports: - containerPort: 27017 volumeMounts: - name: mongo-data mountPath: /data/db volumes: - name: mongo-data persistentVolumeClaim: claimName: mongodb-pvc
这篇关于K8s部署MongoDB使用cephfs做数据持久化的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-23云原生周刊:利用 eBPF 增强 K8s
- 2024-12-20/kubernetes 1.32版本更新解读:新特性和变化一目了然
- 2024-12-19拒绝 Helm? 如何在 K8s 上部署 KRaft 模式 Kafka 集群?
- 2024-12-16云原生周刊:Kubernetes v1.32 正式发布
- 2024-12-13Kubernetes上运行Minecraft:打造开发者平台的例子
- 2024-12-12深入 Kubernetes 的健康奥秘:探针(Probe)究竟有多强?
- 2024-12-10运维实战:K8s 上的 Doris 高可用集群最佳实践
- 2024-12-022024年最好用的十大Kubernetes工具
- 2024-12-02OPA守门人:Kubernetes集群策略编写指南
- 2024-11-26云原生周刊:K8s 严重漏洞