导图社区 阿里devops
阿里出品的devops实践总结,从文化、代码管理、持续交付等方面给出了很多好的实践。
社区模板帮助中心,点此进入>>
互联网9大思维
组织架构-单商户商城webAPP 思维导图。
域控上线
python思维导图
css
CSS
计算机操作系统思维导图
计算机组成原理
IMX6UL(A7)
考试学情分析系统
阿里devops
阿里devops文化
团队是否“devops"
开发提交代码是否可以自己部署
是否有监控、运维工具,轻松解决线上问题
直接为线上用户负责
落地工具
云效
gitlab
jenkins
jira
问题
纯工具
只能解决单点自动化(代码管理、构建打包)
无法自动化
需求流转规则
分支管理规则
开发、测试、运维沟通的模式等
协作
人
流程
效率
抽象
产品
Aone-flow 代码管理模式
AGit-Flow 代码管 理模式
测试环境管理模式
双十一分层项目管理模式
流量回放测试技术
线上流量复制到线下
解决了测试回归的问题
Mock 技术
分布式问题转为单机问题
全链路压测技术
两大核心理念
松管控、强卡点
松
多种流水线可以供开发选择
轻发布、重恢复
卡
代码审核、质量红线
发布、封网窗口
可灰度、可监控、可回滚
以应用为中心
应用串联devops工具链
开发定义应用、运维
开发为应用全生命周期负责
开发
规划环境
创建资源
设置发布策略
devops红利
消除对个人的依赖
降低团队间损耗
规范一致的流程
降低测试成本、提升质量
分层测试策略
人人都方便参与测试
降低发布风险
规范一致的版本管理
云时代的新机会
云原生 VS. 传统
云原生
中间件云基础设施
限流
降级
鉴权
数据库
运行环境
动态伸缩
软件开发复杂度“下沉”基础设施
社会化大分工
业界统一的标准技术
中间件
容器
规范的数据
强大的基础设施
轻松的获取数据
创建智能工具
影响开发3大技术体系
CloudIDE
开发态
代码数据
研发行为数据
质量数据
变更数据
Service Mesh
运行态
服务注册数据
调用链路数据
请求数据
性能数据
API数据
Serverless
运维态
服务数据
监控数据
存储数据
日志数据
进程数据
敏捷研发
业务驱动的精益敏捷
研发效能提升3大问题
3个不等于
局部效率 != 高效交付
高效交付!=持续高效
高效交付!=业务成功
方向
持续地 顺畅高质量交付 有效价值
精益敏捷4大步骤
实践框架
4步骤
打通端到端的业务价值流
快速高质量交付
度量反馈和持续改进
规模化实施
持续地顺畅高质量交付有效价值的能力被规模化
单产品线多交付团队
多条产品线多交付团队
子主题
代码管理
自研代码管理平台
why自研?
SVN, GITlAB, GERRIT,多系统运维
困难、挑战
技术架构
多语言
多套系统
无法与周边系统有效协同
外部市场
国内无ToB代码管理平台
整体策略
统一架构、夯实基础
不再开源拼凑
全面融合、高效协同
代码文化、品牌建设
拥抱智能、弯道超车
产品: Codeup
核心能力
代码浏览
代码评审
配置管理
代码扫描
代码安全
CI/CD
文档
代码库迁移
系统架构
分层架构
存储层
代理层
go
服务层
基于java
无状态
AI敏感技术监测
安全风控
审计日志
IP白名单
概要
代码图谱
代码库
代码
代码画像
工程师
用户画像
重要文件、敏感文件操作告警
代码质量
P3C插件
代码规约检查
PMD
资源、扫描规则扩展
PRECFIX
缺陷监测技术
Patch Recommendation by Empirically Clustering
敏感信息检测
规则匹配
信息熵
多层检测模型
上下文语义
SecretRadar
智能评审
评审耗时预估
评审人推荐
新一代高效git协同模型
AGit-Flow
修改了git-receive-pack
proc-receive
git-repo
开源客户端
持续交付
如何规模化落地CI/CD
Aone
提高协同效率
新团队快速接入
全局风险控制
原来人工运维
现自动化
研发流程全局更新
Aone Flow
发布模式
分支管理模式
主干
特性
发布
以应用为核心的一站式体验
构建、编排、部署、制品
独立
灵活性
开放API(只读)
上层编纂场景
可能是开发自定义的
提供从构建到部署发布的各种模板
Java、PHP、Node.js、Go、Python
Git Flow
云原生下的开发测试
测试工具箱
K8S
扁平内部IP
基于CNI改造IP分配逻辑
可服务项目环境
基于RPC/MQS实现虚拟环境链路隔离
ISTIO
控制流量
kt-connect
实现本地与集群双向互通
connect命令(代理容器)建立与集群VPN链接
exchange命令,替换集群服务(副本减为0),拦截转发到本地
mesh命令(混合)
根据标签转发集群服务或本地服务
内置DNS服务
kt-virtual-environment
开源,云原生测试环境工具箱
共用环境相互干扰问题&解决方案
测试被打断
服务重启、新部署
断点调试
有BUG代码影响所有人
方案
多套环境
浪费资源
隔离域
路由规则形成的虚拟边界
将测试环境网络动态隔离成多个虚拟隔离域
生成Service Mesh规则
最佳实践
环境标
dev
公共
dev.proj1
项目
dev.proj1.xiaofenggang
个人
解决方案
搭建devops平台
推进策略
平台化
标准化
自动化
可视化