前言:
今个群里有个哥们问我怎么实现一个集群的架构图,一说架构图,大家肯定想到的是用visio或者是亿图,但是动态的咋办?甚至说高端了点,不仅可以看到架构图,而且可以看到流量及负载的信息。 现在运维平台这么火热,大家恨不得把平台做全面点。 我以前做过一个机房展现图,有兴趣的朋友可以再以前的博客中找到。
<a href="http://rfyiamcool.blog.51cto.com/1030776/1346389" target="_blank">http://rfyiamcool.blog.51cto.com/1030776/1346389</a>
用的是 jquery.jOrgChart.css js库,实现提来还算简单。大家只需要做个模板,然后各种if判断就行了。你懂的。 个人觉得大家要在cmdb资产系统里面要做好位置的标记,不然后期做架构图展现的时候,会发现 没法动态。。。。。
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
<code>原文: </code>
<code> </code>
<code> </code><code><</code><code>script</code> <code>src</code><code>=</code><code>"http://libs.baidu.com/jquery/1.9.0/jquery.js"</code><code>></</code><code>script</code><code>></code>
<code> </code><code><</code><code>script</code> <code>src</code><code>=</code><code>"http://libs.baidu.com/jqueryui/1.8.22/jquery-ui.min.js "</code><code>></</code><code>script</code><code>></code>
<code> </code>
<code> </code><code><</code><code>script</code> <code>src</code><code>=</code><code>"jquery.jOrgChart.js"</code><code>></</code><code>script</code><code>></code>
<code> </code><code><</code><code>script</code><code>></code>
<code> </code><code>jQuery(document).ready(function() {</code>
<code> </code><code>$("#org").jOrgChart({</code>
<code> </code><code>chartElement : '#chart',</code>
<code> </code><code>dragAndDrop : true</code>
<code> </code><code>});</code>
<code> </code><code>});</code>
<code> </code><code></</code><code>script</code><code>></code>
<code> </code><code></</code><code>head</code><code>></code>
<code> </code><code><</code><code>body</code> <code>onload</code><code>=</code><code>"prettyPrint();"</code><code>></code>
<code> </code><code><</code><code>div</code> <code>class</code><code>=</code><code>"topbar"</code><code>></code>
<code> </code><code><</code><code>div</code> <code>class</code><code>=</code><code>"topbar-inner"</code><code>></code>
<code> </code><code><</code><code>div</code> <code>class</code><code>=</code><code>"container"</code><code>></code>
<code> </code><code><</code><code>a</code> <code>class</code><code>=</code><code>"brand"</code> <code>href</code><code>=</code><code>"#"</code><code>>jQuery Organisation Chart</</code><code>a</code><code>></code>
<code> </code><code><</code><code>ul</code> <code>class</code><code>=</code><code>"nav"</code><code>></code>
<code> </code><code><</code><code>li</code><code>><</code><code>a</code> <code>href</code><code>=</code><code>"http://github.com/wesnolte"</code><code>>Github</</code><code>a</code><code>></</code><code>li</code><code>></code>
<code> </code><code><</code><code>li</code><code>><</code><code>a</code> <code>href</code><code>=</code><code>"http://twitter.com/wesnolte"</code><code>>Twitter</</code><code>a</code><code>></</code><code>li</code><code>> </code>
<code> </code><code><</code><code>li</code><code>><</code><code>a</code> <code>href</code><code>=</code><code>"http://th3silverlining.com"</code><code>>Blog</</code><code>a</code><code>></</code><code>li</code><code>> </code>
<code> </code><code></</code><code>ul</code><code>></code>
<code> </code><code><</code><code>div</code> <code>class</code><code>=</code><code>"pull-right"</code><code>></code>
<code> </code><code><</code><code>div</code> <code>class</code><code>=</code><code>"alert-message info"</code> <code>id</code><code>=</code><code>"show-list"</code><code>>Show underlying list.</</code><code>div</code><code>></code>
<code> </code>
<code><</code><code>pre</code> <code>class</code><code>=</code><code>"prettyprint lang-html"</code> <code>id</code><code>=</code><code>"list-html"</code> <code>style</code><code>=</code><code>"display:none"</code><code>></</code><code>pre</code><code>> </code>
<code> </code><code></</code><code>div</code><code>> </code>
<code> </code><code></</code><code>div</code><code>></code>
<code> </code><code></</code><code>div</code><code>></code>
<code> </code><code></</code><code>div</code><code>></code>
<code> </code><code><</code><code>ul</code> <code>id</code><code>=</code><code>"org"</code> <code>style</code><code>=</code><code>"display:none"</code><code>></code>
<code> </code><code><</code><code>li</code><code>><</code><code>br</code><code>><</code><code>font</code> <code>size</code><code>=</code><code>"4"</code><code>>Balance</</code><code>font</code><code>></code>
<code> </code>
<code> </code><code><</code><code>ul</code><code>></code>
<code> </code><code><</code><code>li</code> <code>id</code><code>=</code><code>"beer"</code><code>><</code><code>br</code><code>>redis 192.168.1.10</</code><code>li</code><code>></code>
<code> </code><code><</code><code>li</code><code>><</code><code>br</code><code>>nginx2 192.168.1.13</code>
<code> </code><code><</code><code>ul</code><code>></code>
<code> </code><code><</code><code>li</code><code>>mongodb 192.168.1.16</</code><code>li</code><code>></code>
<code> </code><code><</code><code>li</code><code>>mongodb 192.168.1.19</</code><code>li</code><code>></code>
<code> </code><code></</code><code>ul</code><code>></code>
<code> </code><code></</code><code>li</code><code>></code>
<code> </code><code><</code><code>li</code> <code>class</code><code>=</code><code>"fruit"</code><code>>nginx3 192.168.1.24</code>
<code> </code><code><</code><code>li</code><code>>php 192.168.1.28</code>
<code> </code><code><</code><code>ul</code><code>></code>
<code> </code><code><</code><code>li</code><code>>mysql 192.168.1.33</</code><code>li</code><code>></code>
<code> </code><code><</code><code>li</code><code>>mysql 192.168.1.37</</code><code>li</code><code>></code>
<code> </code><code></</code><code>ul</code><code>></code>
<code> </code><code></</code><code>li</code><code>></code>
<code> </code>
<code> </code><code><</code><code>li</code><code>>spider 192.168.1.41</</code><code>li</code><code>></code>
<code> </code><code><</code><code>li</code> <code>class</code><code>=</code><code>"collapsed"</code><code>>nginx5 192.168.1.44</code>
<code> </code><code><</code><code>li</code><code>>Topdeck</</code><code>li</code><code>></code>
<code> </code><code><</code><code>li</code><code>>Reese's Cups</</code><code>li</code><code>></code>
<code> </code><code></</code><code>ul</code><code>></code>
<code> </code><code></</code><code>li</code><code>></code>
<code> </code><code></</code><code>ul</code><code>> </code>
<code> </code><code><</code><code>div</code> <code>id</code><code>=</code><code>"chart"</code> <code>class</code><code>=</code><code>"orgChart"</code><code>></</code><code>div</code><code>></code>
<code> </code><code>jQuery(document).ready(function() {</code>
<code> </code><code>/* Custom jQuery for the example */</code>
<code> </code><code>$("#show-list").click(function(e){</code>
<code> </code><code>e.preventDefault();</code>
<code> </code>
<code> </code><code>$('#list-html').toggle('fast', function(){</code>
<code> </code><code>if($(this).is(':visible')){</code>
<code> </code><code>$('#show-list').text('Hide underlying list.');</code>
<code> </code><code>$(".topbar").fadeTo('fast',0.9);</code>
<code> </code><code>}else{</code>
<code> </code><code>$('#show-list').text('Show underlying list.');</code>
<code> </code><code>$(".topbar").fadeTo('fast',1); </code>
<code> </code><code>}</code>
<code> </code><code>});</code>
<code> </code><code>});</code>
<code> </code><code>$('#list-html').text($('#org').html());</code>
<code> </code><code>$("#org").bind("DOMSubtreeModified", function() {</code>
<code> </code><code>$('#list-html').text('');</code>
<code> </code><code>$('#list-html').text($('#org').html());</code>
<code> </code><code>prettyPrint(); </code>
这里实现的方法有些简单,大家自己举一反三的做成模板,也可以换成自己服务器的图标。
好了,不多说了 !
本文转自 rfyiamcool 51CTO博客,原文链接:http://blog.51cto.com/rfyiamcool/1559137,如需转载请自行联系原作者