Curve质量监控与运维 - 网易数帆u r v e 质 量 、 监 控 与 运 维 秦 亦 1/33背景 01 02 03 04 Curve质量控制 Curve监控体系 Curve运维体系Curve 是网易针对块存储、对象存储、云原生数据库、EC等 多种场景自研的分布式存储系统: 高性能、低延迟 当前实现了高性能块存储,对接OpenStack和 K8s 网易内部线上无故障稳定运行近两年 已完整开源 作为一个复杂的大型分布式存储系统,Curve 需要利用科学的方法论和专业的工具,在整个 软件生命周期内更好地为用户服务: 质量——向用户交付稳定可靠的软件; 监控——直观地展示Curve运行状态; 运维——保障Curve始终稳定高效运行。 质量 ✓ 质量管理体系(设计、开发、review、CI) ✓ 测试方法论(单元测试、集成测试、系统测试) 监控 ✓ 监控架构 ✓ 指标采集、后端处理、可视化展示 指标采集、后端处理、可视化展示 运维 ✓ 运维特性 (易部署、易升级、自治) ✓ 运维工具(部署工具、管理工具) 4/33背景 01 02 03 04 Curve质量控制 Curve监控体系 Curve运维体系软件质量 软件质量的定义是:软件与明确地和隐含地定义的需求相一致的程度。 为了确保最终交付的软件满足需求,必须将质量控制贯穿于设计、开发到测试的整个流程中。 设计 设计流程0 码力 | 33 页 | 2.64 MB | 6 月前3
CurveFs 用户权限系统调研1 of 33 CurveFs 用户权限系统调研(已实现)© XXX Page 2 of 33 一、Curvefs测试 1. 启动curvefs 问题1:root用户无法访问挂载目录 测试 allow_root 测试allow_other 参考文献 问题2:本地文件系统挂载默认是共享的? 问题3:文件系统访问控制是在哪一层实现的? 二、文件系统权限管理 文件类型 文件权限 特殊权限(SUID 文件默认权限umask 用户&用户组 文件系统用户权限管理 对mode的管理 对ACL(Access Control Lists)的管理 ACL Access Entry保存在哪? ACL的表示 内存中的ACL 是如何与具体的 Inode 相关联 如何存储和获取ACL信息 Inode权限校验 chmod、chown、setfacl、getfacl接口文件系统自己如何实现 结论: 参考文献: 一、Curvefs测试 Page 4 of 33 查阅资料发现这是fuse的一种安全策略,默认是只有filesystem owner拥有该文件系统的访问权限,如果想要其他用户有权访问,需要在挂载参数中指定‘-o allow-root’ 或'-o allow-other'以允许相应用户有权访问该文件系统,如果挂载者不是root还需要在/etc/fuse.conf(/usr/local/etc/fuse.conf)中增加配0 码力 | 33 页 | 732.13 KB | 6 月前3
在Kubernetes上部署高可用的Service Mesh监控在 k8s 上部署高可用的 service mesh 监控 pctang@caicloud.io 唐鹏程 才云科技TOC Solving issues in a new way Monitoring your service mesh Old-school monitoringPrometheus + Kubernetes ● A time series based monitoring0 码力 | 35 页 | 2.98 MB | 6 月前3
36-云原生监控体系建设-秦晓辉云原生监控体系建设 秦晓辉 快猫星云 联合创始人 个人介绍 秦晓辉,常用网名龙渊秦五、UlricQin,山东人,12年 毕业自山东大学,10年经验一直是在运维研发相关方向, 是Open-Falcon、Nightingale、Categraf 等开源软件 的核心研发,快猫星云联合创始人,当前在创业,为客 户提供稳定性保障相关的产品 个人主页:https://ulricqin.github.io/ io/ 大纲 • 云原生之后监控需求的变化 • 从Kubernetes架构来看要监控的组件 • Kubernetes所在宿主的监控 • Kubernetes Node组件监控 • Kubernetes控制面组件监控 • Kubernetes资源对象的监控 • Pod内的业务应用的监控 • 业务应用依赖的中间件的监控 云原生之后监控需求的 变化 云原生之后监控需求的变化 •相比物理机虚拟机时 •原来使用资产视角管理监控对象的系统不再适用 •要么使用注册中心来自动发现,要么就是采集器和被监控对象通过sidecar模式捆绑一体 指标生命周期变短 •微服务的流行,要监控的服务数量大幅增长,是之前的指标数量十倍都不止 •广大研发工程师也更加重视可观测能力的建设,更愿意埋点 •各种采集器层出不穷,都是本着可采尽采的原则,一个中间件实例动辄采集几千个指标 指标数量大幅增长 •老一代监控系统更多的是关注机器0 码力 | 32 页 | 3.27 MB | 6 月前3
金卫-Apache APISIX 借助 Service Mesh 实现统一技术栈的全流量管理Apache APISIX借助ServiceMesh 实现统一技术栈的全流量管理 金卫(API7 解决方案架构师) • 支流科技 - 解决方案架构师 • Apache APISIX PMC • Apache APISIX Ingress Controller Founder • Apache skywalking committer • Github: https://github.com/gxthrj Ingress处理南北向入口流量 APISIX Service Mesh处理东西向流量 APISIX专用插件配置等通过Amesh 下发 APISIX 全流量代理的价值 节约成本 统一技术栈 统一管理 复用技术经验 未来 结合APISIX xRPC实现 原生异构多协议支持 覆盖Istio各类场景/配置 降低用户迁移成本 Apache APISIX Ingress0 码力 | 34 页 | 3.50 MB | 6 月前3
探讨和实践基于Istio的微服务治理事件监控探讨和实践基于Istio的微服务治理事件监控 2018.11.25 徐运元关于我 2008年毕业于浙江大学,曾在思科和浙大网新有超过 9年的工作经验和5年的云计算领域工作经验,带领团 队完成公司第一代基于Kubernetes的云平台开发和第 二代基于Kubernetes的DevOps云平台开发。目前致力 于公司基于Istio的微服务平台打造。 来自于浙江大学SEL实验室目录 CONTENTS 微服务平台的监控演进 Mixer组件的功能介绍 Mixer组件的功能介绍 基于Mixer的开发流程和实例微服务平台的监控演进典型的运维场景 传统的监控面临容器化和微服务化的困境 测试运维沟通鸿沟,如何提升沟通效率 监控工具繁杂,如何快速找到合适工具进行问题定位 偶发性问题场景复杂,如何保留发生现场 如何在错综复杂的未服用调用链路中找到错误源头监控场景转换 帮助运维人员快速的定位问题,解决问题 基于容器化和微服务化的监 控场景 • 基于请求的依赖追踪监控 基于虚拟化的监控场景 • 应用规模大 • 服务之间依赖呈现为线型 • 日志、性能指标需要集中化 存储 基于主机的监控场景 • 应用规模较小 • 服务之间没有互相依赖 • 日志、性能指标都在单个主 机问题一:什么是用户想要的监控 什么是用户想要的监控?分布式监控的三个维度 Metrics Logging Tracing 指标监控 • 指标可被聚合0 码力 | 29 页 | 8.37 MB | 6 月前3
Curve文件系统元数据管理© XXX Page 1 of 24 Curve文件系统元数据管理(已实现)© XXX Page 2 of 24 1. 2. 3. 4. Inode 1、设计一个分布式文件系统需要考虑的点: 2、其他文件系统的调研总结 3、各内存结构体 4、curve文件系统的元数据内存组织 4.1 inode定义: 4.2 dentry的定义: 4.3 内存组织 5 元数据分片 hardlink:生成一个hardlink /B/E,指向文件/A/C 6、curve文件系统的多文件系统的设计 1、设计一个分布式文件系统需要考虑的点: 文件系统的元数据是否全缓存? 元数据持久化在单独的元数据服务器上?在磁盘上?在volume上? inode+dentry方式?当前curve块存储的kv方式? 是否有单独的元数据管理服务器? 2、其他文件系统的调研总结 fs 中心化元数据 内存namespace元数据 stl unordered_map moose,使用c实现 4、curve文件系统的元数据内存组织 curve文件系统元数据主要有3个类型,inode, dentry, 。 extent 4.1 inode定义: inode定义见:curve文件系统元数据proto(代码接口定义,已实现)© XXX Page 5 of 24 typedef uint64_t0 码力 | 24 页 | 204.67 KB | 6 月前3
Curve文件系统空间分配方案Curve文件系统空间分配方案(基于块的方案,已实现)© XXX Page 2 of 11 背景 本地文件系统空间分配相关特性 局部性 延迟分配/Allocate-on-flush Inline file/data 空间分配 整体设计 空间分配流程 特殊情况 空间回收 小文件处理 并发问题 文件系统扩容 接口设计 RPC接口 空间分配器接口 背景 根据 ,文件系统基于当前的块进 ,文件系统基于当前的块进行实现,所以需要设计基于块的空间分配器,用于分配并存储文件数据。 CurveFS方案设计(总体设计,只实现了部分) 本地文件系统空间分配相关特性 局部性 尽量分配连续的磁盘空间,存储文件的数据。这一特性主要是针对HDD进行的优化,降低磁盘寻道时间。 延迟分配/Allocate-on-flush 在sync/flush之前,尽可能多的积累更多的文件数据块才进行空间分配,一方面可以提高局部性,另一方面可以降低磁盘碎片。 几百字节的小文件不单独分配磁盘空间,直接把数据存放到文件的元数据中。 针对上述的本地文件系统特性,Curve文件系统分配需要着重考虑 。 局部性 虽然Curve是一个分布式文件系统,但是单个文件系统的容量可能会比较大,如果在空间分配时,不考虑局部性,inode中记录的extent数量很多,导致文件系统元数据量很大。© XXX Page 3 of 11 假如文件系统大小为1PiB,空间分配粒度为1MiB,inode中存储的e0 码力 | 11 页 | 159.17 KB | 6 月前3
Curve文件系统元数据Proto(接口定义)XXX Page 1 of 15 curve文件系统元数据proto(代码接口定义,已实现)© XXX Page 2 of 15 1、代码结构和代码目录 curve文件系统是相对于curve块设备比较独立的一块,在当前curve项目的目录下,增加一个一级目录curvefs,curvefs下有自己独立的proto\src\test。 2、文件系统proto定义 2.1 mds.proto0 码力 | 15 页 | 80.33 KB | 6 月前3
sealos 以 kubernetes 为内核的云操作系统Sealos 云操作系统 方海涛 环界云计算 CEO 目 录 云操作系统介绍 01 云操作系统架构 02 功能与实用场景 03 实现原理 04 价值 05 总结 06 自我介绍 Sealos 作者 阿里巴巴 CNCF sealer 作 者 环界云计算创始人 公司代表作品: Sealos 云操作系统 Laf 函数计算 FastGPT AI 知识库 Sealos 介绍 以 kubernetes 为内核的云操作系统 整个数据中心抽象成一台服务器,一切皆应用,让用云像用个人电脑一样简单! Kubernetes是云操作系统内核,整个集群是一个整体 Sealos是云操作系统发行版本 Linux发行版,如redhat Linux kernel CPU 内存 磁盘 Linux发行版,如redhat Linux kernel CPU 内存 磁盘 Linux发行版,如redhat 我大道至简海纳百川 不求最好,但求最贵 优秀还便宜 你真的需要虚拟机?真的需要 IaaS 层? PaaS SaaS 有本质区别?鸭式辩型忘记了? 云里面,一切皆应用才是王道。 系统架构与设计理念 通用的系统管理入口 所有应用自由安装卸载 极简、高内聚、高度抽象 提供最基础的核心能力 容器管理、编排调度、资源隔离 驱动层实现资源抽象 自由切换,到处运行 Sealos API Sealos0 码力 | 29 页 | 7.64 MB | 9 月前3
共 167 条
- 1
- 2
- 3
- 4
- 5
- 6
- 17













