ganglia之web界面介紹


轉自:https://blog.csdn.net/lswnew/article/details/79175555

http://www.51niux.com/?id=83 第一篇文章講述了ganglia的搭建過程以及主要配置文件的參數解釋,這篇文章對web界面的功能做解釋。

gweb由:Main、Search、Views、Aggregate Graphs、Compare Hosts、Events、Reports、Automatic Rotation、Live Dashboard、Cubism、Mobile這些選項卡組成,用戶可以快速查看所需信息。

一、Main選項卡

1.1 網格視圖

(網格中所有集群的圖形概述,是可用視圖中的最高層視圖。網格圖標概述了單個gmetad進程中所有主機的數據。)

blob.png

1.2 集群視圖和物理視圖

集群視圖(集群是許多gmond的集合,集群視圖頂部顯示了整個集群的概要圖標。每個主機的快速視圖瀏覽再頁面的下部。):

blob.png

#利用率熱圖:可以通過conf.php或者cond_default.conf里面的$conf['heatmaps_enabled'] = 0;來關閉

#如果節點過多,在連接緩慢的網絡中使用gweb時,危及群眾每個節點都加載一幅圖表會話費大量時間,可以通過定義conf.php文件中的:$conf['max_graphs'] = 數字;來設置集群視圖中所顯示的主機圖標數量的上限。

物理視圖:

blob.png

blob.png

在頁面最下角有一個組里面的所有主機的某個指標的顯示信息:

blob.png

 

博文來自:www.51niux.com

1.3 調整時間范圍

從上面那些圖中,我們看到了有個時間的地方,那么如果我們要自定義時間范圍呢,想以分鍾,小時的范圍顯示呢?

# vi /var/www/html/ganglia/conf_default.php

修改前:

$conf['time_ranges'] = array(

   'hour'=>3600,

   '2hr'=>7200,

   '4hr'=>14400,

   'day'=>86400,

   'week'=>604800,

   'month'=>2419200,

   'year'=>31449600,

   # Needs to be an entry here to support 'r=job' in the query args to graph.php

   'job'=>0

);

修改后:

$conf['time_ranges'] = array(

   '5min'=>300,

   '30min'=>1800,

   '1hr'=>3600,

   'day'=>86400,

   'week'=>604800,

   'month'=>2419200,

   'year'=>31449600,

   # Needs to be an entry here to support 'r=job' in the query args to graph.php

   'job'=>0

)

查看效果:

blob.png

 

1.4 主機視圖(顯示和概括一個gmond進程上的指標)

blob.png

blob.png

二、Search選項卡

一般我們用Search選項卡來查找主機,當你主機過多的話,通過Search能夠快速的定位。

blob.png

三、Views選項卡

視圖是指標、主機報告圖表或匯總圖表的任意集合,是用戶概覽所指定內容的一種方式。

創建方法一(使用GUI創建視圖):

因為我們默認來賓用戶只擁有readonly權限,所以不能通過GUI的形式來創建視圖,這里為了方便演示,我們對conf.php進行一下修改。

$conf['auth_system'] = 'disabled';  #將此從readonly改為disabled,就是來賓用戶不用通過授權也能通過ganglia的web界面進行編輯,還有一個參數enabled就是開啟登錄授權功能。

修改完配置完畢后,再回到web界面:

注:這里做了設置補充下前面的一個頁面設置:

3.1 頁面graphs的修改:

blob.png

下面是正題:

Views==>Create View==>

3.2 創建方法二(使用JSON定義視圖):

視圖以JSON文件的形式存放在conf_dir目錄下。conf_dir的路徑為conf_default.php里面的配置:

$conf['gweb_confdir'] = "/var/lib/ganglia-web";

$conf['views_dir'] = $conf['gweb_confdir'] . '/conf';

所以我們的views視圖的默認配置文件是:

# cat /var/lib/ganglia-web/conf/view_system_mem.json   #這就是我們剛才添加的那個views視圖

