顯示具有 linux 標籤的文章。 顯示所有文章
顯示具有 linux 標籤的文章。 顯示所有文章

2017年3月10日

ganglia 用multi source (cluster)

ganglia  有需要監控二個 source , 一個hadoop 一個solr ..

ganglia 主機設定,改用unicast
1. gmetad.conf
    data_source "hadoop" 172.1.0.2:8649
    data_source "solr" 172.1.0.2:8655

2. 要設定二個 gmond.conf.1 gmond.conf.2 , 開二個gmond 來收metric
     gmond.conf.1   (這個gmond 收也送,主機加入hadoop source)
         cluster {
         name = "hadoop"
         owner = "unspecified"
         latlong = "unspecified"
         url = "unspecified"
         }
         host {
           location = "unspecified"
         }
         udp_send_channel {
           host = 172.1.0.2
           port = 8649
           ttl = 1
         }
         udp_recv_channel {
          port = 8649
          bind = 172.1.0.2
         }
         tcp_accept_channel {
         port = 8649
         }
      gmond.conf.2 (這個gmond 就只收)
         cluster {
         name = "solr"
         owner = "unspecified"
         latlong = "unspecified"
         url = "unspecified"
         }
         host {
          location = "unspecified"
         }
         udp_recv_channel {
           port = 8655
          bind = 172.1.0.2
         }
         tcp_accept_channel {
          port = 8655
         }
3. 執行gmond
    /usr/sbin/gmond  --conf /etc/ganglia/gmond.conf.1
    /usr/sbin/gmond  --conf /etc/ganglia/gmond.conf.2
    或改daemon 的shell  , /etc/init.d/ganglia-monitor
         start-stop-daemon --start --quiet --name gmond1 \
                --exec $DAEMON -- --pid-file /var/run/$NAME.pid.1 --conf /etc/ganglia/gmond.conf.1
        start-stop-daemon --start --quiet --name gmond2 \
                --exec $DAEMON -- --pid-file /var/run/$NAME.pid.2 --conf /etc/ganglia/gmond.conf.2

   


2017年3月1日

log4j log 送到 logstash log4j input

jvm 程式,像是hadoop solr 可以把log 送到ELK 集中控管

ex: 修改hadoop log4j.properties
log4j.appender.server=org.apache.log4j.net.SocketAppender
log4j.appender.server.Port=4560
log4j.appender.server.RemoteHost=172.1.1.1
log4j.appender.server.LocationInfo=true
log4j.appender.server.Application=hadoop

logstash 設定
input {
  log4j {
    host => "172.1.1.1"
    port => 4560
  }
}
filter {
  grok {
    match => { "host" => "%{IPORHOST:host}:%{POSINT}" }  // 修改1.2.3.4:8888 => 1.2.3.4
    overwrite => [ "host" ]
  }
}

output {
  elasticsearch { hosts => ["localhost:9200"] }
}



2017年2月21日

ubuntu 16.04 procos 的bug

ubuntu 16.04 遇到的bug , 會把process 誤砍,這二個package 請更新到以下版本,即可修正..

ii  libprocps4:amd64                   2:3.3.10-4ubuntu2.3             amd64        library for accessing process information from /proc
ii  procps                             2:3.3.10-4ubuntu2.3             amd64        /proc file system utilities

https://bugs.launchpad.net/ubuntu/+source/procps/+bug/1610499

2015年12月24日

dd disk to disk 看進度的方法

dd if=/dev/hda of=/dev/sda bs=4k

再開另外一個terminal ,執行 sudo kill -USR1 $(pgrep ^dd) 
在dd的那個terminal 就會顯示copy 多少資料,speed多少..

33706002+0 records in 
33706002+0 records out 
17257473024 bytes (17 GB) copied, 34.791 s, 496 MB/s

2013年8月8日

bind9 named 快速新增DNS反解紀錄

bind9 named 快速新增DNS反解紀錄

一般設定整段IP的反解,需要一筆一筆寫,如下
1    IN    PTR     PC1.local.
2    IN    PTR     PC2.local.
3    IN    PTR     PC3.local.       
4    IN    PTR     PC4.local.
5    IN    PTR     PC5.local.
6    IN    PTR     PC6.local.
7    IN    PTR     PC7.local.
8    IN    PTR     PC8.local.
9    IN    PTR     PC9.local.10    IN    PTR     PC10.local.


現在,可以一筆就可取代,自動產生反解紀錄
$GENERATE 3-10 $ IN PTR PC$.local.


Ganglia 雜項設定



Ganglia 雜項設定

1.     /usr/share/ganglia-webfrontend/                                                                  web所有檔案位置
        /usr/share/ganglia-webfrontend/templates/default/cluster_view.tpl      首頁cluster view的設定檔                                     
        /usr/share/ganglia-webfrontend/graph.d                                                    增加Cluster view的metric php檔
        /usr/share/ganglia-webfrontend/get_content.php                                     修改首頁的default sorted,改成by name
                                                                                                                                            if (!$sort)
                                                                                                                                           $sort = "by name";

2.    gmetric -n 245toInternet -v foo -t string -d 10            刪除不要的metric  245tointernet


2013年8月7日

使用shell算使用頻寬

有些網路設備不提供即時頻寬,只好學Mrtg抓標準的snmp oid,再計算出當時使用頻寬..
以下範例是抓取  switch的port 48 ,ifspeed(port速率是100Mb),抓取間隔為60秒

