速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

运维架构是全站技术架构中不可分割的一部分

  • 2020-03-18
  • 本文字数:1640 字

    阅读完需:约 5 分钟

运维架构是全站技术架构中不可分割的一部分

从这篇文章开始,准备从架构设计层面谈谈 Dev 和 Ops 的关系,而不是单纯从组织架构和协作模式上的 Dev 和 Ops 关系。

一、为什么要起这个话题?

可运维性要在架构设计时就要统筹考虑,从一开始就得考虑进去,而不是到了运维这个环节再去考虑,否则就会出现很多的问题。但实际情况,很多技术团队在这一点上做的并不够,而是将全部的精力放到如何进行服务化或微服务的拆分上,放到分布式架构如分布式服务、分布式消息、分布式 DB 和缓存等等这些设计上,更多的是做了一些纵向的架构分解和技术钻研工作,但是架构的横向延伸和拉通考虑的明显不足。这样恰恰是忽略了整个软件生命周期中最长尾的运维环节,也反映出了很多公司对于运维这件事情的重视程度和理解深度不够。

二、出现的问题

从我个人经历的过程以及观察的情况看,通常的几个现象:


1、应用这个概念,在资源申请、域名申请、VIP 申请、服务注册、发布部署、策略下发、监控等等这些环节不统一,各自独立一套;这个就是最典型的架构设计时,只考虑开发一个环节,没有将架构上拆分后的概念延伸贯穿到整个软件生命周期的问题。这个也将导致下面一系列的问题产生;


2、上面做不到,没有统一的标准和概念,各个平台之间就很难集成和打通,所谓的持续集成、持续发布、持续部署、持续交付等等这些环节仍然靠大量的人肉动作去做,还谈不上持续,效率自然上不去;


3、稳定性保障无从下手,大量的服务化应用,错综复杂的调用依赖,海量链路日志,问题排查困难,一个请求下来,到底跑到哪个应用去了都不知道;故障持续时间长,出现流量激增或基础部件故障,无法快速隔离、降级和恢复;


4、效率跟不上,还经常出问题,进而,团队协作效率降低,相互信任下降,就开始经常听到下面的言论:


开发抱怨:“运维做的不到位,申请个机器老半天,发布效率也提不上去,代码都写好了,上线咋这么费劲,严重降低了我们的工作效率,再有,出了问题还得我们上去定位,运维什么都帮不上。


运维抱怨:“开发的架构这么烂,配置五花八门,还得手工维护,我咋知道这些配置干嘛的,配错一个,就出故障,让我怎么自动化发布;日志放哪儿也不知道,一会这里,一会那里,出问题你说我咋定位。


5、好了,出了问题,就开始撕逼扯皮,相互推诿,背了责任的一方又开始甩出背锅言论,感觉没有被公平对待。团队的氛围也开始出现 bad smell。

三、问题出在哪儿了呢?

其实从开发的角度和运维的角度单独来看,双方的表达都没有问题,做的事情也都没有问题。但是双方都是只站在了自己的角度表达问题和情绪,恰恰都忽略了很重要的一点:运维和开发不是相互割裂的两个组织,运维的技术体系和全站整体的技术体系更是不可分割的,越是把它们割裂开看,越是站在各自的角度看问题,上面说的这些情况就越是无解,整个团队也会限于这种没完没了的、毫无意义的纠缠中,从长期看对团队和个人的发展都是很不利的。


所以根本原因,在于将开发和运维在技术和管理两个层面给割裂开了,详细描述如下:


1、运维阶段要面临的问题没想清楚,从一开始架构设计上就没有考虑清后续的运维阶段要面临的问题和事情,比如这么多应用,资源应该如何分配、发布的效率如何保障等等,而都是在考虑开发自身的需求和问题。不考虑运维面临的问题,这样实际就是把运维割裂在整个架构设计之外了。(这个责任在谁呢?)


2、运维团队的职责定位不清晰,**整个技术架构朝着服务化的方向演进后,整个组织架构对于运维团队的定义也是模糊的,也就是运维到底要做什么,要承担什么样的职责,因为一个合理的架构落地,必然要有合理的组织架构去对应支撑才可以。运维定位不清晰,就相当于将运维团队给割裂在研发团队之外了。