{

  "view_name": "system_mem",  #視圖名稱,必須唯一

  "default_size": "medium",  #視圖顯示尺寸

  "items": [   

    {

      "hostname": "192.168.1.101",  #需要顯示指標或圖標的主機名稱

      "metric": "mem_free",             #指標名稱

      "vertical_label": "KB",              #指標單位

      "title": "Free Memory"            #指標標題

    },

    {

      "hostname": "192.168.1.101",

      "metric": "mem_free",

      "vertical_label": "KB",

      "title": "Free Memory",

      "warning": "3.3",                   #(可選)添加垂直黃線,提供預警狀態的可視化提示

      "critical": "3.5"                      #(可選)添加垂直紅線,提供臨界狀態的可視化提示

    },

    {

      "hostname": "192.168.1.101",

      "metric": "mem_free",

      "vertical_label": "KB",

      "title": "Free Memory",

      "warning": "3.6",

      "critical": "3.4"

    },

    {

      "hostname": "192.168.1.101",

      "metric": "mem_free",

      "vertical_label": "KB",

      "title": "Free Memory",

      "warning": "3.0",

      "critical": "2.5"

    },

    {

      "hostname": "192.168.1.102",

      "metric": "mem_free",

      "vertical_label": "KB",

      "title": "Free Memory"

    } , 

   {

      "hostname": "192.168.1.103",

      "metric": "swap_free",

      "vertical_label": "KB",

      "title": "Free Swap Space",

      "warning": "5",

      "critical": "4"

    },

    {

      "hostname": "192.168.1.103",

      "graph": "mem_report"  #圖標名稱

    }

  ],

  "view_type": "standard",  #standard或regex。regex類型視圖允許用戶指定用戶指定正則表達式匹配主機。

  "parent": null,

  "common_y_axis": 0

}

# python -m json.tool view_system_mem.json   #用此命令可以檢測我們的編寫的view視圖有沒有問題,下面是報錯提示再54行沒有逗號,如果正確的話,會將整個配置文件輸出。

Expecting , delimiter: line 54 column 3 (char 1160)

舉個例子:如果我們比較關心某些主機的某些指標數據,就可以通過編寫一個json的views視圖,來集中展示一些主機的指標。

比如我們想看192.168.1.107到192.168.1.112的內存指標graphs圖:

# cat /var/lib/ganglia-web/conf/view_mem_graphs.json 

{"view_name":"mem_graphs",

"items":[

{"hostname":"192.168.1.107","graph":"mem_report"},

{"hostname":"192.168.1.108","graph":"mem_report"},

{"hostname":"192.168.1.109","graph":"mem_report"},

{"hostname":"192.168.1.110","graph":"mem_report"},

{"hostname":"192.168.1.111","graph":"mem_report"},

{"hostname":"192.168.1.112","graph":"mem_report"}],

"view_type":"standard"}

查看效果圖:

blob.png

博文來自:www.51niux.com

四、Aggregated Graphs選項卡

匯總圖標,允許創建回合不同指標的綜合圖標,但最低限速是必須提供主機和指標的正則表達式。

blob.png

另外上圖再JSON和Inspect中間有一個按鈕Decompose,點擊這個按鈕可以彈出一個界面,這個界面有這些所有主機在此時間范圍內所有此指標的數據圖形。

五、Compare Hosts

主機比較特性使得用戶可以比較所有匹配指標的主機。它會創建不同主機的每種指標的匯總圖標。當用戶想要查出某台主機(或某些主機)與其他主機采集指標上面的不同時候。

blob.png

另外上圖再JSON和Inspect中間有一個按鈕Decompose,點擊這個按鈕可以彈出一個界面,這個界面有這些所有主機在此時間范圍內所有此指標的數據圖形。但是前提是上一個指標項目Aggregated Graphs已經做了創建了,不然彈出的界面會提示:Alert: This graph can not be decomposed

如果比較某幾個主機的:Hosts值那里設置,類似於:192.168.1.1(01|03|10)

blob.png

 

六、Events

事件是自定義的疊加在圖標上的“垂直標記”,在特定事件發生時為用戶提供可視化的提示。

blob.png

再次查看192.168.1.110的主機指標圖,已經跟我們創建的時間相關聯:

blob.png

查看下我們添加的事件配置:

# cat /var/lib/ganglia-web/conf/events.json 

[{"event_id":"58803066f0ca5","start_time":1484755200,"summary":"rrdcached guancha","grid":"*","cluster":"*","host_regex":"192.168.1.110","description":""},{"event_id":"588030ea863ff","start_time":1484755200,"summary":"rrdcached guane","grid":"*","cluster":"*","host_regex":"192.168.1.110","description":"","end_time":1485792000}]

博文來自:www.51niux.com

六、Reports

報告功能,以文字的形式展示我們要查看的值。

blob.png

#所有主機的話用.表示。

七、Automatic Rotation

