(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. 推荐一个Android Studio很实用的插件android-butterknife-zelezny
  2. python的所有数据类型都可以相互转化吗_Python python 数据类型的相互转换
  3. Html中如何让超链接a、图片img居中
  4. 最强盘点!国产数据分析BI工具怎么选?看这篇就够了
  5. 利用jquery的ajax获取后台返回的json数据为空
  6. IIS7.5安全配置研究
  7. adb工具包_如何使用命令刷机 ADB与FASTBOOT工具使用教程
  8. python crm_学Python还是买CRM软件?
  9. 台达PLC开发笔记(一):台达PLC连接介绍,分别使用485、网口与台达PLC建立连接
  10. 楚留香冰最新服务器,一梦江湖:各门派冰雪外观极寒之刃上线,冰晶透亮玩家直呼绝了!...
  11. 如何将图片转换成字符画
  12. 计算机要执行一条指令,cpu所涉及的操作应该包括下列的,计算机一级填空选择题与答案.doc...
  13. C/C++版本更迭历程
  14. vue 打开浮在窗口上的小窗口
  15. 用户信息管理系统(Web实践项目)
  16. 做一个好管家 Linux系统管理技巧大荟萃
  17. php ppt转视频教程,ppt转视频怎么转,电脑上怎么把PowerPoint文档转换成视频
  18. 计算机游戏蜘蛛纸牌如何还原,庆祝同捆25周年!微软将举办Windows纸牌大赛
  19. 下单系统水平可扩展框架
  20. 【红黑树】的详细实现(C++)附代码

热门文章

  1. HTTP/1.1、HTTP/2
  2. 在IE浏览器,icon字体图标不显示
  3. 【Android 自定义控件】2.画布的基础使用
  4. idea 如何将本地新建项目上传到gitlab
  5. POJ 2540 Hotter Colder(半平面交求可行域)
  6. 数学基础(1)~ 概率论基础知识
  7. 将闲置电脑搭建成私有云盘,使用ipv6外网使用
  8. ECNU ||西班牙馅饼
  9. php技术创新:利用动态404页面实现全站自动静态化
  10. OpenStack Swift报错处理