以下为ceph集群操作内容


cephfs

将cephfs挂载到一台服务器 /mnt/cephf 。

创建目录 mkdir -p /mnt/cephf/k8s/staff-nginx/{conf,data}

以下为k8s节点操作内容


创建secret

  1. [root@ceph1 wsjy-proxy]# ceph auth get-key client.admin|base64
  2. QVFDM2k3MWNZeXIyTFJBQU1JcFp0eG5VdVlyYURNSUcyMVgyVnc11Q==
  3.  
  4. [root@node1 work]# vim ceph-secret3.yaml
  5. apiVersion: v1
  6. kind: Secret
  7. metadata:
  8. name: ceph-secret
  9. data:
  10. key: QVFDM2k3MWNZeXIyTFJBQU1JcFp0eG5VdVlyYURNSUcyMVgyVnc11Q==
  11. [root@node1 work]# kubectl create -f ceph-secret3.yaml
  12. secret "ceph-secret" created
  13. [root@node1 work]# kubectl get secret
  14. NAME TYPE DATA AGE
  15. ceph-secret Opaque 1 2s
  16. default-token-7s88r kubernetes.io/service-account-token 3 12d

创建pv

  1. [root@node1 staff-nginx]# cat staff-nginx-pv.yaml
  2. apiVersion: v1
  3. kind: PersistentVolume
  4. metadata:
  5. name: staff-nginx-pv
  6. spec:
  7. capacity:
  8. storage: 2Gi
  9. accessModes:
  10. - ReadWriteMany
  11. cephfs:
  12. monitors:
  13. - 10.101.71.150:6789,10.101.71.151:6789,10.101.71.152:6789
  14. path: /k8s/staff-nginx
  15. user: admin
  16. readOnly: false
  17. secretRef:
  18. name: ceph-secret
  19. persistentVolumeReclaimPolicy: Recycle
  20.  
  21. [root@node1 staff-nginx]# kubectl get pv
  22. NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE
  23. staff-nginx-pv 2Gi RWX Recycle Bound default/staff-nginx-pvc 172m

创建pvc

  1. [root@node1 staff-nginx]# cat staff-nginx-pvc.yaml
  2. kind: PersistentVolumeClaim
  3. apiVersion: v1
  4. metadata:
  5. name: staff-nginx-pvc
  6. spec:
  7. accessModes:
  8. - ReadWriteMany
  9. volumeName: staff-nginx-pv
  10. resources:
  11. requests:
  12. storage: 2Gi
  13. [root@node1 staff-nginx]# kubectl get pvc
  14. NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
  15. staff-nginx-pvc Bound staff-nginx-pv 2Gi RWX 173m
  1.  

创建POD

  1. [root@node1 staff-nginx]# cat staff-nginx.yaml
  2. apiVersion: extensions/v1beta1
  3. kind: Deployment
  4. metadata:
  5. name: dep-staff-nginx
  6. namespace: default
  7. spec:
  8. replicas: 2
  9. template:
  10. metadata:
  11. labels:
  12. name: staff-nginx
  13. spec:
  14. containers:
  15. - name: staff-nginx
  16. image: nginx:1.7.9
  17. imagePullPolicy: IfNotPresent
  18. resources:
  19. limits:
  20. cpu: "500m"
  21. memory: 512Mi
  22. requests:
  23. cpu: "250m"
  24. memory: 256Mi
  25. env:
  26. - name: TZ
  27. value: "Asia/Shanghai"
  28. ports:
  29. - name: tcp80
  30. containerPort: 80
  31. volumeMounts:
  32. - mountPath: "/usr/share/nginx/html"
  33. name: nginx-data
  34. subPath: data
  35. - mountPath: "/etc/nginx/conf.d"
  36. name: staff-nginx-data
  37. subPath: conf
  38. # - mountPath: "/etc/nginx/nginx.conf"
  39. # name: staff-nginx-data
  40. # subPath: nginx.conf
  41.  
  42. volumes:
  43. - name: staff-nginx-data
  44. persistentVolumeClaim:
  45. claimName: staff-nginx-pvc
  46.  
  47. nodeSelector:
  48. node: "master"
  49.  
  50. ---
  51. kind: Service
  52. apiVersion: v1
  53. metadata:
  54. name: staff-proxy-service
  55. labels:
  56. name: staff-proxy-service
  57. spec:
  58. type: NodePort
  59. selector:
  60. name: staff-nginx
  61. ports:
  62. - name: tcp80
  63. port: 80
  64. targetPort: 80
  65. nodePort: 30080

