端到端APM应用品质的管理观,应对经济衰退

端到端APM应用品质的管理观,应对经济衰退

那是段忧伤的光景!经济风险席卷了有着行业。经济放缓导致了财政收入的下挫,以及未来一贯热论的衰退。裁员和延迟买卖都曾经起来了。为了在走低时期生存下去,网络大方们必须表达她们自作者的作业价值以及在事情可以接受的界定内工作。

ITIL实践解读:端到端APM应用品质的管理观(一)

难点和事件管理是 APM 的三个为主 ITIL音信技术基础架构库,简称
ITIL)流程。事件管理Incident Management)是当IT
出现难点的时候化解它们,作为对劳务品质下落的1种响应。事件管理的对象是过来服务,对工作造成尽可能小的熏陶。难点管理Problem
Management)强调识别和扫除难点的来自。它通过改动服务和 APM
化解方案,扩大了服务质量改正的概念。

端到端选用品质管理End-to-end Application Performance
Management,简称APM)指的是 壹种 IT
服务方法,包涵识别、区分优先次序以及缓解影响工作使用的质量和可用性问题。APM
正在变得尤为首要,因为终端用户信赖日益复杂的使用来兑现重点作业交易。应用质量低下将跌落生产力,影响客户满足度,并有损
IT 声誉,进而导致资金飙升、收入缩减、IT
变得功能低下——那一个题材普通比可用性难点越来越严重。

价值观的监测消除方案日常无法辨认和解决使用
品质难题的源点。事实上,近日在极限用户体验监测、重视性映射和相关性方面包车型地铁最新进展,已让
IT
运转经营能够更有效地监测和缓解不满意服务水平的题材。这一个技术帮忙进步对总体互联网、服务器分布式和大型主机)和其余应用层的可视性,借助技术分析因果
关系,从业务的角度分明什么响应该先行开始展览。实际上,即使基础架构度量指标还是提供至关心重视要的故障和体量数据,强调首要也已从基础架构测量指标变成了作业衡量目的。

小编们将文章一层层应用质量管理最好实践的篇章,从难题和事件管理的眼光分析
APM。

本文将第2总结地叙述 APM 设计、实施和运转的基本要素,将端到端
APM作为1个流水线来拓展追究。

一、APM 设计

APM 化解方案常常是用作草根、基础架构监测实施初叶的,由IT
机构的某部独立业务部门实施,缺少壹致的目的。例如,互连网团队恐怕要布署三个开源互连网工具,以博取基础网络的可视性,而web
服务器团队则大概会从一个主流的服务器厂商那里计划三个服务器监测工具。然而,自上而下地安插3个APM
方案要切合实际得多。使用那种情势,您先思虑结果,然后将它使用于你选取的解决方案组件。

你如何入手早先吧?在 ITIL 的世界里,最后辅助服务级别协商service level
agreement,简称 SLA)的运营级别目的operational level
target,简称OLT)是3个好的起源;那一个将曾经缓解了预期的工作现身和资本限制,并且应该实现1个高品位的规划。不与
ITIL
相关?您还是能够够运用适合你必要的局地最好实践。从与业务部门钻探、精通事情指标开端,鲜明APM
预算,使用对利用交付基础框架结构的精晓和它的属性敏感性,并草拟多个方案。您很大概想把这么些作为1个练兵,测试什么只怕会出错,尽可能广泛地壮大范围;花费和其他的莫过于怀恋将连忙专注于这一设计。您当然不会是首先个应用那种格局的人,您可丰硕利用与供应商的涉及、用户群和提问合营伙伴,来明白类似尝试大概会
有的打响和挫败。

卖家高层提供的能源支撑和参与对于别的 APM
项目标功成名就都是重视的,因为那将供给来自多个 IT
部门的积极帮衬。更要紧的是,那些机关对于项目标作业价值要有1致的掌握,因为她们种种都大概相会对新的铺面可视性他们在组长仪表板上的测试指标),对
有个别事物失去控制应对题指标新流程),也许舍弃一个最受欢迎的工具。开端3个小型的
APM 项目,选择多个战略的接纳,为作业全部者和 IT
机构注解价值,抢先2/4机关将会从中收益。那样二个项目标打响,将能够被三个更完善、收益更让人惊讶标消除方案利用。

而是,我们大 多数人并不是从一时半刻拼凑起来布置 APM
消除方案;我们曾经具有广大学一年级直服务于大家的目的的基础架构工具。那么,是什么将1多元“结合平台的”platform-aligned)工具转变成
APM
消除方案的吗?即使对此这些标题大概会有这几个技能回答,不过,那里有四个最关键的宗旨:

