前言

自动化运维架构,是一种综合了管理机制、权限划分、软件和人员支持的综合架构。在建设和优化的过程中,需要设计人员不断根据产品现状进行调整。这篇文章主要从 测试环境、造数规范、运维入口、服务器和软件规范、网络隔离级别 几个方面入手,阐述实用的运维架构的编制方法。

目录

  • 什么是自动化运维
  • 运维入口的一致性
  • 入口一致性之测试篇
  • 入口一致性之人员篇
  • 入口一致性之服务器篇
  • 入口一致性之软件配置篇
  • 入口一致性之网络篇

这里的自动化运维,主要是应用上线后的  测试环境管理 / 应用更新 / 监测机制 。读者可以参照这些机制,按照现有或将来的技术发展、选择适合自己的软件和设备来实现架构。

当然,自动化是运维发展到一定程度(注意:不是一定规模)的自然需要。在此之前,运维入口的一致性(如:统一抽取日志 / 统一监控等软件的安装位置 / 统一系统用户权限等)、服务器规范和软件规范的一致性必须得到保证。下面就笔者掌握的经验来谈谈。

首先从测试环境管理机制讲起。测试环境与生产环境相比,除了代码的差异外、还有系统数据的差异。而两种环境之间,应该共享一套用户认证机制(如采用相同版本的 CAS 、 LDAP 等统一访问协议)和网络划分 / 权限管理方法。此外,数据库安装位置和参数设置也应尽量和生产环境对齐、以便复现问题和减少排查工作。

服务器 数据库 涉外文件服务器 / CDN
认证方式 建议与生产一致 建议与生产一致 建议与生产一致
账号规范 建议与生产一致 建议与生产一致 建议与生产一致
部署方式(DevOps 、 Yum 安装、NPM 安装等) 建议与生产一致 建议与生产一致
请求网关(Nginx 、Httpd等)
安装位置 建议与生产一致 建议与生产一致
日志采集 建议与生产一致 建议与生产一致 建议与生产一致
应用数据规范 需要区分 需要区分
网络权限 建议与生产一致 建议与生产一致

如上表所示,空白的部分建议按需考虑。测试环境不是简单复制了生产环境,有一些部分还需要进行调整、因为测试环境是针对设计场景和生产问题而服务的。测试环境非必要不引进生产的数据。一般在涉及基础软件(如应用框架版本 / 服务器操作系统 / 数据库版本变更)的修改时,才需要引进生产环境的真实数据。

与真实数据相对,我们需要测试环境的造数规范。测试环境应该有一套完整的用户、物料、组织单元、系统权限名称(等)的命名规则。如所有测试用户都以 “测” 开头,且名字应该随机生成。各测试系统间的接口 / 直联数据库等应该实现自动生成;避免开发和测试人员在不同系统间,重复录入测试信息。

业务流程所需集成环境 单据生成 其他
生产 可以按各自规范集成 可以按需使用模板或手工生成
测试 需要一键集成、节省测试时间 建议按业务场景预制模板后,用模板生成

接下来,我们具体谈运维入口的一致性。业务系统各模块应该有对应的责任人(Owner),对系统的原始数据拥有使用权。如果该模块使用了其他模块的数据,则按原始数据的模块 Owner 一同会签管理。当需要进行运维,应当由各模块的 Owner 以书面形式提交到工作台。工作台在明确需求后,如需要开通访问权限,则通过脚本在目标机器生成临时账号,使用后及时删除该账号。如需进入超级用户操作应用,则需工作台人员输入账号密码、并全程在工作台人员陪同下操作。

还有服务器规范。服务器安装应该按应用机、数据库机、堡垒机(集群)进行网段划分。特别是数据库和应用服务器,单体应用通常采用数据库和应用在相邻 IP 地址部署(好朋友天天见?)。而且堡垒机应该设置对应的令牌、限制单次访问的会话长度。

还有软件规范。软件安装应采用统一的目录。如 Windows 机器可以专门安装在非系统盘的某个固定位置、Linux 机器可以在 /etc 等位置统一安排、保证需要访问的软件之间互通目录权限。并且,需要分开安装目录和备份目录。备份规则可以是 【软件名字】+【备份时间】+【 生产/  测试 / 开发】。这里的目录和软件权限,可以和各生产 / 测试环境的账号权限管理结合起来。下面举例说明一些用户名字和访问权限的关系。同一个用户(主账号)可以绑定多个下面的权限账号。且当主账号所属人员离职和调动后、原有权限账号可以统一停用;或按下面规则转移一个或多个权限账号给交接的主账号。

名字 权限 使用范围
zhangsan_prd_guest 常规权限,访问管理员以外的目录;可以用作文件传输、数据处理等。 生产环境
lisi_dev_dataquery 数据库权限,专门访问数据库查询;建议只能访问数据库所在目录。 开发环境
wangwu_uat_datamaster 数据库权限,包含创建表和删除表的权限;建议只能访问数据库所在目录。 测试验收环境
gongliu_prd_admin 可以访问 linux 的 /home 目录或 windows 系统盘,具有完全操作权限。 生产环境
zhaoqi_dev_appadmin 可以访问配置好的 http 服务器(IIS / nginx / tomcat / Webshpere 等)目录,具有启动和停止应用的权限。适合进行日志调取、故障排查等场合。 开发环境

