(ceph集群安装请看上篇文章)

CEPH篇 块存储、文件存储和对象存储意义和差异及ubuntu20.4下 ceph安装_yaodunlin的博客-CSDN博客

各个work节点安装客户端

apt update

apt install ceph-common

K8S 客户端版本必须大于服务器版本   必须拷贝 这两个文件 ceph.client.admin.keyring  ceph.conf 到所有的K8S work节点

服务端拷贝配置文件过去

scp ceph.client.admin.keyring ceph.conf 这两个文件过去

chmod 644 /etc/ceph/ceph.c*

创建StorageClass

cat class.yaml

kind: StorageClass

apiVersion: storage.k8s.io/v1

metadata:

name: rbd

provisioner: ceph.com/rbd

parameters:

monitors: 192.168.1.10:6789,192.168.1.11:6789,192.168.1.12:6789

pool: kube

adminId: admin

adminSecretNamespace: default

adminSecretName: ceph-secret-admin

userId: kube

userSecretNamespace: default

userSecretName: ceph-secret

imageFormat: "2"

imageFeatures: layering

kubectl apply -f  class.yaml

创建Secret

cat secrets.yaml

apiVersion: v1

kind: Secret

metadata:

name: ceph-secret-admin

namespace: default

type: "kubernetes.io/rbd"

data:

# ceph auth get-key client.admin | base64

key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx==

---

apiVersion: v1

kind: Secret

metadata:

name: ceph-secret

namespace: default

type: "kubernetes.io/rbd"

data:

# ceph auth add client.kube mon 'allow r' osd 'allow rwx pool=kube'

# ceph auth get-key client.kube | base64

key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx==

kubectl apply -f secrets.yaml

创建ClusterRoleBinding

cat clusterrolebinding.yaml

kind: ClusterRoleBinding

apiVersion: rbac.authorization.k8s.io/v1

metadata:

name: rbd-provisioner

subjects:

- kind: ServiceAccount

name: rbd-provisioner

namespace: default

roleRef:

kind: ClusterRole

name: rbd-provisioner

apiGroup: rbac.authorization.k8s.io

创建ClusterRole

cat clusterrole.yaml

kind: ClusterRole

apiVersion: rbac.authorization.k8s.io/v1

metadata:

name: rbd-provisioner

rules:

- apiGroups: [""]

resources: ["persistentvolumes"]

verbs: ["get", "list", "watch", "create", "delete"]

- apiGroups: [""]

resources: ["persistentvolumeclaims"]

verbs: ["get", "list", "watch", "update"]

- apiGroups: ["storage.k8s.io"]

resources: ["storageclasses"]

verbs: ["get", "list", "watch"]

- apiGroups: [""]

resources: ["events"]

verbs: ["create", "update", "patch"]

- apiGroups: [""]

resources: ["services"]

resourceNames: ["kube-dns","coredns"]

verbs: ["list", "get"]

- apiGroups: [""]

resources: ["endpoints"]

verbs: ["get", "list", "watch", "create", "update", "patch"]

创建Deployment

cat deployment.yaml

apiVersion: apps/v1

kind: Deployment

metadata:

name: rbd-provisioner

spec:

replicas: 1

selector:

matchLabels:

app: rbd-provisioner

strategy:

type: Recreate

template:

metadata:

labels:

app: rbd-provisioner

spec:

containers:

- name: rbd-provisioner

image: "quay.io/external_storage/rbd-provisioner:latest"

env:

- name: PROVISIONER_NAME

value: ceph.com/rbd

serviceAccount: rbd-provisioner

创建RoleBinding

cat rolebinding.yaml

apiVersion: rbac.authorization.k8s.io/v1

kind: RoleBinding

metadata:

name: rbd-provisioner

roleRef:

apiGroup: rbac.authorization.k8s.io

kind: Role

name: rbd-provisioner

subjects:

- kind: ServiceAccount

name: rbd-provisioner

namespace: default

创建Role

cat role.yaml

apiVersion: rbac.authorization.k8s.io/v1

kind: Role

metadata:

name: rbd-provisioner

rules:

- apiGroups: [""]

resources: ["secrets"]

verbs: ["get"]

- apiGroups: [""]

resources: ["endpoints"]

verbs: ["get", "list", "watch", "create", "update", "patch"]

创建ServiceAccount

cat serviceaccount.yaml

apiVersion: v1

kind: ServiceAccount

metadata:

name: rbd-provisioner

kubectl apply -f rbac/

rbd-provisioner

存储类

PVC

14、遇到的问题

1、

解决:ceph-common 客户端版问题

2、 

k8s之ceph分布式存储相关推荐

  1. 有状态容器实践:k8s集成ceph分布式存储

    全栈工程师开发手册 (作者:栾鹏) 架构系列文章 先格式化一块硬盘并设置开机自动挂载 mkfs.ext4 -f /dev/sdc 创建挂载点以及配置开机自动挂载: 方法一: mkdir /data1: ...

  2. Ceph分布式存储详述

    参考文章:Ceph分布式存储详述 - 知乎 什么是Ceph分布式存储? Ceph项目最早起源于Sage就读博士期间的工作(最早的成果于2004年发表),并随后贡献给开源社区.在经过了数年的发展之后,目 ...

  3. Ceph分布式存储知识总结

    Ceph 一.deploy-ceph部署 投入使用ceph前,要知道一个很现实得问题,ceph对低版本内核得客户端使用非常不友好,低内核是指小于等于3.10.0-862,默认的centos7.5及以下 ...

  4. Centos7下使用Ceph-deploy快速部署Ceph分布式存储

    #Centos7下使用Ceph-deploy快速部署Ceph分布式存储 CEPH 简介  不管你是想为云平台提供Ceph 对象存储和/或 Ceph 块设备,还是想部署一个 Ceph 文件系统或者把 C ...

  5. ceph 面试_终于有人把Ceph分布式存储讲清楚了!

    Ceph项目最早起源于Sage就读博士期间的工作(最早的成果于2004年发表),并随后贡献给开源社区.在经过了数年的发展之后,目前已得到众多云计算厂商的支持并被广泛应用.RedHat及OpenStac ...

  6. Ceph分布式存储实战:从0搭建一个存储集群,并把块设备镜像映射到CentOS 7系统上的步骤

    本文配套视频和笔记: Ceph分布式存储实战(Ceph快速上手) B站视频在线观看链接:[千锋教育]Ceph分布式存储技术教程(进阶到实战) 百度网盘链接:2020全新_Ceph分布式存储技术-进阶到 ...

  7. 超详细的k8s对接ceph RBD存储

    前期准备 对接方式 有两种方式可以使用k8s对接ceph 使用第三方的rbd provisioner,但是由于官方已经不再进行维护因此随着版本越来越高,其对应的rbd provisioner内置的ce ...

  8. K8s使用Ceph纠删码池做持久化卷

    K8s使用Ceph纠删码池做持久化卷 Ceph侧准备 Ceph纠删码相关 创建纠删码规则 创建纠删码池 创建复制集池 创建用户并授权 K8s消费ec池 验证 (可选)缓存方式 Kubernetes版本 ...

  9. K8S使用Ceph RBD作为后端存储

    一.准备工作 Ceph版本:v13.2.5 mimic稳定版 1.Ceph上准备存储池 [root@ceph-node1 ceph]# ceph osd pool create k8s 128 128 ...

最新文章

  1. 大年初二,今年过年你选择在男方家过还是女方家过?
  2. linux编译部署,linux下编译并部署Apache Apollo
  3. 大数据应用项目创新大赛_温州首届大数据应用创新大赛决赛名单公布!有你的单位吗?...
  4. android手机活跃度,微信Android机型活跃度曝光,这个结果你满意吗?
  5. Linux常用运维命令笔记
  6. Spring Boot 学习之旅
  7. 带电插拔损坏设备原理_Win10拔U盘不用再点“安全弹出”了,XP和Win7老用户都眼馋了...
  8. 【下载中心】如何撰写分卷资源的标题、简介
  9. 深度神经网络中的梯度丢失与梯度爆炸
  10. 德鲁伊 oltp oltp_内存中OLTP –娱乐看门狗的三个关键点–桶数
  11. 国内外开源sns源码大全
  12. python torch.optim.SGD
  13. 【Unity3D开发小游戏】Unity3D零基础一步一步教你制作跑酷类游戏
  14. 微信怎样开通账户升级服务器,微信零钱通小范围公测,怎么升级或开通零钱通账户呢?...
  15. rv1126 获取图像数据,实现图像裁剪、缩放、旋转【RK_MPI API接口】
  16. 计算机junit测试类,复利计算器4.0之再遇JUnit
  17. 一个女程序员职场自述:彻骨的孤独
  18. getPhoneNumber 响应 416
  19. 五面拿下阿里飞猪offer,java图形界面设置背景颜色
  20. php的AES-128 EBC加密、解密

热门文章

  1. Wilson定理推论
  2. Spring源码研读
  3. 【北邮国院大三上】大三上高编/互联网协议/电信系统笔记
  4. STM32F10xxx20xxx21xxxL1xxxx Cortex-M3程序设计手册 阅读笔记三(1):Cortex-M3指令集概要
  5. Iframe简单的嵌套用法
  6. 独孤思维:没有复盘的项目,不会赚钱
  7. html 滚动字幕如何设置,Html 文字滚动
  8. 我的2018年计划-抓重点,出成绩,提高核心竞争力
  9. 教学管理系统-实验四 顺序图
  10. 华为OD机试题 - 数据分类(JavaScript)| 代码+思路+重要知识点