运维平台化之IDC机柜拓扑及数据展现实现思路

本文介绍了一种自动化IDC机柜拓扑的方法,包括服务器状态显示、数据自动填充及验证等步骤,实现了运维平台的简易自动化。

前言:

       如今大点的公司,都会有个类似机房的机柜摆放图的系统,可能有太多兄弟的公司没有这样的东西,如果想开发咋办?   又想开发出一套自动生成的咋办?  跟着我简单的开发出一套吧 ~   有问题,大家mail我 ~  

    无难度,只是简单介绍下,该运维平台用到的一些流程处理和自动化方面的东西。

142819631.png


对于空机柜的显示:

232146699.png



       其实这个项目,随便找个差不多的开发都可以做出来的 !  但是我相信看我博客的人,十个有九个是运维的朋友,他们肯定也很好奇这个东西是如何是实现的 ~

       首先这些服务器的图片的咋搞到的,可以去官网搞,也可以到zol那里拔图。

为了更好的展现服务器当前的状态,咱们可以归类几个状态。 比如正常状态下的power绿灯的闪耀,没开机状态下灯是灭的,服务器硬件出问题时候,服务器出问题正在维修的时候。


正常开机的状态:

143406705.gif


225254454.gif


没有开机的状态:

143308383.png


出问题的服务器状态:


143503691.png


已经联系了IBM dell hp厂商维修的状态:

143543680.png


至于其他的前端代码,就没啥了,其实就是填充数据,可以用jquery的tooltip组件,实现服务器的信息展现,不会让页面显示的杂乱!

别问我这些个数据,是自己手动填入的吗?

呵呵,肯定不会了,不然为啥说是自动化运维 ~

简单说下,在idc机柜拓扑方面的自动化理解 !

手动: 让世纪互联机房的兄弟们抄录摆放图,格式一定要是我们统一的格式。

如下:


151213714.png


让他们统计好了,我们简单看看格式问题,然后再验证下这次上线的情况,用提前从服务器抓到的数据进行对比序列号和型号后,从我们自己的接口上传excel文件,会自动解析插入到数据库中 !


其实这些东西最好还是半自动,毕竟每次的迁移也不是那么的复杂,又没有bat那样的规模!

参考下lldp的协议标准,只要在交换机端开放这个协议,我在客户端就可以抓到和定位自己的交换机型号和端口。 但这个东西不太适用于拓扑的自动化统计。


校验机柜的位置:

       在服务器端是无法得知机柜位置的,但是可以通过交换机来验证他的大体位置。因为交换机的位置是先前已经知道的,然后mac验证得出他在交换机是哪个端口,然后通过网络组的接口,知道哪些接口是在哪个机柜上。

呵呵,也只能做到这些了。


还有就是点击服务器的时候显示主机的状态,存活状态啥的,可以用saltstack的api去实现他。再外加一个ipmitool的modules,来确定他的硬件好坏。 当然这个状态不绝对,最少能确定他是能开机的,只是有可能系统问题不能ping通而已。

当然用zabbix的mysql取值也可以的,反正能让前端取到数据就行了。