tmp_port6_in=`/usr/bin/snmpwalk -v 2c -c public 10.110.1.252 1.3.6.1.2.1.2.2.1.10.48 | awk {'print $4'}`
old_port6_in=`cat /tmp/old_port6_in`
port6_in=`/usr/bin/expr \( $tmp_port6_in - $old_port6_in \) \* 8 / 60 /1000000`
echo $tmp_port6_in > /tmp/old_port6_in
tmp_port6_ou=`/usr/bin/snmpwalk -v 2c -c public 10.110.1.252 1.3.6.1.2.1.2.2.1.16.48 | awk {'print $4'}`
old_port6_ou=`cat /tmp/old_port6_ou`
port6_ou=`/usr/bin/expr \( $tmp_port6_ou - $old_port6_ou \) \* 8 / 60 /1000000`
echo $tmp_port6_ou > /tmp/old_port6_ou


記得再rc.local 加echo 0 > /tmp/old_port6_in   和 /tmp/old_port6_out 
以免重開機時,檔案被清掉...

參考連結,內有算式   http://www.cisco.com/en/US/tech/tk648/tk362/technologies_tech_note09186a008009496e.shtml   


part 2

發現有問題,
octet值是32位元的,超過最大值即歸零,最大值是4294967295 (2的32次方-1)。

shell 需要增加判斷式
if [ `expr $tmp_port6_in - $old_port6_in` -lt "0" ]
 then
   port6_in=`/usr/bin/expr \( $tmp_port6_in - $old_port6_in + 4294967295 \) \* 8 / 60`
 else
   port6_in=`/usr/bin/expr \( $tmp_port6_in - $old_port6_in \) \* 8 / 60` 
 fi



參考連結: http://www.cisco.com/en/US/tech/tk648/tk362/technologies_q_and_a_item09186a00800b69ac.shtml

2013年7月30日

linux 下用文字介面抓取封包

tcpdump -i eth1 'port 80 and host 208.80.154.225' -w test4.txt

聽208.80.154.225 的port 80 寫到test4.xtx

2013年7月9日

Vi 取代 多行加mark


取代:
文件中的所有 abc 置換成 xyz
:%s/abc/xyz/g

多行前面加mark:
ctrl + v 選擇多行
I
#
esc

2013年6月18日

ubuntu 新增apache 網站

新增/etc/apache2/sites-available/<site name>
<VirtualHost *:8080> DocumentRoot /path/to/new/site ServerName www.example.com </VirtualHost>
啟動此網站 
sudo a2ensite <site name>

重啟apache
sudo /etc/init.d/apache2 restart

2013年5月5日

ubuntu eth0 或eth1 不見

新安裝網卡時,有時會發生eth0或eth1消失,或是eth1變成eth2,
設定/etc/network/interfaces 的IP設定無法正常設定,
使用mii-tool可以找到網卡,只是eth?錯亂.
刪除 /etc/udev/rules.d/70-persistent-net.rules,
再重新開機後,就會恢復正常...

2013年4月30日

檢查磁區的uuid

blkid 可以列出所有的磁區的uuid,
以便修改fstab的對映...


立即套用linux修改的環境變數

舉例修改/etc/profile 的PATH 環境變數,
用service /etc/profile,
直接可以套用,不用重新登入或重開機。

2013年4月27日

Linux 釋放記憶體的command

Linux kernel 2.6 以後可以釋放記憶體的command

sync && echo 1 >/proc/sys/vm/drop_caches && sleep 2 && echo 0 >/proc/sys/vm/drop_caches

主要清除指令是 echo 1 >/proc/sys/vm/drop_caches
最後是回復正常作業狀況...


2011年5月11日

停用openwebmail 的filter共用設定

因有發生openwebmail 的共用filter會誤把正常信過濾掉,所以才會想要把共用的filter關掉
修改 /var/www/cgi-bin/openwebmail/etc/defaults/openwebmail.conf
enable_globalfilter  no

使用者重新登入後就會生效

2011年4月7日

在putty登入後使用system-config 會發生畫面亂掉的問題

在putty登入後使用system-config 會發生畫面亂掉,變成很多??,甚至變形 ...


修改putty(或Pietty)的設定中的Translation選項,將character改成UTF-8,這樣就恢復正常...
但有個缺點,看中文會有問題..

正常顯示

2011年1月25日

每日檢查信箱大小的Script

#!/bin/bash
find /var/mail/ -size +500M -exec ls -lah {} \; > /tmp/chkmail
mail -s "mailbox check" admin@xxxx < /tmp/chkmail

2010年8月25日

讓YUM透過proxy來update

Yum可使設定透過proxyupdate install

 

修改 /etc/yum.conf

 

新增一行設定

Proxy=http://192.168.1.5:3128 (proxy ip : proxy port)

 

service yum-updatesd restart 後即會生效

2010年7月21日

每日Check 備份檔案的Script 並寄發Mail

#!/bin/bash
rm -Rf /bak/`date +%a`
mkdir /bak/`date +%a`
mv /bak/web /bak/`date +%a`
mv /bak/web2 /bak/`date +%a`
day=`date +%a`
backupsize=`/usr/bin/du -sh  /bak/$day`
echo "$backupsize" > /tmp/chkmail
mail -s "backup check on $day" admin@test.com.tw < /tmp/chkmail