作 者
Steve Mushero
全球知名技术专家和创业者,云敞科技全球CTO&联合创始人。目前专注于研发新一代的混合云智能运维管理平台。Steve在美国、中国等地企业从事IT和运维工作近30年,曾任土豆(中国)、Intermind、NEW Vine technology首席技术官。拥有大量互联网技术专利,并撰写了全球化发展相关书籍。
关于运维的干货我们讨论过很多,而对运维及开发工程师而言,除了运维技巧及经验外,拥有优质的工具来管理系统,亦是重中之重。如果存在着这些强大的工具,基于各种类型的结构以及系统的全生命周期,依旧能实现掌控全局的运维,无疑工作将会变得简单许多。所以,这可以说是企业及工程师的梦想。
我们把运维工程师梦想拥有的10种工具做个排列,展示如下:
1
全栈工具
工程师需要自下而上,跨越系统所有层、服务和结构的全栈工具。
现如今的运维工具太过分散,常常在云、服务和代码之间有一个非常清晰的划分。有许多基本的工具可以帮你处理AWS、Azure等云,还有一些工具,例如用于MySQL的VividCortex,用于代码的APM工具如New Relic。但除了一些基本的交叉监控功能外,从云、数据中心,到Nginx、Tomcat和MySQL等服务、代码、负载均衡器以及应用程序交付环节,这些工具甚至从没有考虑过,更不用说实现管理全栈的目标。
当每个运维人员只看到一个单独的堆栈而无法纵观全局时,整个堆栈和运维工作都会受到影响。
2
读写工具
工程师需要可以读取及写入系统的工具。
绝大多数工具都支持读取或写入,其中大多数是只读的,这意味着它们擅长监控,但很少能实现实质性工作,所有操作都是通过SSH、云控制台或其他一些工具实现。只写工具仅限于像Puppet或Ansible这样的编排引擎,或者像Jenkins这样的构建系统,这些系统的输入只是代码或配置。
一些监控响应系统,如StackStorm会更优质,具备重启服务的能力,但很少能够完成更复杂的更新、配置、体系结构、扩展或其他重要任务。很少有人敢尝试将读写工具与系统或其环境的统一模型同步。
3
设计系统
工程师需要一个全栈、可视化的设计系统,可以在任何地方对任何系统进行推进和反向工程。
4
构建、同步和更改工具
工程师需要能够构建和更新任何复杂、规模化系统的工具。
全栈构建工具在市场上是缺乏的,如今的自动化运维工具主要受脚本驱动,与可以被认为是全栈的工具相去甚远。虽然它们可以创建任务,但难以以任何可重复的方式构建整个系统,尤其是在包含Nginx或MySQL等服务配置时。
许多当前的工具都使用来自版本控制的AMI设置手册,但是缺乏与现有系统同步、处理更改、更新,或真正从零开始执行多个操作的能力。
新工具需要实现构建、同步和更改。最重要的是,它们需要全线跟进进程,从云和架构支持的完整堆栈,到详细的VHOST配置选项、MySQL选项、Java GC模式等,包括任何云服务、硬件、物理磁盘布局、内核设置、物理网络等。
5
高级监控和警报工具
工程师需要对集群和服务进行高级深度监控,并配备警报、通知、自动修复和机器学习功能,以便基于异常检测进行预测性警报。
大多数人都在使用Nagios、Cacti或MRTG等第一代工具,Zabbix等第二代工具,偶尔使用SignalFX或Datadog等第三代工具进行监控。其中大多数都具有有限的服务指标和很少的高级功能,更不用说集群或服务级别的支持了。
很少有复杂的警报、静默管理、根本原因分析并易于使用的故障排除工具,也没有与慢查询日志、Java日志或多服务器事件的真正集成,更没有自动修复、警报处理及专家系统帮助解决问题。
6
自动发现和配置工具
工程师需要能够自动发现正在运行的服务,自动配置它们进行监控,自动查找服务器和服务之间的各种链接,以及为任何系统自动绘制正确图表的工具。
虽然有些工具可以找到正在运行的服务,但还不够完整,也不能自动配置运行服务以进行监控。它们无法编写Java JMX配置、更改Nginx以允许监视或安装所需的模块,更不用说为每个服务器处理多个Tomcat、Redis或其他服务实例。
此外,绝大多数人无法找到系统之间的联系及其交互方式,也无法自动绘制系统是如何构建或运行的图表,尤其是当系统包含Docker、云服务或集群时。
7
深度技术工具
工程师需要一套广泛而深入的服务专用工具,包括关键指标、独有的工具和分析、故障排除专业知识和规则系统、动态报告以及特定的操作与自动化。
实际上很少有工具能够帮助运维工程师或为专家提供真正的支持,例如DBA、SRE、DevOps以及安全工程中涉及的个人。当需要对实际系统进行深层次的问题、调整或故障排除时,能随时提供帮助的工具很少。
有一些不错的系统,如VividCortex,存在于特定服务中,但它们很昂贵并且仅限于一些单一服务。很少有工具可以进行任何实时分析,也没有工具真正了解特定服务如何在重负载或故障条件下工作和操作。
8
云工具和集成
工程师需要完整的云集成、建模和报告,不仅用于上述设计和构建过程,还需要查找、修复和配置各种云组件和服务。
如今云工具主要用于成本管理和报告、监控指标以及一些有限的构建集成,例如Ansible或Terraform。有一些合规系统,例如Evident.io,它们没有与其他任何东西集成,很少有工具真正扩展云管理或添加基本工具,即使是标记和搜索。
对于故障排除、性能管理、体系结构向导、安全报告程序、DBA工具等,没有真正的专家系统来帮助构建和管理这些复杂的系统。能够完全集成的新云工具应具备与云组件和系统协同工作的能力,例如搜索和管理标签、管理成本以及提供包括合规性、审计和安全性在内的报告。
9
Runbook(手册)和自动化
工程师需要有效的最佳Runbook和程序,无论是手动还是自动,跨越全栈和广泛的系统、服务、状态。
警报和问题7*24小时都容易发生,团队需要知道该做什么,如何解决问题,以及让事件恢复重新上线,并按预期执行关键步骤。但很少有监控或管理工具有真正的Runbook,更不用说通过根本原因分析或专家系统来帮助他们的工作。
此外,几乎没有一个系统能够基于高级警报采取自动化操作,特别是在管理系统具有适当的安全性和保护的情况下。一些系统监视自动缩放,尽管可以做出管理,但是自动操作和自动修复目前不存在。
10
CMDB和Audit(审计)
工程师需要深入而强大的CMDB(配置管理数据库)来解析、检查和版本化每个系统级别上的配置和组件。
CMDB是基于ITIL的IT管理工具中的重要组件,但通常仅限于基本硬件规范和已安装软件及版本的列表。它们很少深入到操作系统、云或服务的实际配置中,如Apache、Redis、PostgreSQL和其他服务。它们的版本控制和历史都较欠缺,通常不知道是谁做了哪些更改或何时做出了更改。
通常,当前系统无法比较服务器,当发现配置偏差或发生各种变化时发出警报。此外,它们在动态基础设施、Docker、自动扩展、微服务和其他堆栈元素方面表现不佳。新的CMDB需要将警报、差异等集成到所有其他工具中,以帮助审计、合规性、监控、根本原因分析和故障排除。
除了CMDB之外,工程师还需要全面的全栈最佳实践审计工具,并提供建议,理想情况下,还需要跨各种云、服务、配置和系统自动纠正大多数问题。
一般而言,今天的审计系统过于简单,仅限于云层或特定服务,如MySQL,也就是说非全栈。真实的系统是复杂和动态的,通常很难知道是否遵循了最佳实践和正确的流程,以及系统是否正确配置以获得最佳可靠性、性能和安全性。
总 结
如果企业、工程师有自己的方式方法,这些管理现代系统的十大梦想工具将成为现实,然而不幸的是,目前系统中并没有真正以他们需要或以最佳水平的状态运行,它们没有按照应有的方式完全整合。
但是,到了今天
云敞的统一智能运维实操平台OpsStack拥有以上工程师梦想的功能。它完全集成并随时可以设计、构建和管理任何规模的全栈系统,负责整个生命周期,包括正向和反向工程、监控、警报、故障排除等。
OpsStack为运维而生,
现在就开始尝试起来吧!
工欲善其事,必先利其器
OpsStack作为统一的智能运维管理平台
技术全球领先,助力您的运维大业
欢迎联系我们:
sales@yunchangcloud.com
或登录官网查看详情
www.yunchangcloud.com
关于云敞科技
上海云敞网络科技有限公司(简称“云敞科技”),脱胎于成立于2008年的云络网络科技(上海)有限公司,总部设在上海,是一家以混合云系统管理为核心的,提供一站式运维管理的系统服务商。云敞科技致力于帮助中国企业选好云,上好云,用好云。云敞科技拥有自主研发的智能运维管理平台OpsStack, 拥有运维即服务(OaaS)的创新服务理念,以满分获得AWS全球MSP认证以及AWS全球CMT认证,通过ISO27001和ISO9001。公司有近百位研发,技术专家和支持团队为客户服务,最终旨在为客户提供系统设计、搭建、优化、迁移与24×7全天候管理,确保客户系统的可靠性、规模扩展、安全性、性能与成本优化的多重效益。目前,云敞全面聚焦智能运维平台的研发和推广,并给众多转型做云计算运维的传统SI和ISV进行专业赋能。