实现的前端的部分代码:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<div  class = "row"  style= "width:2000px;" >
   <div  class = "span3"   style= "border-style:solid;" >
          <h2> 2021  机柜</h2>
          <table border= "0" >
                <tr style= "width:268px; height:50px;" >
                    <!-- background= "33.png"  style= "position: relative;"  -->
                  <td><img src= "dl380.gif"  alt= "10.2.20.111"  rel= "tooltip"  data-original-title= 'IP地址:10.2.20.111<br>状态:ok<br>ping status: ok<br>型号:Hp dl380<br>U数:23<br>system:Centos 6.4<br>项目组:私有云<br>项目负责人:tim gao<br>点击查看' ></img></td>
                </tr>
                <tr style= "width:268px; height:60px;" >
                  <td><img src= "dl380.gif"  alt= "10.2.20.112"  rel= "tooltip"  data-original-title= 'IP地址:10.2.20.112<br>状态:ok<br>ping status: ok<br>型号:Hp dl380<br>U数:23<br>system:Centos 6.4<br>项目组:私有云<br>项目负责人:tim gao<br>点击查看' ></img></td>
                </tr>
                <tr  style= "width:268px; height:60px;" >
                  <td><img src= "dl380.gif"  alt= "10.2.20.113"  rel= "tooltip"  data-original-title= 'IP地址:10.2.20.113<br>状态:ok<br>ping status: ok<br>型号:Hp dl380<br>U数:23<br>system:Centos 6.4<br>项目组:私有云<br>项目负责人:tim gao<br>点击查看' ></img></td>
                   </tr>
                <tr  style= "width:268px; height:60px;" >
                  <td><img src= "dl380.gif"  alt= "10.2.20.114"  rel= "tooltip"  data-original-title= 'IP地址:10.2.20.114<br>状态:ok<br>ping status: ok<br>型号:Hp dl380<br>U数:23<br>system:Centos 6.4<br>项目组:私有云<br>项目负责人:tim gao<br>点击查看' ></img></td>
                </tr>
                 <tr  style= "width:268px; height:60px;" >
                  <td><img src= "dl380.gif"  alt= "10.2.20.115"  rel= "tooltip"  data-original-title= 'IP地址:10.2.20.115<br>状态:ok<br>ping status: ok<br>型号:Hp dl380<br>U数:23<br>system:Centos 6.4<br>项目组:私有云<br>项目负责人:tim gao<br>点击查看' ></img></td>
                </tr>
                 <tr  style= "width:268px; height:60px;" >
                  <td><img src= "dl380.gif"  alt= "10.2.20.116"  rel= "tooltip"  data-original-title= 'IP地址:10.2.20.116<br>状态:ok<br>ping status: ok<br>型号:Hp dl380<br>U数:23<br>system:Centos 6.4<br>项目组:私有云<br>项目负责人:tim gao<br>点击查看' ></img></td>
                </tr>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
                 <tr  style= "width:268px; height:60px;" >
                  <td><img src= "dl380.gif"  alt= "10.2.20.117"  rel= "tooltip"  data-original-title= 'IP地址:10.2.20.117<br>状态:ok<br>ping status: ok<br>型号:Hp dl380<br>U数:23<br>system:Centos 6.4<br>项目组:私有云<br>项目负责人:tim gao<br>点击查看' ></img></td>
                </tr>
                 <tr  style= "width:268px; height:60px;" >
                  <td><img src= "dl380.gif"  alt= "10.2.20.118"  rel= "tooltip"  data-original-title= 'IP地址:10.2.20.118<br>状态:ok<br>ping status: ok<br>型号:Hp dl380<br>U数:23<br>system:Centos 6.4<br>项目组:私有云<br>项目负责人:tim gao<br>点击查看' ></img></td>
                </tr>
                <tr  style= "width:268px; height:60px;" >
                  <td><img src= "dl380.gif"  alt= "10.2.20.119"  rel= "tooltip"  data-original-title= 'IP地址:10.2.20.119<br>状态:ok<br>ping status: ok<br>型号:Hp dl380<br>U数:23<br>system:Centos 6.4<br>项目组:私有云<br>项目负责人:tim gao<br>点击查看' ></img></td>
                </tr>    
              </table>
        </div>


blog:http://rfyiamcool.blog.51cto.com/1030776/1346389


总结下:

       还是那句话,这东西随便找个开发都可以做出来,我这里也只是说下,自己对于IDC拓扑开发的理解,还有自动化方面的适用性,当然个人能力有限,想到的自动化很不健全 ~    还是那种走流程的方案,靠谱点 !


1.    让机房抄录摆放图,按照咱们接口中特定的格式。

2.    来了后,找个人确定下格式。

3.    把这个excel文件放到页面的验证接口,做验证。(服务器信息的验证,ip 型号 资产号 序列号、通过交换机接口验证他的大体机柜位置)

4.    插入到数据库中,并实现数据的展现。




 本文转自 rfyiamcool 51CTO博客,原文链接:http://blog.51cto.com/rfyiamcool/1346389,如需转载请自行联系原作者



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值