·业务一致性business
alignment)。全新的重中之重设计指标依然应该从尊重工作现身开端。对业务以来,首要的将是极端用户的体验——那一个可通过质量和可用性进行度量。

·相关性和故障隔开correlation and fault
isolation)。对来自的可视性,是将基础框架结构进步至
APM、真正了然基础架构衡量指标怎么着影响工作生产力的重大。

很 不难通晓诸如终端用户体验end-user experience,简称
EUE)和基础架构测量目的等事务相关的衡量目标的相关性为什么如此重大。将终端用户体验到的性质难点与基础架构度量指标构成起来,隔断首要的源点,那能让
IT
小组非常快准确地在意于难点的来源,同时防止对不相干的零件采纳行动。通过适当的阈值调整,那为不断工作创新奠定了根基。同样地,通过
EUE
的相关性,以及受影响的用户数量和所在地方、每一日交易的次数和业务价值,能够找到难题对作业的震慑。

经过一多重基础框架结构工具 营造 APM
化解方案,会拉动集成和相关性方面的挑衅;您要求对第3的纯净供应商single-vendor)消除方案举办业评比估权衡,因为供应商和定制化的多供应商
multi-vendor)消除方案营造和付出了合并。对于更小部分的配置,定制化的化解方案可能会更省钱,然而对于较大的进行,可扩张性和维护方面的思量将会相当慢改变价格。

在陈设流程里,保持对极端用户交易响应时间的注意很重大。那有多少个原因。第一,品质分析和题材消除是
为更好的刺探以工作为导向的条件并提议重点意见。就算在价值观上,基础架构度量目标是满意事件和难点管理的多寡,不过,这一个基础衡量目的和它们的阈值驱动警
报在并未事情相关性的意况下能够变得差不多毫无意义。例如,对于一个 二 M
广域网连接来说,四分之三的利用率终究是好还是坏呢?二个被告知的贸易品质难点是由 SAN 里长度为 8的度量磁盘阵列引起的呢?当使用的属性降级时,那个零件级的度量还将总会被非凡?其次,从对工作影响的角度来说,IT
能够先行对事件作出响应是有价值的,它代表了向业务壹致性迈出的显要一步。

1样关键的是,与技术和 IT 财富的基金有关的统一筹划范围。许多 APM
项目不成事,是因为不够关切和帮衬,因为不能保险那一解决方案、不恐怕适应基础架构的变迁并不可能定义基于实际世界申报的流程。

)
难点和事件管理是 APM 的三个基本 ITIL音讯技术基础架构库,简称
ITIL)流程。事件管理Incident…

浅谈ITIL

  TIL即IT基础架构库(Information
Technology Infrastructure Library,
ITIL,音信技术基础架构库)由大不列颠及英格兰联合王国政坛部门CCTA(Central Computing and
Telecommunications Agency)在20世纪80时期末制订,现由大不列颠及英格兰联合王国际商业信用贷款银行务部OGC(Office
of Government
Commerce)负责管理,首要适用于IT服务管理(ITSM)。ITIL为公司的IT服务管理实践提供了一个靠边、严格、可量化的规范和专业。

一、事件管理(Incident
Management)

事故管理负担记录、归类和安排专家处管事人故并监察和控制整个处理进程直至事故赢得缓解和平息。事故管理的指标是在尽量最小地震慑客户和用户业务的情形下使IT系统复苏到劳动级别协商所定义的劳务级别。

对象是:在不影响工作的动静下,尽只怕火速的还原服务,从而保险最好的频率和劳务的可持续性。事件管理流程的确立包蕴事件分类,显著事件的优先级和建立事件的擢升体制。

2、难点管理(Problem
Management)

题材管理是指通过调查斟酌和剖析IT基础架构的薄弱环节、查明事故时有产生的绝密原因,并创设解决事故的方案和预防事故再一次产生的措施,将出于难题和事故对工作发生的负面影响减小到最低的劳务管理流程。与事故管理强调事故恢复生机的快慢不相同,问题管理强调的是找出事故时有发生的发源,从而制订合适的解决方案或预防其再度发生的预防措施。

指标是:调查基础设备和持有可用音信,包含事件数据库,来分明引起轩然大波发生的真正潜在原因,壹起提供的服务中或然存在的故障。

三、配置管理(Configuration
Management)

陈设管理是识别和肯定系统的铺排项,记录和告知安排项景况和转移请求,检查实验配置项的没有错和完整性等移动组成的进度,其目标是提供IT基础框架结构的逻辑模型,帮忙其余服务管理流程特别是改变管理和发布管理的运营。

对象是:定义和决定服务与功底设备的构件,并维持标准的配备消息。

肆、变更管理(Change
Management)

