wget http://dinp.qiniudn.com/go1.4.1.linux-amd64.tar.gz tar zxf go1.4.1.linux-amd64.tar.gz
mkdir -p workspace/srcecho \.bashrcecho 'export GOROOT=$HOME/go' >> .bashrcecho 'export GOPATH=$HOME/workspace' >> .bashrcecho 'export PATH=$GOROOT/bin:$GOPATH/bin:$PATH' >> .bashrcecho \½ÓÏÂÀ´clone´úÂ룬ÒÔ±¸ºóÓà cd $GOPATH/src
mkdir github.comcd github.com
git clone --recursive https://github.com/open-falcon/of-release.git
3.open-falcon°²×°
½âѹof-release-v0.1.0.tar.gz»ñµÃÒÔÏÂ16¸öѹËõ°ü
ÿ¸öѹËõ°ü¶ÔÓ¦Ò»¸ö×é¼þ£¬´´½¨¶ÀÁ¢×é¼þĿ¼£¬½«Ñ¹Ëõ°ü½âѹµ½ÏàӦĿ¼¼´¿É¡£
4.×é¼þÅäÖÃʹÓÃ
3.1 agent
agentÓÃÓڲɼ¯»úÆ÷¸ºÔؼà¿ØÖ¸±ê£¬±ÈÈçcpu.idle¡¢load.1min¡¢disk.io.utilµÈµÈ£¬Ã¿¸ô60Ãëpush¸øTransfer¡£agentÓëTransfer½¨Á¢Á˳¤Á¬½Ó£¬Êý¾Ý·¢ËÍËٶȱȽϿ죬agentÌṩÁËÒ»¸öhttp½Ó¿Ú/v1/pushÓÃÓÚ½ÓÊÕÓû§ÊÖ¹¤pushµÄһЩÊý¾Ý£¬È»ºóͨ¹ý³¤Á¬½ÓѸËÙת·¢¸øTransfer¡£Òò´ËÐèÒª±»¼à¿ØµÄËùÓÐÖ÷»ú¶¼ÐèҪʹÓøÃ×é¼þ¡£
ÅäÖÃÎļþ±ØÐë½Ðcfg.json£¬¿ÉÒÔ»ùÓÚcfg.example.jsonÐÞ¸Ä
{
\¿ØÖÆһЩdebugÐÅÏ¢µÄÊä³ö£¬Éú²ú»·¾³Í¨³£ÉèÖÃΪfalse \²É¼¯ÁËÊý¾Ý·¢¸øtransfer£¬endpoint¾ÍÉèÖÃΪÁËhostname£¬Ä¬ÈÏͨ¹ý`hostname`»ñÈ¡£¬Èç¹ûÅäÖÃÖÐÅäÖÃÁËhostname£¬¾ÍÓÃÅäÖÃÖеÄ
\ÓëhbsÐÄÌøµÄʱºò»á°Ñ×Ô¼ºµÄipµØÖ··¢¸øhbs£¬agent»á×Ô¶¯Ì½²â±¾»úip£¬Èç¹û²»ÏëÈÃagent×Ô¶¯Ì½²â£¬¿ÉÒÔÊÖ¹¤Ð޸ĸÃÅäÖà \
\ĬÈϲ»¿ªÆô²å¼þ»úÖÆ
\°Ñ·ÅÖòå¼þ½Å±¾µÄgit repo cloneµ½Õâ¸öĿ¼ \# ·ÅÖòå¼þ½Å±¾µÄgit repoµØÖ·
\\# ²å¼þÖ´ÐеÄlog£¬Èç¹û²å¼þÖ´ÐÐÓÐÎÊÌ⣬¿ÉÒÔÈ¥Õâ¸öĿ¼¿´log },
\
\´Ë´¦enabledÒªÉèÖÃΪtrue
\µÄµØÖ·£¬¶Ë¿ÚÊÇhbsµÄrpc¶Ë¿Ú \ÐÄÌøÖÜÆÚ£¬µ¥Î»ÊÇÃë
\Á¬½ÓhbsµÄ³¬Ê±Ê±¼ä£¬µ¥Î»ÊǺÁÃë }, \
\´Ë´¦enabledÒªÉèÖÃΪtrue \\\
], # transferµÄµØÖ·£¬¶Ë¿ÚÊÇtransferµÄrpc¶Ë¿Ú, ¿ÉÒÔÖ§³Öд¶à¸ötransferµÄµØÖ·£¬agent»á±£Ö¤HA
\# ²É¼¯ÖÜÆÚ£¬µ¥Î»ÊÇÃ룬¼´agentÒ»·ÖÖӲɼ¯Ò»´ÎÊý¾Ý·¢¸øtransfer
\Á¬½ÓtransferµÄ³¬Ê±Ê±¼ä£¬µ¥Î»ÊǺÁÃë }, \
\ÊÇ·ñÒª¼àÌýhttp¶Ë¿Ú \Èç¹û¼àÌýµÄ»°£¬¼àÌýµÄµØÖ· },
\
\[\\# ĬÈÏÅäÖÃÖ»»á²É¼¯Íø¿¨Ãû³Æǰ׺ÊÇeth¡¢emµÄÍø¿¨Á÷Á¿£¬ÅäÖÃΪ¿Õ¾Í»á²É¼¯ËùÓеģ¬loµÄÒ²»á²É¼¯¡£¿ÉÒÔ´Ó/proc/net/dev¿´µ½¸÷¸öÍø¿¨µÄÁ÷Á¿ÐÅÏ¢ },
\ĬÈϲɼ¯ÁË200¶à¸ömetric£¬¿ÉÒÔͨ¹ýignoreÉèÖÃΪ²»²É¼¯ \\ } }
½ø³Ì¹ÜÀí
./control start Æô¶¯½ø³Ì ./control stop Í£Ö¹½ø³Ì ./control restart ÖØÆô½ø³Ì ./control status ²é¿´½ø³Ì״̬
./control tail ÓÃtail -fµÄ·½Ê½²é¿´var/app.log
ÑéÖ¤
¿´varĿ¼ÏµÄlogÊÇ·ñÕý³££¬»òÕßä¯ÀÀÆ÷·ÃÎÊÆä1988¶Ë¿Ú¡£ÁíÍâagentÌṩÁËÒ»¸ö--check²ÎÊý£¬¿ÉÒÔ¼ì²éagentÊÇ·ñ¿ÉÒÔÕý³£ÅÜÔÚµ±Ç°»úÆ÷ÉÏ ./falcon-agent --check
/v1/push½Ó¿Ú
ÎÒÃÇÉè¼Æ³õÖÔÊDz»Ï£ÍûÓû§Ö±½ÓÁ¬µ½Transfer·¢ËÍÊý¾Ý£¬¶øÊÇͨ¹ýagentµÄ/v1/push½Ó¿Úת·¢£¬½Ó¿ÚʹÓ÷¶Àý£º
ts=`date +%s`; curl -X POST -d \\\\
$ts,\\\\\\
3.2 transfer
transferÊÇÊý¾Ýת·¢·þÎñ¡£Ëü½ÓÊÕagentÉϱ¨µÄÊý¾Ý£¬È»ºó°´ÕÕ¹þÏ£¹æÔò½øÐÐÊý¾Ý·ÖƬ¡¢²¢½«·ÖƬºóµÄÊý¾Ý·Ö±ðpush¸øgraph&judgeµÈ×é¼þ¡£
# УÑé·þÎñ,ÕâÀï¼Ù¶¨·þÎñ¿ªÆôÁË6060µÄhttp¼àÌý¶Ë¿Ú¡£¼ìÑé½á¹ûΪok±íÃ÷·þÎñÕý³£Æô¶¯¡£
curl -s \
·þÎñÆô¶¯ºó£¬¿ÉÒÔͨ¹ýÈÕÖ¾²é¿´·þÎñµÄÔËÐÐ״̬£¬ÈÕÖ¾ÎļþµØַΪ./var/app.log¡£¿ÉÒÔͨ¹ýµ÷ÊԽű¾./test/debug²é¿´·þÎñÆ÷µÄÄÚ²¿×´Ì¬Êý¾Ý£¬Èç ÔËÐÐ bash ./test/debug ¿ÉÒԵõ½·þÎñÆ÷ÄÚ²¿×´Ì¬µÄͳ¼ÆÐÅÏ¢¡£ Configuration
debug: true/false, Èç¹ûΪtrue£¬ÈÕÖ¾Öлá´òÓ¡debugÐÅÏ¢
http
- enable: true/false, ±íʾÊÇ·ñ¿ªÆô¸Ãhttp¶Ë¿Ú£¬¸Ã¶Ë¿ÚΪ¿ØÖƶ˿ڣ¬Ö÷ÒªÓÃÀ´¶Ôtransfer·¢ËÍ¿ØÖÆÃüÁͳ¼ÆÃüÁî¡¢debugÃüÁîµÈ - listen: ±íʾ¼àÌýµÄhttp¶Ë¿Ú rpc
- enable: true/false, ±íʾÊÇ·ñ¿ªÆô¸ÃjsonrpcÊý¾Ý½ÓÊն˿Ú, Agent·¢ËÍÊý¾ÝʹÓõľÍÊÇ¸Ã¶Ë¿Ú - listen: ±íʾ¼àÌýµÄhttp¶Ë¿Ú
socket #¼´½«±»·ÏÆú,Çë±ÜÃâʹÓÃ
- enable: true/false, ±íʾÊÇ·ñ¿ªÆô¸Ãtelnet·½Ê½µÄÊý¾Ý½ÓÊն˿ڣ¬ÕâÊÇΪÁË·½±ãÓû§Ò»ÐÐÐеķ¢ËÍÊý¾Ý¸øtransfer - listen: ±íʾ¼àÌýµÄhttp¶Ë¿Ú
judge
- enable: true/false, ±íʾÊÇ·ñ¿ªÆôÏòjudge·¢ËÍÊý¾Ý
- batch: Êý¾Ýת·¢µÄÅúÁ¿´óС£¬¿ÉÒÔ¼Ó¿ì·¢ËÍËٶȣ¬½¨Òé±£³ÖĬÈÏÖµ