Kubernetes 异常配置检测框架## Kubernetes 异常配置检测框架 顾静, 阿里云 邓隽, 阿里云 ## 我们来自阿里云容器服务 • 顾静,研发工程师 • 邓隽,技术专家 ## 我们参与打造 • 容器服务(ACK/ASK) • 容器镜像服务(ACR) • 服务网格(ASM) 1 Kubernetes 典型异常 2 检测框架演进 3 生产实践 4 总结 ## Kubernetes 使用日常 Server Pod Master API Server Pod Master API Server Pod Master ## Kubernetes 典型异常 ## 网络异常 • 安全组、路由表配置错误 • 节点防火墙软件等修改 iptables、内核参数 • 网络链路长,手动排查成本高 ## 异常影响 • 应用间无法正常通信 • 集群内 Controller 无法正常工作  ### 1. 关联规则概述 有没有发生过这样的事:你出去买东西,结果 购买更多的商品。  ### 1. 关联规则概述 购物车分析是大型超市用来揭示商品之间关联的关键技术之一。他们试图找出不同物品和产品之间的关联,这些物品和产品可以一起销售,这有助于正确的产品放置。  0 码力 | 33 页 | 668.91 KB | 2 年前3
《玩转webpack》 第四章 进阶篇: 编写可维护的 webpack 构建配置进阶篇:编写可维护的webpack 构建配置 05 | 进阶篇:webpack 构建速度和体积优化策略 06 | 原理篇:通过源码掌握webpack 打包原理 07 | 原理篇:编写 Loader 和插件 08 | 实战篇:React 全家桶 和webpack 开发商城项目 ## ☐ ☐ ☐ ☐ ## 扫码试看/订阅 《玩转webpack》 ## 构建配置抽离成 npm 包的意义 包的意义 通用性 ·业务开发者无需关注构建配置 ·统一团队构建脚本 可维护性 ·构建配置合理的拆分 ·README 文档、ChangeLog 文档等 质量 ·冒烟测试、单元测试、测试覆盖率 ·持续集成 ## 构建配置管理的可选方案 通过多个配置文件管理不同环境的构建,webpack --config 参数进行控制 将构建配置设计成一个库,比如:hjs-webpack、Neutrino、webpack-blocks webpack-blocks 抽成一个工具进行管理,比如:create-react-app, kyt, nwb 将所有的配置放在一个文件,通过 --env 参数控制分支选择 ## 构建配置包设计 ## 通过多个配置文件管理不同环境的 webpack 配置 ·基础配置:webpack.base.js ·开发环境:webpack.dev.js ·生产环境:webpack.prod.js ·SSR环境:webpack0 码力 | 30 页 | 5.38 MB | 2 年前3
2 Sharding-JDBC入门使用## 基于Java编码的规则配置 Sharding-JDBC的分库分表通过规则配置描述,以下例子是根据user_id取模分库,且根据order_id取模分表的两库两表的配置。 // 配置真实数据源 MapdataSourceMap = new HashMap<>(); // 配置第一个数据源 BasicDataSource setUsername("root"); dataSource1.setPassword(); dataSourceMap.put("ds0", dataSource1); // 配置第二个数据源 BasicDataSource dataSource2 = new BasicDataSource(); dataSource2.setDriverClassName("com setUsername("root"); dataSource2.setPassword(); dataSourceMap.put("ds1", dataSource2); // 配置Order表规则 TableRuleConfiguration orderTableRuleConfig = new TableRuleConfiguration(); orderTableRuleConfig0 码力 | 12 页 | 325.38 KB | 2 年前3
跟我一起写 Makefile (PDF 重制版)1.1 关于程序的编译和链接 2 makefile 介绍 2.1 makefile 的规则 2.2 一个示例 2.3 make 是如何工作的 2.4 makefile 中使用变量 2.5 让 make 自动推导 2.6 makefile 的另一种风格 2.7 清空目录的规则 2.8 Makefile 里有什么? 2.9 Makefile 的文件名 2.10 10 包含其它 Makefile 2.11 环境变量 MAKEFILES 2.12 make 的工作方式 3 书写规则 3.1 规则举例 3.2 规则的语法 3.3 在规则中使用通配符 3.4 文件搜寻 3.5 伪目标 3.6 多目标 3.7 静态模式 3.8 自动生成依赖性 4 书写命令 4.1 显示命令 4.2 命令执行 4.3 命令出错 8.4 检查规则 ..... 57 8.5 make 的参数 ..... 57 9 隐含规则 ..... 61 9.1 使用隐含规则 ..... 61 9.2 隐含规则一览 ..... 62 9.3 隐含规则使用的变量 ..... 64 9.3.1 关于命令的变量。 ..... 64 9.3.2 关于命令参数的变量 ..... 65 9.4 隐含规则链 ....0 码力 | 81 页 | 628.51 KB | 2 年前3
Back To Basics Functions0 码力 | 123 页 | 7.26 MB | 1 年前3
ubunutu 怎么参与内核开发patch 改个十遍,人家也不好意思再拒绝了。有时候实在看不下去你的 patch,人家也会帮你改; 3. 当然了,最原因是因为你更加了解这个社区的很多 "潜规则",比如:谁是老大,要谁点头,找谁 review,等等。 了解了潜规则,相信大家都会成为高手的。好了,经验介绍完了,下面总结下如何参与开发吧。参与开 发主要是找对开发方向。 最好的切入点是结合你自己的工作,例如如你搞网络这块的 的标准。但问题还是很多,为什么呢?因为很多配置还是要靠猜,BIOS 给你的配置也不一定靠谱。如果你了解 Intel HDA,然后结合实际的硬件也能猜个八九不离十。所以声音 debug 是个好的开端。 大家看到 sound/pci/hda/ 下面很多文件里面有很多 snd_pci_quirk 这个结构 (内核代码里面),这些就是不同机器上不同的非标准配置,或者是 workaround。所以有很多问 unchpad.net/firmware,大家可以运行一下,找找自己机器上的问题,然后根据提示尝试解决。 方向找好,debug 完成,剩下的就是要理解社区的 "潜规则" 了,这里有篇很好的文章介绍了 “潜规则”:http://ldn.linuxfoundation.org/how-participate-linux-community <^k^> ↑ title: How0 码力 | 3 页 | 271.06 KB | 2 年前3
Qcon北京2018--《MySQL的Docker容器化大规模实践》--王晓波DBA的数据库自动化标准化运维的需求。 5.Docker在同程的大规模使用,应用部署环境100%容器化,有Docker丰富的经验 ## + MySQL $ ^{®} $ ## 让数据库的部署点单化开启 配置 DB架构 硬件选型 机房 2核4G 4核4G 一主一从 SATA-SSD A机房 4核8G 8核8G 一主多从 PCIE-SSD B机房 8核16G 16核16G 分片集群 1a/p9_1.jpg) 资源申请 资源池 调度规则 容器调度 应用交付 容器及实例创建 为了保证MySQL的高可用,需要在Docker容器分配时如何保障主从不在同一宿主机上。我们通过自研Docker容器调度平台管理所有宿主机和容器,自定义Docker容器的分配算法。实现了MySQL的高密度,隔离化,高可用化部署。 调度规则: 1. 同一复制集群的实例在不同主机上。 2.优先 扩容逻辑 扩容 本地CPU、memory、disk 是否满足 迁移升级 原地扩容 原地扩容 停从节点 迁移扩容 删除从库容器 新增高配置从节点 重新创建高配置容器 HA切换 恢复从库的复制 删除之前的旧节点 HA切换 完成 新增高配置从节点 删除旧实例 ## 高可用管理 