改变管理是指为在最短的中断时间内成功基础架构或劳动的任一方面包车型客车改观而对其展开控制的服务管理流程。变更管理的靶子是保证在改变实施进程中应用专业的主意和步骤,尽快地实施变更,以将由变更所导致的事体暂停对事情的震慑减小到最低。

指标是:以受控的格局,确认保证全数改变获得评估、批准、实施和评审。

伍、公布管理(Release
Management)

 发表管理是指对经过测试后导入实际行使的疯长或涂改后的计划项进行分发和宣传的治本流程。发表管理在此从前又称为软件控制与分发。

对象是:在事实上运作条件的公布中,交付、分发并跟踪三个或四个改变。

 

其实工作处境中自动化学工业具举例:

图片 1

 

 

那正是说,网络大方将如何使用他们的知识以及经验来救助她们的作业渡过难关呢?实施新闻技术基础架构库ITIL)最优办法是赞助我们的事务经受住难关的考验的最佳法子之一。周到接纳ITIL将开销多量的流年和人工。由此,我们并不要求周全地布局ITIL。网络团队能够选拔性地动用ITIL最优办法来为业务提供可度量价值,那样也助长网络团队在那段忧伤的光景中获得突破。

CMDB

  CMDB –Configuration Management
Database
配置管理数据库, CMDB存款和储蓄与治本公司IT架构中设备的各样配置新闻,它与具有服务协理和劳动交由流程都紧凑相联,支持那些流程的运作、发挥配置音讯的价值,同时凭借于有关流程有限扶助数据的准头

在实质上的品种中,CMDB日常被认为是构建其余ITIL流程的功底而优先思量,ITIL项目的胜败与是或不是成功建立CMDB有越发大的关系。

七成~十分八的IT相关难点与环境的变更有着直接的关系。实施变更管理的困难和第三并不是工具,而是流程。即因而3个自动化的、可再一次的流水生产线管理变更,使妥当变更发出的时候,有二个原则的流水线去实施,能够预测到这一个改变对整个系统一管理理发生的熏陶,并对那些影响举行评估和操纵。而更改管理流程自动化的兑现首要正是CMDB。

CMDB工具中最少含有那三种首要的法力:整合、调和、同步、映射和可视化。

组合是指能够充足利用来自别的数据源的新闻,对CMDB中包含的记录源属性进行存取,将三个数据源合并至一个视图中,生成连同来自CMDB和任何数据源音信在内的告知;

调解能力是指通过对来自每种数据源的合作字段进展对照,保险CMDB中的记录在三个数据源中未有重新现象,维持CMDB中各样配置项目数据源的完整性;自动调整流程使得初阶实施、数据库管理员的手动运作和现场珍爱扶助理工科程师作降至最低;

联合指确认保证CMDB中的消息能够反映联合数据源的翻新境况,在壹起数据源更新频率的底子上规定CMDB更新日程,根据经过批准的变动来更新
CMDB,找出未被认同的改动;

使用映射与可视化,表明应用间的涉及并反馈应用和其余零件之间的依存关系,明白变更造成的震慑并赞助会诊难题。

当下CMDB资金财产管理的兑现有如下格局:

1、Paramiko类

据书上说CMDB中央控制机和SSH对长途服务器执行命令达成

import paramiko

# 创建SSH对象
ssh = paramiko.SSHClient()
# 允许连接不在know_hosts文件中的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 连接服务器
ssh.connect(hostname='c1.salt.com', port=22, username='wupeiqi', password='123')

# 执行命令
stdin, stdout, stderr = ssh.exec_command('df')
# 获取命令结果
result = stdout.read()

# 关闭连接
ssh.close()

2、SaltStack

基于SaltStack的master上的pillar以及远程执行命令完结

import salt.client
local = salt.client.LocalClient()
local.cmd('*', 'cmd.run', ['whoami'])

3、Puppet

puppet中默认自带了5个report,放置在【/usr/lib/ruby/site_ruby/1.8/puppet/reports/】路径下。如果需要执行某个report,
那么就在puppet的master的配置文件中做如下配置:

######################## on master ###################
/etc/puppet/puppet.conf
[main]
reports = store #默认
#report = true #默认
#pluginsync = true #默认


####################### on client #####################

/etc/puppet/puppet.conf
[main]
#report = true #默认

[agent]
runinterval = 10
server = master.puppet.com
certname = c1.puppet.com

如上述设置之后,每次执行client和master同步,就会在master服务器的 【/var/lib/puppet/reports】路径下创建一个文件,主动执行:puppet agent  --test

图片 2图片 3

在 /etc/puppet/modules 目录下创建如下文件结构: 

modules
└── cmdb
    ├── lib
    │   └── puppet
    │       └── reports
    │           └── cmdb.rb
    └── manifests
        └── init.pp

