java 单机接口限流处理方案
341
2023-01-04
本文目录一览:
1、学习目标:
可掌握的核心能力:
1. 熟悉计算机相关概念;
2. 掌握基础的测试理论;
3. 熟练掌握HTML常用标签和语法规范;
4. 掌握使用CSS定义网页样式;
5. 掌握js的基本用法;
2、知识点:
1)计算机基础
计算机组成部分、操作系统分类、B/S和C/S架构、常用DOS命令、服务器域名
2)测试理论
软件测试的目的、软件测试定义、软件测试原则、产品质量模型、测试基本流程
3)HTML基础
HTML基础语法、标签属性、图片标签、超链接、锚点、表单
4)CSS基础
CSS基础语法、CSS四类选择器、常用文字属性、行高属性、边框、盒子模型、内外边距
5)JS基础
JS基础语法、JS引入方式
1、学习目标:
可掌握的核心能力:
1. 掌握Linux操作系统按照和配置;
2. 熟练掌握Linux常用命令;
3. 掌握数据库增删改查操作;
4. 熟悉数据库索引、视图、事务、常见函数等高级功能;
5. 掌握Redis的string类型、hash类型、set类型、list类型等基本类型和操作;
2、知识点:
1)LINUX(熟悉)
操作系统介绍、操作系统发展历史、CentOS图形界面、文件和目录、常用LINUX命令使用、vim文本编辑器的使用
2)数据库介绍(熟悉)
数据库基本概念、关系型数据库介绍、MySQL安装与使用、Navicat使用
3)SQL语言(重点)
数据表操作、数据操作-增删改查、条件查询、排序、聚合函数、分组、分页、连接查询、自关联、子查询、子查询演练
4)数据库高级功能(了解)
数据库设计、命令行操作数据库、函数、存储过程、视图、事务、索引、外键、用户密码
5)redis数据库功能(掌握)
掌握Redis的string类型、hash类型、set类型、list类型等基本类型和操作;
1、学习目标:
可掌握的核心能力:
1. 掌握测试的基本概念和测试常见分类;
2. 熟练掌握黑盒测试用例设计方法,进行功能测试用例设计;
3. 熟练掌握缺陷报告的编写;
4. 熟悉测试管理工具禅道和JIRA的使用
5. 掌握项目测试流程;
6. 掌握Web项目功能测试分析和用例编写;
7. 熟悉测试计划,测试方案,测试报告的核心内容
8. 掌握功能测试与数据库的关系
9. 掌握Fiddler工具的使用
2、知识点:
1)软件测试理论
软件测试的分类,软件开发模型和测试模型,软件的质量模型,测试用例的定义和要素
2)测试用例设计
等价类方法、边界值方法、因果图、判定表、状态迁移法、正交、场景
3)缺陷管理
缺陷定义、缺陷的判定标准、缺陷报告、缺陷跟踪流程
4)Web项目实战
搭建项目的测试环境,如何快速熟悉项目,项目的测试流程,测试计划和方案,功能测试分析,状态迁移法的使用,流程测试分析,非功能测试分析,测试报告编写,Fiddler抓包
5)App项目实战
6)测试管理工具
禅道的使用,JIRA的使用
1、学习目标:
可掌握的核心能力:
1. 掌握Python基础语法, 具备基础的编程能力;
2. 建立编程思维以及面向对象程序设计思想。
2、知识点:
1)Python开发环境
Python开发环境的搭建、Pycharm使用
2)Python基础
变量以及变量的类型、标识符和关键字、变量名命名方式、算数运算符、变量数据类型转换、输入和输出、注释、if语句基本格式、if…else…语句、if…elif..else语句、逻辑运算符、比较关系运算符、运算符优先级、while循环语法格式、while嵌套应用、break的用法、continue的用法、列表概念及操作、元组概念及操作、字典概念及操作、字符串概念及操作、集合概念及操作、for循环及for…else用法、函数的基本语法、函数执行流程、文档注释、带参数的函数、带返回值的函数、函数的嵌套调用、匿名函数、递归函数、局部变量和全局变量、引用、文件的概念、文件的打开与关闭、文件读写, 以及文件定位读写、文件、目录相关操作
3)面向对象
面向对象介绍、类和对象的概念、魔术方法的意义及作用、对象成员的访问控制权限、继承的概念及意义、继承、多层继承和多继承、多态的概念以及应用、类属性和实例属性、实例方法、类方法、静态方法、设计模式: 单例模式
4)异常处理
理解异常的作用、捕获异常、异常的传递规则、自定义异常
5)模块和包
模块和包的概念、__all__的用法、import语句用法、from...import...用法、from...import * 用法
1、学习目标:
可掌握的核心能力:
1.能够熟练搭建Web自动化测试环境;
2.熟练掌握元素的定位方法和元素操作;
3.掌握鼠标键盘操作及HTML特殊元素的处理;
4.掌握使用UnitTest管理自动化测试的脚本;
5.熟练掌握PO模式的设计思想,并能够对页面进行封装;
6.掌握数据驱动的实现方式;
7.掌握日志的相关概念,以及日志的收集处理;
8.掌握在实际的项目中如何灵活运用自动化的相关技术。
2、知识点:
1)WEB自动化入门
自动化测试的理论知识、主流的Web自动化测试框架介绍、Selenium的发展历史及工作原理、元素查看工具使用、环境搭建
2)WEB自动化基础
元素基础定位方法、Xpath和CSS元素定位方法、元素常见操作、浏览器操作方法、鼠标键盘操作、显示等待和隐式等待、HTML特殊元素处理、窗口截图、验证码处理
3)WEB自动化中级
UnitTest框架、Fixture、UnitTest断言、参数化、测试报告
4)WEB自动化高级
PO模式、数据驱动、日志处理
5)项目实战
自动化测试流程、项目自动化框架设计、自动化代码实现
1、学习目标:
可掌握的核心能力:
1.掌握移动端APP测试特性;
2.能够熟练搭建移动自动化测试环境;
3.熟悉appium的工作原理;
4.熟练掌握ADB工具的使用;
5.熟练掌握元素的定位方法、元素操作和手势操作;
6.掌握单元测试框架pytest的使用;
7.掌握YAML数据读写;
8.掌握使用allure生成测试报告;
9.熟练掌握PO模式的设计思想;
10.掌握数据驱动的实现方式;
11.掌握Git的使用方式;
12.掌握Jenkins持续集成的环境配置;
13.掌握在实际的项目中如何灵活运用移动自动化的相关技术。
2、知识点:
1)移动自动化特性
APP应用系统架构、测试环境及发布平台、APP敏捷开发模式、APP应用测试要点、业务功能测试、兼容性测试、安装卸载升级测试、交叉事件测试、Push消息测试、性能测试、用户体验测试、稳定性测试
2)移动自动化基础
移动端测试分类及特点、ADB命令及Monkey使用、appium环境搭建、appium工作原理
3)移动自动化中级
APP和手机系统操作、元素定位、元素操作、高级手势操作、混合APP测试、PyTest测试框架、定制测试报告、YAML数据读写
4)移动自动化高级
PO模式、数据驱动、Git、Jenkins持续集成
5)项目实战
APP项目实战
1、学习目标:
可掌握的核心能力:
1.掌握接口及接口测试相关概念;
2.掌握使用Postman进行接口测试;
3.熟练掌握数据库的基本操作和事务操作;
4.掌握requests库使用及脚本封装;
5.掌握接口测试框架的设计和封装;
6.掌握使用持续集成工具管理接口测试脚本;
7.掌握在实际的项目中如何灵活运用接口测试的相关技术。
2、知识点:
1)接口测试基础
接口及接口测试概念、HTTP协议、接口规范、项目环境说明、接口测试流程
2)Postman实现接口测试
Postman介绍和安装、Postman基本用法、Postman高级用法、Postman测试报告、项目实战
3)数据库操作
数据库介绍、数据库基本操作、数据库事务操作
4)代码实现接口测试
Requests库、集成UnitTest、接口测试框架开发、项目实战
5)持续集成
持续集成介绍、Git、Jenkins、持续集成之Postman、持续集成之代码
6)接口测试扩展
Mock测试、接口测试总结
1、学习目标:
可掌握的核心能力:
1.能够熟练搭建性能测试环境;
2.掌握性能测试基础理论;
3.掌握Jmeter常用组件使用;
4.掌握Jmeter编写和录制性能测试脚本;
5.掌握基于jmeter实现单一和混合场景搭建;
6.掌握思考时间、事务、逻辑控制器在性能测试场景的应用;
7.掌握Jmeter常用性能插件进行图表分析;
8.掌握Linux服务型性能监控方法和指标;
9.掌握数据库监控和调优的常见方法。
2、知识点:
1)性能测试基础
性能测试理论、性能测试分类、性能测试常用指标、性能测试流程
2)性能测试工具
常用性能测试工具、Jmeter环境搭建、Jmeter功能概要、元件作用及执行顺序、线程组、参数化、断言、关联、连接数据库、逻辑控制器、定时器、分布式、测试报告
3)项目-接口性能测试
项目API文档分析、接口清单梳理、接口脚本设计、并发数据计算、逻辑控制器项目应用、单一场景搭建、常用响应图表插件及应用
4)项目-web性能测试
脚本录制、正则过滤、cookie管理器、事务控制器、思考时间、混合场景搭建、web性能脚本执行与分析
5)性能测试调优
windows服务器性能监控、linux服务器性能监控、性能测试报告
1、学习目标:
可掌握的核心能力:
1.掌握功能测试在真实的项目中如何实施;
2.掌握基于Selenium的Web自动化测试框架搭建和使用;
3.掌握基于Appium的APP自动化测试框架搭建和使用;
4.掌握使用工具实现接口测试;
5.掌握基于Python+Requests库的接口自动化测试框架的搭建和使用;
6.掌握Locust性能测试框架的使用;
7.掌握如何对APP进行性能测试;
8.掌握在实际的项目中如何灵活运用相关测试技术。
2、知识点:
1)项目介绍
项目简介、项目架构
2)功能测试
功能测试设计思路、自媒体端测试、后台管理端测试、用户APP端测试
3)UI自动化测试
Selenium Grid、搭建自动化测试框架、编写自动化测试脚本
4)接口测试
接口测试流程、基于工具的接口测试、基于代码的接口测试
5)性能测试
Locust框架、APP性能测试
互联网时代的网络自动化运维
互联网上有两大主要元素"内容和眼球"接口自动化框架设计图,"内容"是互联网公司(或称ICP)提供的网络服务,如网页、游戏、即时通信等,"眼球"则是借指海量的互联网用户。互联网公司的内容往往分布在多个或大或小的IDC中,越来越多的"眼球"在盯着ICP所提供的内容,互联网公司进行内容存储的基础设施也呈现出了爆发式的增长。为了保障对内容的访问体验,互联网公司需要在不同的运营商、不同的省份/城市批量部署业务服务器用以对外提供服务,并为业务模块间的通信建立IDC内部网络、城域网和广域网,同时通过自建CDN或CDN专业服务公司对服务盲点进行覆盖。因此随着业务的增长,运维部门也显得愈发重要。他们经过这些年的积累,逐步形成了高效的运维体系。本文将结合国内互联网公司的经验,重点针对IT基础设施的新一代自动化运维体系展开讨论。
一、运维的三个阶段
● 第一个阶段接口自动化框架设计图:人人皆运维
在早期,一个公司的IT基础设施尚未达到一定的规模(通常在几台到几十台机器的规模),不一定有专门的运维人员或部门,运维的工作分担在各类岗位中。研发人员拥有服务器权限,自己维护和管理线上代码及业务。
● 第二个阶段:纵向自动化
随着业务量的增长,IT基础设施发展到了另外一个量级(通常在上百台至几千台机器的规模),开始有专门的运维人员,从事日常的安装维护工作,扮演"救火队员",收告警,有运维规范,但运维主要还是为研发提供后置服务。
这个阶段已经开始逐步向流程化处理进行过渡,运维部门开始输出常见问题处理的清单,有了自己业务范围适用的自动化脚本,开始利用开源软件的拼装完成大部分的工作。
具体表现为:各产品线有自己编写的脚本,利用如SVN+puppet或chef来完成服务器的上线和配置管理等工作。
● 第三阶段:一切皆自动
在互联网化的大潮中,越来越多的黑马团队应运而生,都曾有过短时间内用户访问量翻N倍的经历。在流量爆发的过程中,ICP的互联网基础服务设施是否能够很好的跟进,直接决定了业务内容能否满足海量用户的并发访问。
与此同时,运维系统需要足够地完善、高效、流程化。谷歌、腾讯、百度和阿里等规模的公司内一般都有统一的运维团队,有一套或多套自动化运维系统可供参照,运维部门与开发部门会是相互平行的视角。并且也开始更加关注IT基础设施在架构层面的优化以及超大规模集群下的自动化管理和切换(如图1所示)。
图1.大型互联网公司IT基础设施情况概览
二、BAT(百度、阿里、腾讯)运维系统的分析
国内的互联网公司百度、阿里、腾讯(以下简称:BAT)所提供的主要业务内容不同,IT架构不同,运维系统在发展过程中有不同的关注点。
1.腾讯运维:基于ITIL的运维服务管理
预计到2015年腾讯在全国将拥有60万台服务器。随着2012年自动化部署实践的成功,目前正在进行自动化验收的工作。在网络设备方面,后续将实现从需求端开始的全自动化工作:设备清单自动生成-采购清单自动下发-端口连接关系、拓扑关系自动生成-配置自动下发-自动验收。整个运维流程也已由初期的传统IT管理演进到基于ITIL的服务管理流程(如图2所示)。
图2.腾讯基于ITIL的运维服务管理
2.阿里运维系统:基于CMDB的基础设施管理+逻辑分层建模
CMDB(Configuration Management Database) 配置管理数据库(以下简称:CMDB),将IT基础架构的所有组件存储为配置项,维护每个配置项的详细数据,维护各配置项之间的关系数据以及事件、变更历史等管理数据。通过将这些数据整合到中央存储库,CMDB可以为企业了解和管理数据类型之间的因果关系提供保障。同时,CMDB与所有服务支持和服务交付流程都紧密相联,支持这些流程的运转、发挥配置信息的价值,同时依赖于相关流程保证数据的准确性。可实现IT服务支持、IT运维以及IT资产管理内部及三者之间的流程整合与自动化。在实际的项目中,CMDB常常被认为是构建其它ITIL流程的基础而优先考虑,ITIL项目的成败与是否成功建立CMDB有非常大的关系。
3.百度自动化运维:部署+监控+业务系统+关联关系
百度主要面临的运维挑战包括:突发的流量变化、复杂环境的关联影响、快速迭代的开发模式以及运维效率、运维质量、成本之间的平衡等等。百度的运维团队认为,当服务器规模达到上万台时,运维视角需要转为以服务为粒度。万台并不等于"百台*100";机器的运行状态,也不再代表业务的工作状态;运维部门为研发提供前置服务,服务与服务之间关系也随着集群的扩大逐渐复杂起来。
图3.百度自动化运维技术框架
百度的自动化运维技术框架,划分为部署、监控、业务系统、关联关系四大部分,整个框架更多突出了业务与IT基础设施的融合,注重"关联关系"的联动。所谓关联关系,主要是指任务与任务之间的时序依赖关系、任务与任务之间的数据依赖关系、任务与资源之间的引用依赖关系,分别对应到任务调度、数据传输、资源定位的服务流程中,形成了多条服务链。
关联关系的运维与业务较强相关,需要有一套系统能够理清楚关系的全貌,从而在复杂的服务链上,定位运行所在的环节,并在发生故障时预估影响范围,及时定位并通知相应的部门。在这样的一套系统中,自动化监控系统非常重要。百度的技术监控框架,主要通过数据采集、服务探测、第三方进行信息收集,进行监控评估后交给数据处理和报警联动模块处理,通过API接口进行功能扩充(如图4所示)。
图4.百度自动化技术监控框架
其实无论是BAT等互联网企业还是其他行业的企业,在IT建设中都会遵循IT基础架构库(ITIL)或ISO20000服务管理的最佳实践,采用自动化IT管理解决方案以实现重要的业务目标,如减少服务中断、降低运营成本、提高IT效率等等。随着ISO20000、ITIL v3.0的发布和推广,两者已经成为事实上的某种标准。在当今企业IT管理领域,对两个标准有着很迫切的需求。特别是ISO20000的认证要求,已经成为企业越来越普遍的需求 。ITIL v3.0包含了对IT运维从战略、设计到转换、运营、改进的服务全生命周期的管理,相关方案往往覆盖了多个领域和多个产品,规划实施和工具的选择会比较纠结。如果选择开源的工具,从CMDB开始就会遇到很多的开发工作,对于很多注重成本收益比的企业,可以参考,但由于无法保证性能与效果并不一定适用。因此,成熟的商业方案会是更好的选择。
最新的iMC V7版本,围绕资源、用户、业务三个维度进行创新,发布了SOM服务运维管理(基于ISO20000、ITIL标准)等组件,增加了对服务器的管理,能很好的满足更多互联网化的场景需求。
通常认为,一个高效、好用的配置管理数据库一般需要满足6条重要标准,即联合、灵活的信息模型定义、标准合规、支持内置策略、自动发现和严格的访问控制。企业IT基础架构的元素类型、管理数据的类型往往有较多种,如网络设备、服务器、虚拟机等,因此对于多种信息的存储需要有合适的联合的方法。虽然 iMC智能管理平台在网络设备、服务器设备等方面已经能够较好的的满足,但是随着服务器虚拟化技术的发展,虚拟机正越来越多的成为IT基础架构的一大元素。因此,针对这一需求华三通信基于CAS CVM虚拟化管理系统,对服务器CPU、内存、磁盘I/O、网络I/O等更细节的重要资源以及虚拟机资源进行全面的管理。与BAT不同,华三通信的网管软件面向全行业,目前虽然没有对域名管理等特殊资源的'管理,但是能够通过API接口等方式与特有系统进行联动,进而满足定制化运维的需求,尤其是在互联网化的场景中,针对不同的业务需求,可以实现很多定制化的对接需求,例如,iMC+WSM组件与国内某大互联网公司自有Portal系统进行了对接,打通了iMC工具与用户自有运维平台,很好的实现了架构融和。另外,与阿里的逻辑分层建模相似,H3C "iMC+CAS"软件体系在上层也做了很多的逻辑抽象、分层,形成了诸多的模块,也即是大家看到的各种组件。
三、网络自动化运维体系
"哪怕是一个只有基础技术能力的陌生人,也能做专业的IT运维;哪怕是一个只有初中学历的运维人员,也能够带队完成中小型机房节点的建设,并负责数百至上千台服务器的维护管理工作"--这是一些公司对自己IT运行维护水平的一个整体评价。看似有些夸大的嫌疑,但实际上依托于强大的IT运维系统,国内已经有不少互联网公司能够达到或者接近这一标准。
这些企业都经历了运维发展过程中的各个阶段,运维部门曾经也是被动的、孤立的、分散的"救火队"式的团队,在后来的发展过程中,IT系统架构逐渐走向标准化、模型化,运维部门建立了完整的设备、系统资源管理数据库和知识库,包括所有硬件的配置情况、所有软件的参数配置,购买日期、维修记录,运维风险看板等等,通过网管软件,进行系统远程自动化监控。运维过程中系统会收集所有的问题、事件、变更、服务级别等信息并录入管理系统,不断完善进而形成一套趋向自动化的运作支撑机制。按照云计算的体系架构,在这样一套系统中,主要的IT资源包括计算、存储、网络资源,近些年随着网络设备厂商的推动,网络设备管理方面的自动化技术也得到十足的发展。
总结来看,一个企业在进行互联网化的建设初期,就需要考虑到随着用户访问量的增加,资源如何进行扩展。具体可以细化为规划、建设、管理、监控、运维五个方面。
1.规划模型化
为了确保后续业务能够平滑扩容,网管系统能够顺利跟进,互联网企业一般在早期整体系统架构设计时便充分考虑到标准化、模型化,新增业务资源就好比点快餐,随需随取。
标准化:一是采用标准协议和技术搭建,扩展性好,使用的产品较统一,便于管理;二是采用数据中心级设备,保证可靠性、灵活性,充分考虑业务系统对低时延的要求。
模型化:基于业务需求设计网络架构模型,验证后形成基线,可批量复制,统一管理,也适宜通过自动化提高部署效率、网管效率。
图5.常见互联网IDC架构
2.建设自动化
互联网IT基础设施具备批量复制能力之后,可以通过自动化技术,提高上线效率。在新节点建设过程中,3~5人的小型团队即可完成机房上线工作。例如某互联网公司某次针对海外紧急业务需求,一共派遣了2名工程师到现场进行设备安装部署和基本配置,而后通过互联网链路,设备从总部管理系统中自动获取配置和设备版本,下载业务系统,完成设备安装到机房上线不超过1周时间。
要达到自动化运维的目标,建设过程中需要重点考虑批量复制和自动化上线两个方面(如图6所示)。
批量复制:根据业务需要,梳理技术关注点,设计网络模型,进行充分测试和试点,输出软、硬件配置模板,进而可进行批量部署。
自动化上线:充分利用TR069、Autoconfig等技术,采用零配置功能批量自动化上线设备,效率能够得到成倍提升。
图6.批量配置与自动化上线
○ Autoconfig与TR069的主要有三个区别:
○ Autoconfig适用于零配置部署,后续一般需要专门的网管系统;TR069是一套完整的管理方案,不仅在初始零配置时有用,后续还可以一直对设备进行监控和配置管理、软件升级等。
○ Autoconfig使用DHCP与TFTP--简单,TR069零配置使用DHCP与HTTP--复杂,需要专门的ACS服务器。
安全性:TR069更安全,可以基于HTTPS/SSL。
而H3C iMC BIMS实现了TR-069协议中的ACS(自动配置服务器)功能,通过TR-069协议对CPE设备进行远程管理,BIMS具有零配置的能力和优势,有灵活的组网能力,可管理DHCP设备和NAT后的私网设备。BIMS的工作流程如图7所示。
图7.H3C iMC BIMS工作流程
3.管理智能化
对于网管团队而言,需要向其他团队提供便利的工具以进行信息查询、告警管理等操作。早期的网管工具,往往离不开命令行操作,且对于批量处理的操作支持性并不好,如网络设备的MIB库相比新的智能化技术Netconf,好比C和C++,显得笨拙许多。因此使用的角度考虑,图形化、智能化的管理工具,往往是比较受欢迎。
智能化:使用新技术,提升传统MIB式管理方式的处理效率,引入嵌入式自动化架构,实现智能终端APP化管理(如图8所示)。
图8.消息、事件处理智能化
● Netconf技术
目前网络管理协议主要是SNMP和Netconf。SNMP采用UDP,实现简单,技术成熟,但是在安全可靠性、管理操作效率、交互操作和复杂操作实现上还不能满足管理需求。Netconf采用XML作为配置数据和协议消息内容的数据编码方式,采用基于TCP的SSHv2进行传送,以RPC方式实现操作和控制。XML可以表达复杂、具有内在逻辑、模型化的管理对象,如端口、协议、业务以及之间的关系等,提高了操作效率和对象标准化;采用SSHv2传送方式,可靠性、安全性、交互性较好。二者主要对比差异如表1所示。
表1 网管技术的对比
● EAA嵌入式自动化架构
EAA自动化架构的执行包括如下三个步骤。
○ 定义感兴趣的事件源,事件源是系统中的软件或者硬件模块,如:特定的命令、日志、TRAP告警等。
○ 定义EAA监控策略,比如保存设备配置、主备切换、重启进程等。
○ 当监控到定义的事件源发生后,触发执行EAA监控策略。
4.监控平台化
利用基本监控工具如Show、Display、SNMP、Syslog等,制作平台化监控集成环境,实现全方位监控(如图所示)。
;信息生命周期管理(Information Lifecycle Management)对企业用户而言是一种信息技术战略、是一种理念,而不仅仅是一个产品或方案。信息化建设中最关键的是数据,数据代表着信息,它可以构成企业的核心竞争力。信息从产生的那一刻起就自然地进入到了一个循环,经过收集、复制、访问、迁移、退出等多个步骤,最终完成一个生命周期,而这个过程必然需要良好管理的配合,如果不能进行很好地规划,结果就会是,要么是浪费了过多的资源;要么是资源不足降低了工作效率。
上图表明了一般情况下,数据引用概率与数据寿命之间的关系,这是理解数据应当如何管理的关键所在。为信息在它的整个生命过程中规划存储和迁移的方案是ILM的核心内容。
信息生命周期管理最初由StorageTek首先提出来的,经过EMC的发展和大力宣传,进入市场化阶段指日可待。然而我们应当认识到,信息生命周期管理作为一项企业信息化战略,不可能一蹴而就,而是一项相对长期的工作。当代的企业或多或少都已经有自己的信息系统,信息生命周期管理不可避免地要利用和继承企业目前所拥有的技术和体系结构。
EMC公司的三阶段论
EMC公司建议客户分三个阶段实施信息生命周期管理:第一步,实施自动网络存储,优化存储基础设施;第二步,提高服务等级,优化信息管理;第三步,实施集成式生命周期管理环境。
第一个阶段,各机构应消除直连存储,逐步将存储完全网络化,然后实现存储环境自动化。以便经济有效地融合和控制存储资源,保证业务连续性。
第二个阶段,服务等级阶段的任务是:在存储网络中建立服务等级层次,然后部署初始信息管理工具,按照企业要求的变化,将信息转移到相应的服务等级层次中。利用这些工具,许多机构都能够按照相关法规的要求,优化其信息管理资源。
前两个阶段是最后实现价值的基础,一般情况下,需要若干年时间才能实现信息生命周期管理的自动化。在这种集成式环境中,客户将能够在整个混合IT基础设施中贯彻企业战略精神,并在适当的时候从一个控制台为一定的服务等级提供相应的应用。
第三个阶段,借助信息生命周期管理,企业不但能经常自动制定决策,保证按照预定的业务准则和战略,以便在适当的时候,为适当的应用提供适当的信息,还能按照信息价值变化的敏感性实时地进行调整。
这三个阶段使IT人员能够利用各项新技能和新方法了解自身的信息需求,并随着实际经验的积累提高自动化水平。
ILM的实施方案--自动化ILM体系
我们通过分析EMC提出的自动化ILM体系,来看看整个ILM的实施方案。
一、总体结构
图1 自动化ILM体系
如图1所示,自动化ILM体系分为三个功能区域:
管理服务
通用服务 每个功能区域都包含很多的具体的服务模块。每个模块都清楚自己在整个自动化ILM系统内的位置和作用。通过一个称为ILM知识库的数据库来与其他服务共享基础数据。模块化的设计方式使得用户可以根据需要,自主决定ILM解决方案的组成。下面我们来讨论这些组成部分以及它们对于整个体系的作用。
二、管理服务
自动化ILM体系的管理服务提供系统的操作管理功能。如图2所示,管理服务由四部分组成:应用程序、信息组、存储网络和平台。每层中都包括一组管理服务,每个服务提供一项具体的ILM流程功能。譬如,LEGATO网络服务可向信息组层提供备份/复位服务。
图2 管理服务
管理服务可以单独安装,也可以与其他的服务组合使用。自动化ILM框架并不限制使用的具体产品,通过通用标准的使用,自动化ILM为通用服务和自动化模块提供了公开的接口。这些开放性的接口允许任何的第三方管理服务、用户接口或是业务应用程序可以利用自动化ILM系统内各部分的功能,并整合它们。为了得到支持,管理服务必须和通用服务层的衔接,并在自动化ILM知识库中注册名称和服务类型。基础数据用来描述业务应用、信息组以及服务水平协议。举例来说,一个第三方复制产品必须在知识库中注册名称和服务类型,并为信息组提供一个复制。
1、应用服务
应用服务负责业务应用程序及其运行的主机环境操作。该服务包括高度的资产可用性、自动化和监控服务。这些服务通过监控应用程序及其运行环境和自动化恢复与服务流程,从而改进信息存取的可靠性。譬如,LEGATO的自动化可用性管理工具就是一个提供资产可用度保证的服务。这一服务对受控程序提供故障处理和重新启动的功能,从而为用户提供近似连续的应用服务和信息服务。
应用服务层通过ILM知识库中的基础数据进行定义。包括全部自动化ILM服务可识别的名称和服务水平协议。
2、信息组服务
信息组为某一个应用程序或业务流程相关的所有数据子集提供一个特殊命名的对象。该 名称和信息组的内容将为所有自动化ILM服务知晓并共享。由于信息组是管理服务经常操作的对象,它就构成了自动化ILM环境中的基本管理单元。举例来说,一个名为OracleInfoSet的信息组可能包括与Oracle数据库有关的数据表文件。信息组的名称和它的文件内容和属性也由自动化ILM知识库中的基础数据进行定义,信息组提供了每个管理服务所需要的输入信息。举例来说,备份服务会向信息组服务请求获得它所要备份的文件列表。基于信息组的协议,它还决定备份的目的地、频率和保存期间长度。这种配置信息的能力为所有ILM服务提供了标准化管理的可能。
3、存储网络服务
存储网络服务为物理存储设备与应用程序之间提供了一个管理接口。这些服务构成了一个抽象层,简化并提高了物理存储设备的分配和管理能力。存储网络服务可以对固定存储和移动存储设备进行操作,并对不同设备类型的细微差别进行调整适应。
图3 存储网络服务结构
固定存储管理
固定存储管理提供磁盘虚拟服务和卷管理服务。磁盘虚拟服务负责将不同类型的硬件设备集中化,形成一个统一的存储池。它通过将底层存储网络的复杂性隐藏起来,从而大大简化了存储管理工作。而卷管理服务则负责对不同存储设备的特征进行平滑处理,为应用程序和文件系统操作存储设备提供了一个抽象层面,它们使得物理上分散的多个磁盘看上去就象一个完整的存储系统。信息卷是自动化ILM主要依赖的功能之一。信息卷与传统意义的卷十分相似,只不过它是专门为具体应用的信息组服务并以ILM服务为最终目的。譬如备份和复制服务正是通过信息卷来完成的。
移动存储管理
移动存储有着自己独有的管理特点。它们包括设备虚拟、设备共享和介质跟踪。存储网络服务的设计就是针对这三项困难的。设备虚拟服务为移动存储设备提供一个通用的接口,该服务为不同的磁带、光盘驱动器以及它们的自动换片装置提供数据通道和控制功能。它也是一个隐藏了不同接口差异和管理的抽象层,从而为信息组服务提供了一套有效利用移动存储资源的管理方法。
由于移动存储设备比较昂贵,而且如果它们仅为特定目标服务(比如归档和备份)的话,就无法得到充分的利用,所以人们总是想方设法要共享这些设备,譬如磁带驱动器和自动换片装置。为了解决这个问题,存储网络层提供一个存储选择服务。这个服务功能负责控制设备的通道,并确定在出现两个以上服务同时请求使用一个共享装置的时候,只有其中一个得到控制权。这使得多个服务共享存储设备成为可能,尽管它们实际上是通过分时执行来实现的。多个服务共享设备做法可以节省大笔购买存储设备的费用并提供每个设备的利用效率。
IT部门的人员经常为查找一个移动存储介质(磁带和光盘等信息介质)头痛不已,更不用说在该信息的生命周期各阶段实施有效的管理了。问题的关键就在于,当一个磁带或是光盘脱离了驱动器和自动换片装置以后,要继续跟踪它摆放的位置和决定它的保存期限就变得十分困难。正是由于及时找到这些介质很困难,将信息复制移动存储设备的方法很少得到充分使用。而这正是跟踪服务对于ILM流程的重要性所在。它负责跟踪每个媒体的内容和位置(磁带或光盘)并记录好每个介质位置移动的过程。这为快速查找和充分利用移动存储设备提供了坚实的基础。跟踪服务同时也为用户提供保存管理,让用户及时了解每个移动介质的可使用期限。期满的媒体能够得到及时处理和再循环利用。通过管理这些介质的合理数量,从而降低了存储成本和费用。同时建立应用程序与移动存储设备之间的索引,大大提高了系统执行的速度。
检测和分配服务
这项服务涉及整个存储网络层的平台操作,帮助管理整个系统的硬件和软件存储资源。分配服务对从信息卷增加或移走的存储设备提供动态控制,而检测服务则检查当前可用的存储资源,并为可供分配的资源编制目录。这二项服务一起为磁盘虚拟和卷管理提供支持功能。当信息卷需要增加存储空间的时候,分配服务搜寻可用资源并为它分派新的存储空间。而分配服务依赖检测服务为其提供存储网络硬件的信息,包括磁盘驱动器、存储阵列、SAN、磁带驱动等等网络存储资源。检测到的存储资源由ILM知识库共享给其余的ILM服务,从而节省了系统冗余。
三、通用服务
通用服务提供了一组可以共享的功能,为自动化ILM其他功能部分集中处理一些统一的
通用功能方法和模型。通用服务提供下列:
1、服务间通讯,提供了自动化模块与管理服务之间的通讯渠道。这一服务定义一个通用数据格式作为通讯的基础。它也提供一个目录服务使不同应用之间相互了解。
2、安全服务,为所有服务提供证明和授权服务。为不同的用户提供一套统一的授权控制机制。
3、报告,提供了关于ILM服务历史统计和数据汇集的工具。通用报告系统允许用户组合不同的服务信息,并通过应用程序的视角,进一步挖掘信息背后的内容。举例来说,它可产生关于某个特殊电子邮件应用的全部信息报告。
4、事件管理,提供一个集中的知识库,为查看和保存系统内各ILM服务事件实施有效管理。
5、通用资源检测,检测可用的通用硬件和软件, 编制目录使所有自动化ILM流程可以共享它们。这将减少每个应用各自检测的工作,并为资源提供一个通用的名称。
6、监控和服务服务,为自动化ILM环境提供了自我修复的功能。这些服务结合在一起,为系统内各问题的识别和自动纠正提供了通用的方法。
7、安装和配置服务,提供一种安装和更新软件的通用方法。这一服务管理软件模块的新版本更新和整个系统环境中的分配。
8、许可服务,提供全部自动化ILM软件模块的许可协议控制、统一的管理和报告。
四、自动化模块
自动化模块利用自动化ILM系统的管理服务和通用服务提供的功能,来完成更高级操作。它包括:
1、协议管理模块
在所有自动化ILM给企业带来的效益中,协议驱动管理可能是受益最大的。这个自动化模块通过使用服务水平定义来自动化配置操作和服务水平管理,从而简化了ILM流程并降低了费用。协议驱动管理通过引入业务需求,为提供提供管理服务智能。
自动化ILM协议管理负责系统协议管理。如图 4 所示,协议管理使用协议和资源数据来控制和协调服务水平。
图4 协议管理
通过读取知识库中的分类基础数据和服务水平协议,协议管理确定对具体应用程序和信息组提供怎样的服务支持,它负责配置需求服务来保证协议得到贯彻。当服务水平配置完成后,协议管理通过监控低层管理服务的运行,来保证和验证它们的正确执行。
举例来说,如果一个应用被归入接受“标准的保护服务”类别,并且这一服务水平定义为应用数据每个晚上都需要备份,那么协议管理工具将检测备份服务的执行,确保信息得到正确的保护。如果应用数据没有被备份,一个可见的通知将送达管理控制平台,提醒管理人员,服务水平协议没有得到执行,同时一份电子邮件或短信将送到适当管理者的手中。
服务水平协议被用来定义广泛的管理能力,包括:
*“关键的”核心应用程序,必须在20分钟内得到恢复。
对于业务来说“重要的”应用信息,必须每个晚上进行备份。
连续六个月不使用的数据可以被迁移慢速存储设备上
经纪业部门的所有电子邮件必须在WORM(写一次,可读多次的存储设备,譬如CD-R)上保存五年。
协议管理使得管理人员可以容易管理一组应用程序的服务水平,增加或降低服务等级,而修改服务水平协议可以影响所有受控的应用程序。这种能力将配置工作的复杂性简化了,并为ILM提供了量化的配置方法。 工作流管理负责协调复杂的ILM工作流程,这些流程经常需要人员操作的介入。工作流程管理需要自动化ILM系统与IT部门和业务部门共同合作。
图5 工作流管理
工作流程定义工作的顺序步骤和必要的批准环节,而批准环节就需要集IT部门人员的参与。譬如说,协议管理需要一个附加的存储空间,这将启动一个工作流请求。第一步是识别符合应用程序需要的存储设备,这可以由分配服务自动完成。在空间得到分配之前,这项需求的业务线经理拥有成本费用批准权。工作流程管理将请求通过电子邮件发往业务经理,业务经理批准后,存储扩展流程得以继续。
图5说明了工作流程控制操作的基本步骤。流程从请求(1)开始到达工作流管理系统,流程经理查询(2)自动化ILM知识库获得工作流程定义作为操作依据,而且启动第一个自动化流程(3)。该流程完成后,送出一个请求(4)给指定的用户并等候批准(5),接到批准后继续下一个自动步骤。 对信息进行识别和分类是管理人员最头痛的一件事情。分类管理模块负责帮助管理人员
识别和分类已存在的应用程序和信息。使用信息检测技术,和分类模板来刻画程序和数据使用特征,分类管理模块帮助用户建立适合企业的初始分类,并对现有程序和信息的分类提供建议,然后用户可以接受、拒绝或修改这些分类建议。分类定义完成以后,通过基础数据记录在自动化ILM知识库中,可以被其他ILM服务调用。当企业环境中有大量的数据要处理,分类管理模块能够大大地提高信息分类处理速度。 服务水平管理位于自动化ILM结构的顶层。服务水平管理监控并处理在业务部门和IT部门之间建立的服务水平协议(SLA)。服务水平管理维护应用程序、ILM服务以及业务部门之间的三方关系。服务水平管理获取业务部门对某项应用程序的服务水平需求,然后提供评估和跟踪功能,以确保该项服务水平得到实施。如果服务水平没有达到标准,业务部门和IT部门将接到通知,他们要么修改需求,要么纠正系统来解决问题。服务水平管理也提供“费用反馈”功能,它向业务部门报告该部门使用的IT资源和相关费用。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~