还有补充网络隔离级别的规范。

总结

以上是对于自动化运维架构的一些想法和编制思路,希望能帮到大家。

(完)

一种自动化运维架构的概述相关推荐

  1. Python自动化运维之Linux概述和虚拟机安装使用终极指南

    一.Linux概述 1.Linux含义 狭义Linux:由Linus Torvalds开发的Linux内核代码 广义Linux:由Linux厂商基于Linux内核开发的Linux发行版操作系统 2.U ...

  2. 系统封装工具_去工具化/脚本化理解,自动化运维落地最佳实践之业务/架构/模型/方法...

    本文转载自:互联网运维杂谈 近年来后端IT也呈现更复杂的形态,底层IT架构逐渐开放平台化.云化,上层应用微服务化等等,虚拟化.云平台.容器PaaS和云原生框架都进入到IT运行环境中,而传统业务依然运行 ...

  3. ansible自动化运维(一)——基本架构简介

    1.介绍 ansible是一种自动化运维工具,基于paramiko开发的,并且基于模块化工作,Ansible是一种集成IT系统的配置管理.应用部署.执行特定任务的开源平台. 它是基于python语言, ...

  4. 一些小团队的自动化运维实践经验

    作者:翟志军 来源:http://showme.codes/2018-06-07/devops-in-action/ 注:本文要求读者对Ansible和 Jenkins有一定的认识. 题记: 幸福的家 ...

  5. 运维技能定级标准第4篇——关于运维工程师岗位的自动化运维与运维开发技能级别设计

    运维工程师岗位工作技能的评定类别(5)和(6) 5.自动化运维技术 级别0,什么都不懂 级别1,了解ansible.saltstack.puppet等主流的自动化运维管理技术工具,掌握公司主要使用的一 ...

  6. 44学习自动化运维工具 Chef 的基本用法,包括厨师编写、节点管理

    Chef是一种自动化运维工具,它允许您定义基础设施的状态,并根据需要管理这些状态.在这里,我们将学习Chef的基本用法,包括如何编写和管理Cookbook和Node. 安装Chef 在使用Chef之前 ...

  7. SaltStack 自动化运维详解

    一.自动化运维工具对比 使用所需软件配置单个服务器是一项相当简单的任务. 但是,如果许多服务器需要安装相同或相似的软件和配置,则该过程将需要大量的工时才能完成,这会耗尽您本已紧张的资源.如果没有某种形 ...

  8. 企业级自动化运维方案设计及Saltstack、Ansible等5种工具比较分析--云平台技术栈08...

    导读:之前发布了云平台技术栈(ps:点击可查看),本文主要说一下其中的服务器自动化配置! 来自:公众号talkwithtrend 1.企业运维现状与发展趋势 随着企业信息化的不断发展,运维人员需要面对 ...

  9. [Ansible 概述]Ansible 的自动化运维

    一.Ansible 概述加粗样式 Ansible 是目前最受运维欢迎的自动化运维工具,基于Python开发,集合了众多运维工具(SaltStack puppet.chef.func.fabric)的优 ...

最新文章

  1. leetcode 贪心_贪心算法:给我最好的,现在就要!
  2. elasticsearch Java API 之Delete By Query API
  3. overleaf入门
  4. Dev XtraTreeList 学习笔记
  5. 安卓端黑名单拦截电话
  6. 幂级数——函数的幂级数展开
  7. CUDA10.2显卡驱动安装
  8. python3 urlencode_Python3 parse.urlencode() 与parse.unquote()
  9. matlab画热力网格图
  10. 【Python】P4994 终于结束的起点
  11. pandas——描述性统计方法和时间类型
  12. jQuery动画序列
  13. JavaWeb_07_Ajax
  14. 湖北省专科计算机竞赛,NOI信息学竞赛2019年湖北省队名单
  15. 华为设备配置单臂路由
  16. 切绳子题解(博客搬家)
  17. HDU5155 Harry And Magic Box
  18. 高中计算机网络安全教案,高中信息技术信息安全教案
  19. 华升富士达电梯调试软件、故障分析软件,PMC,EEC,ROM
  20. 2019.8.1考试反思

热门文章

  1. php curl 优化下载微信头像
  2. 【OpenFOAM】-pimpleFoam-RAS-算例12-wingMotion
  3. 【食品图像识别】Large Scale Visual Food Recognition
  4. 什么是AnTi防御-无限防方案?能帮助游戏解决哪些攻击问题?
  5. 5种食物建议女性常吃,含胶原蛋白,补充营养
  6. Css3动画浏览器兼容问题
  7. 深入浅出TensorFlow2函数——tf.keras.layers.Dense
  8. 微信小程序获取头部高度
  9. 阿里飞燕平台(小夜灯从无到有的实现)
  10. AI时代的赚钱思路:23岁女网红如何利用AI技术年入4亿?