凯里网站建设go007群晖做网站需要备案吗
2026/1/11 15:11:53 网站建设 项目流程
凯里网站建设go007,群晖做网站需要备案吗,湖北省建设银行网站6,廊坊网站seo服务比起君子讷于言而敏于行#xff0c;我更喜欢君子善于言且敏于行。 目录 前言 一、为什么选 Rook#xff1f; 二、Rook 低层原理#xff08;必须理解的组件#xff09; 1. CRD#xff08;CustomResourceDefinition#xff09;——抽象出“Ceph 资源” 2. Rook Operat…比起君子讷于言而敏于行我更喜欢君子善于言且敏于行。目录前言一、为什么选 Rook二、Rook 低层原理必须理解的组件1. CRDCustomResourceDefinition——抽象出“Ceph 资源”2. Rook Operator核心自动化大脑3. Ceph Daemons真正干活的三、Rook 架构图四、 Rook 需要哪些 YAML这是最重要的部分1. 部署 Rook 控制面CRD Operator2. 部署 Ceph 集群跟硬盘有关3. 可选的按需创建五、各个yaml的作用六、操作命令总结前言想在k8s集群中使用ceph应该怎么做呢使用Rook一、为什么选 Rook裸 Ceph 是给 2010 年代裸机/虚拟机环境设计的Rook 是给 2020 年代 Kubernetes 时代而生的 Ceph。Rook 不是存储系统它只是 Ceph 的自动化运维系统Operator。Rook 只需要你写 yaml 、 Apply、 让 Operator 自动 reconcile。然后所有组件自动出现、自动扩容、自动修复。它的唯一作用让 Ceph 能以 Kubernetes 原生方式运行、扩容、自愈硬盘自动接管Ceph 真正存储Rook Ceph 的大脑 自动驾驶仪K8s 环境 编排二、Rook 低层原理必须理解的组件1. CRDCustomResourceDefinition——抽象出“Ceph 资源”Rook 把 Ceph 的东西全部抽象成 Kubernetes API 对象Ceph 组件Rook 的 CRD整个 Ceph 集群CephCluster存储池CephBlockPool文件系统 CephFSCephFilesystemOSD 存储设备CephCluster.storage.devicesMgr / MonCephCluster.mgr / monRBD StorageClassStorageClassRGW/对象存储CephObjectStoreRook 让 Kubernetes 本身能够理解“Ceph 这个东西”。2. Rook Operator核心自动化大脑Operator 是一个永远处于 “observing → reconciling → fixing” 的控制回路CRD YAML 变化 → Operator 看到了 ↓ Operator 生成 Ceph 配置 / 命令 ↓ Operator 创建相应的 Pod、OSD、mon、mgr ↓ 确保状态达到你 YAML 要的样子它会一直监控Ceph 守护进程是否运行MON quorum 是否健康OSD 是否 down / out新硬盘是否出现节点是否加入/退出集群你只写 YAML → 其它全部 Operator 负责。这就是 Kubernetes 的operator 模式。3. Ceph Daemons真正干活的在容器里跑真正的 Ceph 服务组件作用ceph-mon整个集群的脑维护 mapceph-mgrDashboard、Prometheus、Orchestrator 模块ceph-osd管 HDD/SSD你的 8T/2Tceph-mdsCephFS 的 namespace serverceph-rgwS3 网关可选Rook 帮你管理它们但它们本身就是原生 Ceph。三、Rook 架构图CRD让 Kubernetes“知道”什么是 Ceph像提供新 APIOperator看 YAML → 生成 Pod → 控制 Ceph自动化运维系统Ceph 容器真正的存储系统四、 Rook 需要哪些 YAML这是最重要的部分1. 部署 Rook 控制面CRD Operator这一步是所有集群通用的不涉及磁盘。通常有三个文件只需 apply 一次文件作用crds.yaml定义 CephCluster / CephBlockPool / CephFilesystem 等 CRDcommon.yamlRBAC、namespace、service accountsoperator.yamlOperator 主体负责启动大脑执行这 3 个文件后集群不包含任何 Ceph只是“准备好 Ceph 的大脑”2.部署 Ceph 集群跟硬盘有关这是最核心的cluster.yaml。这个文件明确告诉 RookCeph 要在哪里跑要启用哪些模块如何使用你的硬盘有几个 MON是否开启 dashboard是否使用 SSD 作为 WAL/DB这个 YAML 整个 Ceph 的定义OSD 出现与否、设备如何使用都在这里。3. 可选的按需创建YAML作用CephFilesystem创建 CephFS自动部署 MDSCephBlockPool创建 RBD 池StorageClass给 K8s PVC 提供 Ceph RBD/FS 卷CephObjectStoreS3 服务CephObjectStoreUser创建 S3 用户未来最常用的是CephFS共享文件存储RBD持久化块存储五、各个yaml的作用YAML属于 Rook 哪一层它控制什么什么时候 applycrds.yamlk8s API定义 Ceph 的所有资源类型第一次部署 Rook 时common.yamlRBAC权限、ServiceAccount、Namespace第一次部署 Rook 时operator.yamlRook 大脑Operator 的 Pod Controller第一次部署 Rook 时cluster.yaml你的集群定义MON/OSD/MGR、磁盘分配、网络有 HDD 时执行filesystem.yamlCephFS创建 MDS Pool FSCeph 集群 ready 后block-pool.yamlRBDRBD 池给 PVC 用需要块存储时storageclass.yamlK8s SCPVC 自动绑定 Ceph做持久化卷时objectstore.yamlRGWSwift/S3 接口做 S3 时注意cluster.yaml优先级最高。crds.yaml、common.yaml、operator.yaml只负责“让 Rook 自己跑起来”。Ceph 集群的实际配置永远以cluster.yaml 为准。所以首次run的时候可以直接用官方的模板六、操作命令# 安装调试工具非必须但推荐 sudo apt install -y lvm2 ceph-common jq #下载适合k8s1.21的版本主要是用examples cd /home/ubuntu git clone --single-branch --branch v1.11.9 https://github.com/rook/rook.git cd rook/deploy/examples # 部署 CRDs common operator上一步已cd,这一步用的是需要用examples里面的yaml kubectl create namespace rook-ceph kubectl apply -f crds.yaml -f common.yaml -f operator.yaml # 验证有点儿耐心等一下拉取镜像需要时间。这一步之后集群里已经“认识 Ceph 这个东西”了。 kubectl -n rook-ceph get pods #准备好适合自己的cluster.yaml kubectl apply -f cluster.yaml #这个镜像总是无法自动拉取不清楚为什么可以先手动拉一下 sudo docker pull rook/ceph:v1.11.9 #这次应该能看到rook-ceph-mon-* rook-ceph-mgr-* 耐心等一等 kubectl -n rook-ceph get pods # 验证 kubectl -n rook-ceph get pods -o wide # 看看dashboardUI页面 kubectl -n rook-ceph get svc | grep dashboard kubectl -n rook-ceph get pod -l approok-ceph-mgr -o wide #让系统自动分配一个 30000-32767 端口 kubectl -n rook-ceph patch svc rook-ceph-mgr-dashboard -p {spec:{type:NodePort}} #查看一下分到了哪个端口进行ip端口访问即可 kubectl -n rook-ceph get svc rook-ceph-mgr-dashboard总结重点还是搞清楚yaml基本上就不会有什么问题。后续我会再整理cluster.yaml的详细内容分析彻底吃透它。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询