################ cmdb.rb ################
# cmdb.rb
require 'puppet'
require 'fileutils'
require 'puppet/util'

SEPARATOR = [Regexp.escape(File::SEPARATOR.to_s), Regexp.escape(File::ALT_SEPARATOR.to_s)].join

Puppet::Reports.register_report(:cmdb) do
  desc "Store server info
    These files collect quickly -- one every half hour -- so it is a good idea
    to perform some maintenance on them if you use this report (it's the only
    default report)."

  def process
    certname = self.name
    now = Time.now.gmtime
    File.open("/tmp/cmdb.json",'a') do |f|
      f.write(certname)
      f.write(' | ')
      f.write(now)
      f.write("\r\n")
    end

  end
end


################ 配置 ################
/etc/puppet/puppet.conf
[main]
reports = cmdb
#report = true #默认
#pluginsync = true #默认 

自定义factor示例

图片 4图片 5

$LOAD_PATH.unshift(File.dirname(__FILE__)) unless $LOAD_PATH.include?(File.dirname(__FILE__))
require "rubygems"
require 'pp'
require 'json'
require 'utils'

def dmi_get_ram(cmd)

    ram_slot = []

    key_map = {
        'Size' => 'capacity',
        'Serial Number' => 'sn',
        'Type' => 'model',
        'Manufacturer' => 'manufactory',
        'Locator' => 'slot',
    }

    output = Utils.facter_exec(cmd)
    devices = output.split('Memory Device')

    devices.each do |d|
      next if d.strip.empty?
      segment = {}
      d.strip.split("\n\t").each do |line|
        key, value = line.strip.split(":")
        if key_map.has_key?(key.strip)
          if key.strip == 'Size'
            segment[key_map['Size']] = value.chomp("MB").strip.to_i / 1024.0 # unit GB
          else
            segment[key_map[key.strip]] =  value ? value.strip : ''
          end
        end
      end

      ram_slot.push(segment) unless segment.empty?
    end

    return ram_slot

end

Facter.add("ram") do
  confine :kernel => "Linux"
  setcode do

    ram_slot = []
    cmd = "dmidecode -q -t 17 2>/dev/null"
    ram_slot = dmi_get_ram(cmd)

    JSON.dump(ram_slot)

  end
end


Facter.add("ram") do
  confine :kernel => 'windows'
  setcode do

    ram_slot = []

    if Facter.value(:manufacturer)  =~ /.*HP.*/i
      cli = 'C:\cmdb_report\dmidecode.exe'
      cmd = "#{cli} -q -t 17"
      ram_slot = dmi_get_ram(cmd) if File.exist?(cli)

    else

      require 'facter/util/wmi'
      Facter::Util::WMI.execquery("select * from Win32_PhysicalMemory").each do | item |

        if item.DeviceLocator
          slot = item.DeviceLocator.strip
        else
          slot = ''
        end

        if item.PartNumber
          model = item.PartNumber.strip
        else
          model = ''
        end

        if item.SerialNumber
          sn = item.SerialNumber.strip
        else
          sn = ''
        end

        if item.Manufacturer
          manufactory = item.Manufacturer.strip
        else
          manufactory = ''
        end

        ram_slot.push({
         'capacity' => item.Capacity.to_i / (1024**3), # unit GB
         'slot' => slot,
         'model' => model,
         'sn' => sn,
         'manufactory' => manufactory,
       })

      end
    end

    JSON.dump(ram_slot)

  end
end

内部存款和储蓄器音讯

4、Agent

基于shell命令落成

图片 6  

 

对此Agent的版本的完成思路:

  • Agent采集硬件开销
  • API提供有关处理的接口
  • 管制平台为用户提供可视化操作

 

 

本章是那1层层的首先局地,大家将商量互连网大方们运用ITIL最优办法来帮忙理工科程师作伙伴对下降资金作出越多明智的仲裁并与低沉本钱相协调的点子。在这一名目繁多中,大家将追究关于了然事情经过、调整工作经过报告、改进财务的章程,同时与业务单位建立优质的干活事关。

领悟事情进度

现阶段,一大半高等CEO都在分析不一样工作区域所受到的经济影响。超越54%主任大概正在思考出售业务单位照旧外包作用和劳动以便减弱支出。不幸的是,大部分的体量规划团队都不是从为作业决策提供实质性价值的角度展开考虑的。Forrester和Gartner的探讨显得,有专业的IT体积管理规划的店堂不到二分一。而且这么些规划的绝大多数也同情于考虑单个IT组件,由此无法将用法归于叁个特定的作业经过依旧作用。

在1玖世纪80时代之初,ITIL已经记挂到体量管理的股票总值。三种版本都思虑到了分化品类的容积管理:组件、服务和事务。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图