自動循環是面向數據中心管理員的一項特性,可以連續循環指標,該特性與視圖聯合使用,點擊Automatic Rotation,然后選擇所需循環的視圖即可。瀏覽器關閉前指標將一直循環。當視圖循環時可以修改視圖,該修改將影響一個完整的循環。圖標默認每30秒循環一次,可以再下拉按鈕選擇循環的時間最短為10秒,最長為90秒一循環。點擊時間下拉框下面的Go back to Ganglia可以退出循環返回主界面。用戶在不同的監視器上調用不同的視圖進行循環。

八、Live Dashboard

活動信息中心提供了緊湊格式的所有視圖指標概覽。 數據每15秒更新一次。 僅支持包含指標或圖表報告的元素。 將不包括聚合圖。您可以使用瀏覽器縮放功能,每頁獲得更多圖表。

在下拉框選擇對應的views視圖后的結果:

blob.png

九、Cubism

這個儀表盤的作用也是顯示數據,以圖形說明更清楚一點。

blob.png

下面是效果圖:

blob.png

十、Mobile

gweb的Mobile是為了移動設備優化的Ganglia Web界面。gweb主機上的/ganglia/mobile.php路徑下可以找到移動視圖,適用於jQueryMobile工具包支持的任意移動瀏覽器.

十一、自定義復合圖標

在Views選項卡的講解中已經點到了復合圖表,那么我們如何修改復合圖表或者自定義呢?

首先復合圖表所在的位置,為ganglia web站點目錄的graph.d下面,如:/var/www/html/ganglia/graph.d/

現在我們自定義一個復合圖表,里面只有cpu空閑,內存空閑和磁盤空閑,如下列:

# cat system_base_report.json 

{

    "report_name" : "system_base_report",   #復合圖的名稱

    "title" : "system base report",    #圖表中顯示的標題

    "vertical_label" : "system_base",   #Y軸的描述(可選)

    "series" : [   #構成圖表的指標

    { "metric":"cpu_idle", "color":"3333bb", "label":"cpu_idle", "line_width":"2","type":"line"},

    { "metric":"disk_free_percent_rootfs", "color":"6d9eeb", "label":"disk_free_percent_rootfs ", "line_width":"2","type":"line"},

    { "metric":"mem_free", "color":"ffea00", "label":"Free Memory", "line_width":"2","type":"line"},

    { "metric":"procstat_gmond_mem", "color":"a64d79", "label":"gmond_mem", "line_width":"2","type":"line"}

    

 ]

}

#metric  :指標名稱,如果指標不存在,系統將自動略過

#color    :6位進制顏色編碼

#label      :指標的標簽,也就是圖表下方顯示內容值的名稱

#type        :屬性類型,line(線性)或stack(堆疊)

#line_width  :線寬,默認值為2。如果設置的type是stack,則設置了線寬系統也會自動忽略。

然后點擊Edit Optional Graphs按鈕,會看到我們自定義的這個system_base_report,已經出現了,添加到頁面中來。

blob.png

十二、其他特性

初始折疊指標組:      

$conf['metric_groups_initially_collapsed'] = false;  #這里默認是不折疊,將false改為true,就會默認折疊所有的指標組,需要點開才能看到指標圖。

默認刷新周期:

$conf['default_refresh'] = 300;  #默認主機視圖和集群視圖每五分鍾刷新一次,調整這里可以改變刷新的頻率

從圖表主機名中刪除域名:

$conf['strip_domainname'] = false;  #gweb接口在圖標中默認顯示全稱域名。如果主機在同一域,這里設置為true,來刪除域名。設置成true好一點。在主機圖標顯示的地方只顯示主機會顯得簡潔一點。

設置默認時間周期:

$conf['default_time_range'] = 'hour'; #默認時間顯示就是hour,就是當前一個小時,我們可以調整期顯示的時間,如改為:day,下面看效果:

blob.png

ganglia開啟認證登錄(ganglia還是只是readonly模式,我們用apache自帶的認證系統):

# cat /etc/httpd/conf/httpd.conf   #在配置文件末尾加上下面這些

<Directory "/var/www/html/ganglia">

AuthType Basic

Options None

AllowOverride None

Order allow,deny

Allow from all

AuthName "ganglia Access"

AuthUserFile /usr/local/ganglia/htpasswd.user

Require valid-user

</Directory>

下面是測試結果(當然如果你不想只用一個用戶,想每個人一個用戶,可以用LDAP等加入進來):

blob.png

#經測試,驗證成功才能進入ganglia界面,不然會提示下方的內容,無法訪問ganglia頁面。

blob.png

注:還有一種更細致的權限管理方案,ganglia會根據不同的用戶身份授予不同的權限:GangliaAcl。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM