阿里巴巴超大规模神龙裸金属 Kubernetes 集群运维实践Kubernetes 集群运维实践 关注“阿里巴巴云原生”公众号 回复 1124 获取 PPT自我介绍 •嵌入式、微服务框架 •2017 年加入阿里巴巴,负责阿 里集团数十万集群节点规模化运 维管理系统的研发工作 •2019 年参与集团全面上云项目 并经历了整体架构的云原生升级 演进,稳定支撑双11峰值流量分享内容 • 阿里全站上云 • 神龙 (what & why) • 规模化集群运维实践 CI/CD k8s extended Service Mesh 安全容器 运维管控 在离线混部 额度管控 监控体系 多租隔离 上层业务 集 团 业 务运维挑战 • 规模大 • 集群规模大 (数十个集群),节点数量多 (数十万节点) • 业务线多、应用数量多、应用类型复杂 (有状态、无状态、多语言) • 基础环境复杂 • 大规模 在线、离线 混部 (运维打通) • 装机模板、OS版本0 码力 | 21 页 | 7.81 MB | 6 月前3
24-云原生中间件之道-高磊支付网关 锁定库存 库存数据库 前台类目 商品查询 BFF 商品数据库 文件存储 logging MQ 交易数据库 大数据 营销分析 业务赋能 典型微服务应用 云原生应用 下单服务 交易支付 支付网关 锁定库存 库存数据库 前台类目 商品查询 BFF 商品数据库 文件存储 logging MQ 交易数据库 大数据 营销分析 云原生PaaS平台 • 四大件在云原生场景下带来什么客户 价值? 结构化/半结构化数据,支持高吞吐量实时入库及数据实时查询,实现数据资源 智慧化运营。 优势 低成本存储: 支持PB级数据存储 高并发: 千亿数据实时分析 数据源 设备监控 传感器 轨迹数据 车联网 业务集群 物联网套件写入 云原生 DB 轨迹查 询|实时 监测 MR 云原 生DB 统计 分析 物联网数据存储和查询 将车联网数据、设备监控数据、客流分析管控数据、交通数据、传感器数据实时 写入HBase中 度融合,提供适配云原生应用的各种能力。 从实现上,可以认为 Rook 是一个提供了 Ceph 集群管理能力的 Operator。其使用 CRD 方式来对 Ceph、Minio 等存储资源进 行部署和管理。 Ceph文件存储 MiniO对象存储 • Operator:实现自动启动存储集群,并监控存储守护进程,并确保存储 集群的健康; • Agent:在每个存储节点上运行,并部署一个 CSI / FlexVolume0 码力 | 22 页 | 4.39 MB | 6 月前3
TiDB v8.2 中文手册· · · · · · · · · 63 3.1.1 部署本地测试集群 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 63 3.1.2 在单机上模拟部署生产环境集群 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 84 4.2.1 使用 TiDB Serverless 构建 TiDB 集群 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 84 4.2.2 使用 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 437 5 部署标准集群 453 5.1 TiDB 软件和硬件环境建议配置 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·0 码力 | 4987 页 | 102.91 MB | 10 月前3
TiDB v8.5 中文手册· · · · · · · · · 83 3.1.1 部署本地测试集群 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 83 3.1.2 在单机上模拟部署生产环境集群 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 104 4.2.1 使用 TiDB Cloud Serverless 构建 TiDB 集群· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 104 4.2.2 使用 TiDB 的增删改查 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 508 5 部署标准集群 524 5.1 TiDB 软件和硬件环境建议配置 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·0 码力 | 5095 页 | 104.54 MB | 10 月前3
TiDB v8.4 中文手册· · · · · · · · · 79 3.1.1 部署本地测试集群 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 79 3.1.2 在单机上模拟部署生产环境集群 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 100 4.2.1 使用 TiDB Cloud Serverless 构建 TiDB 集群· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 100 4.2.2 使用 TiDB 的增删改查 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 504 5 部署标准集群 520 5.1 TiDB 软件和硬件环境建议配置 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·0 码力 | 5072 页 | 104.05 MB | 10 月前3
22-云原生的缘起、云原生底座、PaaS 以及 Service Mesh 等之道-高磊否能够自动回滚?整个过程线上业务持续运行不中断。 传统稳态业务环境难以高效承载敏态应用 发现故障 (假死) 创建 新实例 配置 运行环境 部署当前 应用版本 添加 监控 配置 日志采集 测试确认 服务正常运行 实例 加入集群 恢复正常 场景 1 如果生产中一台Web应用服务器故障,恢复这台服务器需要 做哪些事情? 场景 2 如果应用负载升高/降低,如何及时按需扩展/收缩所用 资源? 场景 3 否能够自动回滚?整个过程线上业务持续运行不中断。 传统稳态业务环境难以高效承载敏态应用 发现故障 (假死) 创建 新实例 配置 运行环境 部署当前 应用版本 添加 监控 配置 日志采集 测试确认 服务正常运行 实例 加入集群 恢复正常 工作量 成本 新一代架构(微服务)应用的对承载平台提出新要求 传统实践中,主要采用虚机/物理机+SpringCloud等微服务框架的方式承载微服务应用。但在一个虚机/服务器上 10% 8% 5% 5% 数据来源:中国云原生产业联盟2019 私有云市场规模 645.2亿 投 入 技 术 运 维 纳 管 规 模 9%客户投入占总IT投 入的一半以上 成为主要支出方向 中心集群规模为主 部署形态多元化、多云/混合云架构成为主流 自动化 用户软件发布方 式正在向自动化 转变 容器 60%以上用户已 经在生产环境应 用容器技术 微服务 微服务架构成为 主流,八成用户 已经使用或者计0 码力 | 42 页 | 11.17 MB | 6 月前3
23-云原生观察性、自动化交付和 IaC 等之道-高磊阿里和微软在19年发布了一个叫做OAM的规范,这是基于10年云原生道路锤炼得到的自动化交付方案 构建镜像 多区域分发 配置 ApplicationConfiguration Component 微服务 数据库 MQ Cache Trait 灰度 监控告警 弹性扩缩容 高可用 负载均衡 客户环境 • 关注点分离:开发者关注应用本身,运维人员关注模块化运维 能力,让应用管理变得更轻松、应用交付变得更可控; 的目标就是要达成无论在何种环境,规则都是相同的效果。 • AppConfig:运维人员将Commpoent和Trait打包成可交付的应用。 基于镜像的封装性,通过AppConfig将应 用两个维度的东西整合整体化“集群镜像” 方式的交付,底层差异影响减少到最小 标准化能力-微服务PAAS-OAM-万花筒PAAS-3 以上解耦的结果,隐含着更深层次的能力,不是简单解耦那么简单,它使得统一通用PaaS成为可能 组件市场|仓库 OAM本身就是基础设 施即代码的典范设计, 在中间层隔离了用户 使用和底层执行体, 进一步加强了统一性。 标准化能力-微服务PAAS-OAM交付流程模式-抽象流程 • 基于CICD和服务市场,通过OAM 集群镜像式打包的方式向团队、 组织或者公司进行整体化交付, 并通过Docker+SDN+云原生存储 +K8S+OAM彻底隔离了不同环境 底层的细节和差异,可以整体化 交付到这些组织所在的数据中心 里去0 码力 | 24 页 | 5.96 MB | 6 月前3
Nacos架构&原理
上创建⼀个配置时, 如果未填写配置分组的名称,则配置分组的名称默认采用 DEFAULT_GROUP 。配置分组的常见场 景:不同的应用或组件使用了相同的配置项,如 database_url 配置和 MQ_Topic 配置。 配置 ID(Data ID) Nacos 中的某个配置集的 ID。配置集 ID 是划分配置的维度之⼀。Data ID 通常用于划分系统的配 置集。⼀个系统或者应用可以包含 在开源支持就定下了⼀个目标,尽可能的减少用户部署以及运维成本,做到用户只需要⼀个 程序包,就可以快速以单机模式启动 Nacos 或者以集群模式启动 Nacos。而 Nacos 是⼀个需要 存储数据的⼀个组件,因此,为了实现这个目标,就需要在 Nacos 内部实现数据存储。单机下其 实问题不大,简单的内嵌关系型数据库即可;但是集群模式下,就需要考虑如何保障各个节点之间 的数据⼀致性以及数据同步,而要解决这个问题,就不得不引入共识算法,通过算法来保障各个节 节 点之间的数据的⼀致性。 为什么 Nacos 选择了 Raft 以及 Distro 为什么 Nacos 会在单个集群中同时运行 CP 协议以及 AP 协议呢?这其实要从 Nacos 的场景出 发的:Nacos 是⼀个集服务注册发现以及配置管理于⼀体的组件,因此对于集群下,各个节点之间 的数据⼀致性保障问题,需要拆分成两个方面 从服务注册发现来看 服务发现注册中心,在当前微服务体系下0 码力 | 326 页 | 12.83 MB | 9 月前3
TiDB中文技术文档TiDB 运维文档 软硬件环境需求 部署集群 Ansible 部署方案(强烈推荐) 离线 Ansible 部署方案 Docker 部署方案 Docker Compose 部署方案 跨机房部署方案 配置集群 参数解释 TiDB 配置项解释 开启 TLS 验证 生成自签名证书 监控集群 整体监控框架概述 重要监控指标详解 组件状态 API & 监控 扩容缩容 集群扩容缩容方案 使用 Ansible 扩容缩容 软硬件环境需求 部署集群 Ansible 部署方案(强烈推荐) 离线 Ansible 部署方案 Docker 部署方案 Docker Compose 部署方案 跨机房部署方案 配置集群 参数解释 README - 8 - 本文档使用 书栈(BookStack.CN) 构建 TiDB 配置项解释 使用 Ansible 变更组件配置 开启 TLS 验证 生成自签名证书 监控集群 整体监控框架概述 重要监控指标详解 重要监控指标详解 组件状态 API & 监控 扩容缩容 集群扩容缩容方案 使用 Ansible 扩容缩容 升级 升级组件版本 TiDB 2.0 升级操作指南 性能调优 备份与迁移 备份与恢复 数据迁移 数据迁移概述 全量导入 增量导入 故障诊断 TiDB 周边工具 Syncer Loader TiDB-Binlog PD Control TiKV Control TiDB Controller TiSpark0 码力 | 444 页 | 4.89 MB | 6 月前3
Retiring the Singleton PatternCache Db Multiple Dependencies MQ Response sendData(...)// New overload that replaces singleton Response sendData(const Data& data, CommWrapper& comms, MqWrapper& mq, CacheWrapper& cache, DbWrapper& req; // Transform Data into various data structures // ... db.save(db_data); cache.save(cache_struct); mq.send(req); return comms.send(req); } // keep original signature Response sendData(const Data& data) Dependencies struct Service { CommWrapper comms_; DataBaseWrapper db_; CacheWrapper cache_; MqWrapper mq_; }; // Lazy Initialization Service& getDefaultServices() { static Service services; return services;0 码力 | 70 页 | 1.59 MB | 6 月前3
共 117 条
- 1
- 2
- 3
- 4
- 5
- 6
- 12