k8s使用cephfs的更多相关文章

  1. kubernetes挂载ceph rbd和cephfs的方法

    目录 k8s挂载Ceph RBD PV & PVC方式 创建secret 创建PV 创建PVC 创建deployment挂载PVC StorageClass方式 创建secret 创建Stor ...

  2. 以Docker容器方式安装Ceph

    获取Ceph的Docker镜像 因为公司对于网络环境的限制,安装ceph时使用ceph-deploy反而很不方便,且ssh免密码方式也不适用,所以使用docker方式安装. Git地址 https:/ ...

  3. 7.4 k8s结合ceph rbd、cephfs实现数据的持久化和共享

    1.在ceph集群中创建rbd存储池.镜像及普通用户 1.1.存储池接镜像配置 创建存储池 root@u20-deploy:~# ceph osd pool create rbd-test-pool1 ...

  4. k8s volume

        只有nfs和rbd的,本人翻译确实很渣         在容器中磁盘文件寿命是短暂的,当在容器中运行一些重要程序时,这会产生一些问题. 首先,当一个容器崩溃后,kubelet将重新启动该容器, ...

  5. k8s pv

    这个文档描述当前在k8s中PersistentVolumes的使用. 我们建议和volume一起进行了解   Introduction     管理存储和管理计算是截然不同的问题. 持久存储子系统对用 ...

  6. Kubernetes使用cephfs作为后端存储

    这里使用了k8s自身的持久化卷存储机制:PV和PVC.各组件之间的关系参考下图: PV的Access Mode(访问模式) The access modes are: ReadWriteOnce – ...

  7. cephfs创建及挂载

    Ceph 文件系统( Ceph FS )是个 POSIX 兼容的文件系统,它使用 Ceph 存储集群来存储数据.Ceph 文件系统要求 Ceph 存储集群内至少有一个 Ceph 元数据服务器. 1.添 ...

  8. K8S学习笔记之Kubernetes数据持久化方案

    在开始介绍k8s持久化存储前,我们有必要了解一下k8s的emptydir和hostpath.configmap以及secret的机制和用途. 0x00 Emptydir EmptyDir是一个空目录, ...

  9. k8s学习笔记之八:存储卷

    第一章.前言 默认情况下容器的数据都是非持久化的, 在容器消亡以后数据也跟着丢失, 所以 Docker 提供了 Volume 机制以便将数据持久化存储. 类似的, Kubernetes 提供了更强大的 ...

随机推荐

  1. 二、frps 完整配置文件

    # [common] is integral section [common] # A literal address or host name for IPv6 must be enclosed # ...

  2. nginx1.15.8源码安装

    useradd www -s /sbin/nologin -M yum -y install gcc  pcre-devel openssl-devel cd /usr/local/src wget ...

  3. myeclipse 字体设置为UTF-8

    将myeclipse设置成utf-8格式的方式如下: 1.windows->Preferences打开"首选项"对话框,如图: 2.点击左侧导航树,导航到general-&g ...

  4. 用 JavaScript 实现简单拼图游戏

    本篇主要讲解,如何利用原生的 JavaScript 来实现一个简单的拼图小游戏. 线上体验地址:拼图 一.游戏的基础逻辑 想用一门语言来开发游戏,必须先了解如何使用这门语言来实现一些基础逻辑,比如图像 ...

  5. 如何成为资深的python专家

    相信很多人有这种感受,python很简单,几天就学会了:做了一段时间就觉得python没什么好玩的,就这样. 一种语言有火这么久,必有它存在的道理. 第一.我们要相信她,她就像你的新女朋友一样,她会给 ...

  6. pytorch 5 classification 分类

    import torch from torch.autograd import Variable import torch.nn.functional as F import matplotlib.p ...

  7. 通过CSS样式隐藏百度版权标志

    在JSP中添加: //隐藏所有.anchorBL{ display:none; } //隐藏下方的保留百度地图图片 .BMap_cpyCtrl{ display:none; }   注:维护他人版权, ...

  8. WEB开发兼容性---浏览器渲染模式—— document.compatMode

    document.compatMode主要是用来判断浏览器采用何种方式渲染,它有两种可能的返回值:BackCompat和CSS1Compat,官方对其解释如下: BackCompat:标准兼容模式关闭 ...

  9. 06001_NoSQL概述

    1.什么是NoSQL? NoSQL(NoSQL=Not Only SQL),意即“不仅仅是SQL”,是一项全新的数据库理念,泛指非关系型的数据库. 2.关于关系型数据库和nosql数据库 (1)关系型 ...

  10. shell 脚本 helloworld

    一.Hello World 脚本代码 #!/bin/sh echo "hello world" /bin/pwd 二.分析脚本 第 1 行:shell 脚本的固定写法 第 2 行: ...