四、未完待续

所以打算下篇就讲讲这个问题应该如何破局,在这样一个技术架构体系下,运维的角色应该要做什么样的转变,才能适应和支撑起对应的技术体系。(如果还是传统的硬件维护、网络维护、脚本编写这样的定位和要求,显然是跟不上技术发展的要求和节奏的。)


本文转载自成哥的世界公众号。


原文链接:https://mp.weixin.qq.com/s/qn9iHEGch5Vz-_M1Od3V6g


2020-03-18 20:071119

评论

发布
暂无评论
发现更多内容

想象中的论文答辩和真实的论文答辩,我太难了……

程序员生活志

倒计时 | 7.24 阿里云 Serverless Developer Meetup 杭州站报名火热进行中!

Serverless Devs

阿里云 Serverless 云原生

网络攻防学习笔记 Day81

穿过生命散发芬芳

网络攻防 7月日更

全球首个AI组合亮相,有人直呼惊艳,也有人害怕恐惧

程序员生活志

PHA矿机挖矿系统搭建

Geek_23f0c3

区块链 云算力模式系统开发源码 PHA矿机挖矿

亿万级信令服务演化

anyRTC开发者

音视频 实时通信 实时消息

虚拟币合约交易所搭建,永续合约平台搭建

FIL的最新消息?FIL的价格还能回到150吗?

区块链 分布式存储 IPFS fil挖矿最新消息? fil价格

ARTS之释义

清风明月

955.WLB 不加班公司名单!再新增 5 家公司!

程序员生活志

基于Spring Boot+Security+Redis权限管理系统,权限控制采用RBAC

Java架构追梦

Java 源码 架构师 springboot 权限管理系统

已收藏!深入浅出Android性能调优

欢喜学安卓

android 程序员 面试 移动开发

为什么别的程序员能月薪 20k ,而你一个月只能拿 6K 的低保?差别就在这!

白亦杨

Java 编程 程序员 技术宅

腾讯云 TRTC 这次玩大了!冲出国门联手日本直播平台.yell Live打造在线直播互动能力

腾讯云音视频

加油站三维可视化监控系统,安全管理智慧运营

一只数据鲸鱼

数据可视化 智慧城市 3D可视化 数字孪生 加油站

论区块链技术如何赋能社交代币并打造创作者经济新局面

CECBC

聊聊 Web Workers 吧

Faye

JavaScript 大前端

一文读懂区块链技术如何改变非洲贸易(上)

CECBC

深入原生冰山安全体系,详解华为云安全服务如何构筑全栈安全

华为云开发者联盟

容器 数据安全 云安全 Web应用防火墙 华为云安全

简单好用的照片恢复软件推荐

淋雨

EasyRecovery 文件恢复 硬盘数据恢复

我看JAVA 之 垃圾回收GC

awen

Java JVM 垃圾回收 GC

浅谈:前端路由原理解析及实践

尔达Erda

开源 云原生 大前端 UI 路由器

音视频开发进阶指南,最新大厂Android校招面试经验汇总

欢喜学安卓

android 程序员 面试 移动开发

ZooKeeper 分布式锁 Curator 源码 02:可重入锁重复加锁和锁释放

程序员小航

源码 分布式锁 zookeeper分布式锁 curator

又双叒叕一行代码:Map按值排序

FunTester

Java 排序 map LinkedHashMap

什么是共识?(理论篇)

趣链科技

流程审批系统如何通过低代码平台实现?

优秀

低代码 流程审批系统

为什么别的程序员能月薪 20k ,而你一个月只能拿 6K 的低保?差别就在这!

Java 编程 程序员 技术宅

终于有10年阿里老兵把SpringCloud微服务实战经验全总结出来了

进击的王小二

Java 架构 微服务 Spring Cloud

年包70W,五轮拿下阿里Offer,全靠阿里内部整理的面试指南(真题分享)

Java 程序员 架构 面试

面试阿里太难了!二本毕业、两年crud经验,侥幸通过面试定级P6

Java 程序员 架构 面试

运维架构是全站技术架构中不可分割的一部分_软件工程_成哥的世界_InfoQ精选文章