2017년 2월 9-12일

  1. 2017. 02. 08
    1. 시간이 빨리간다. 집 오면 7시, 밥 해 먹고 설거지하면 8시, 뉴스 좀 보다가 읽을 거 읽고 좀 놀다 보면 이 시간.
  2. 2017. 02. 09
    1. 어제 저거 한 줄 쓰고 더 쓸게 없었다. 삶의 우선 순위나 수입 지출 거주 취미생활 등등 고민을 한다.
    2. AJAX 자동완성 기능 구현
  3. 2017. 02. 10
    1. 월급 나오자마자 수수료 공짜인 CMA로 옮기고, 다시 카드 출금 계좌로 옮기고. 카드 결제하고.
  4. 2017. 02. 11
    1. 복식부기로 가계부를 작성하니 사용처에 따른 돈의 흐름이 보인다는 점이 정말 좋다.
    2. 단점은 미뤄둔 내용을 한꺼번에 입력하거나, 듬성듬성 입력해 돈이 안 맞을 경우, 찾아내는게… 회계 지식이 전무해서 어렵다. 주식 같은건 대체 어떻게 처리 해야 할지 모르겠다(종목별로 다 등록해본 적이 있는데, 보유중인 종목 일부를 팔았을 때 처리가 레알 헬이었다. 시초가에서 판매가로 변경, 다시 종가 입력…)
    3. 주식은 그냥 총액만 맞춰넣고 ‘손익/손실’ 계좌로 주말마다 맞춰주는 식으로 하고 있다.
    4. 외국 은행이나 증권사는 외부 프로그램에서 계좌 정보를 가져올 수 있게 허용한 곳도 있다는데. 직접 손으로 자산 관리하는거 너무 불편하다.
    5. 사용하는 복식부기 프로그램은 Webzash.
    6. GnuCash 등도 있으니 참조.
    7. 웹에서 사용 가능한 복식부기 프로그램 후잉이 있는데 유료.
  5. 2017. 02. 12
    1. 시간이 점점 빨리 간다는 8일의 생각에 덧붙여서.
    2. 나이 들 수록 왜 시간이 빨리가는가를 한 만화에선 이렇게 이야기했다. 1살일 때 1년은 그때까지 인생의 100%이고, 5살 때 1년은 인생의 20%… 나이들면서 1년이 점점 작아진다고. 기억이 맞다면 ‘먹다 버린 불쌍한 바나나’란 만화 동인지였다(ACA 출품작이었을 것).
    3. 자산 점검하고, 계획하고, 읽고, 놀고…

Firefox 32.0.1 확장기능

파이어버드 시절부터 해서 0.5부터 쓰던 프로그램이 32.0.1까지 오다니 감개무량…

32까지 온건 크롬 때문인지 버전업 방식이 바뀌어 마구 버전 올라간 탓이 더 크지만.

 

 

주소창에 about:healthreport 입력하면 확인할 수 있음. 좀 더 보기 좋게 나오는 확장기능이 있을텐데 아직 못 찾았다(예전엔 Mr.Tech… 어쩌고 확장기능이 있었는데 더 이상 나오지 않음)

  1. AutoPager : 설정만 잘 하면 ‘다음페이지’ 클릭해야 하는 웹 사이트를 스페이스(혹은 페이지 다운)만 누르고 있으면 쭉 읽을 수 있는 기능. 게시판 형 웹사이트에서 매우 편리.
  2. goo.gl lite : 구글에서 제공하는 단축주소 쉽게 사용.
  3. It’s All Text! : 텍스트 영역 입력시 외부 입력기(에디터) 사용 가능
  4. Personas Plus : 파폭 깔면 기본으로 있는 확장
  5. Fox To Phone : 크롬 투 폰의 파이어폭스 버전. 선택한 정보를 안드로이드 폰으로 보낼 수 있음
  6. 우리말 도우미 : 철자법 확인용
  7. Flashblock : 플래쉬 기본으로 끌 수 있음. 보고 싶은거면 키면 되기 때문에 매우 좋다.
  8. IE View : IE로 봐야 할 때 사용.
  9. Clip to OneNote : 현재 페이지 원노트로 보내기 기능
  10. Table2Clipboard : 테이블 클립보드에 복사할 때 형식 변경용
  11. Fasterfox : 네트워크 자원 사용량 변경 가능, 접속수 늘리고 미리 읽기 사용 등등이던가?
  12. Thumbnail Zoom : 페이스북이나 기타 사이트의 썸네일 마우스만 올리면 원래 사이즈 볼 수 있는 기능.
  13. User Agent Switcher : 웹 에이전트 값 변경 가능, 기본으로는 몇 개 없고 찾아서 더 넣으면 됨.
  14. HeadingsMap : 목록 있는 페이지의 목차를 쉽게 만들어줌.
  15. Google Translator for Firefox : 구글 번역을 쉽게(우클릭해서 사용 등)할 수 있음.
  16. Translate to Korean : 15번이랑 비슷한데 좀 다름..
  17. feedly : RSS 서비스 쉽게 사용하는거
  18. Element Hiding Helper for Adblock Plus : 광고 차단 목록 쉽게 선택 함
  19. Mozilla Archive Format : 웹 문서 mht 형식으로 저장 가능
  20. HttpFox : HTTP 분석 용도
  21. RSS Handler for Feedly : feedly 다른 확장
  22. Add-on Compatibility Reporter : 기본 확장 기능
  23. IE Tab 2 (FF 3.6+) : 파폭 탭을 IE 엔진으로 여는 기능
  24. Memory Fox : 파폭 메모리 회수용 확장
  25. Personal Menu : 아이콘 몇 개 더 추가 되는 확장이던가?
  26. Print pages to PDF : PDF 파일 생성용 확장이던가?
  27. Tab Mix Plus : 탭 관리용
  28. Pastebin : pastebin 사이트 사용 용도.
  29. Wiktionary and Google Translate : 마우스를 단어 위에 올리면 번역된 내용 보여줌
  30. FireGestures : 마우스 제스처 사용 용도
  31. GKeep Panel : 구글 keep 쉽게 사용 가능
  32. GDrive Panel : 구글 드라이브 쉽게 사용 가능
  33. Adblock Plus : 광고 차단
  34. Lightbeam : 잘 모름
  35. ProfilePassword-Firefox : 파폭 실행시 패스워드 물어봄
  36. Naver Capture Firefox Extension : 네이버 캡처에서 멋대로 설치..
  37. HttpRequester : 이게 뭐지? …
  38. Garmin Communicator : 가민(GPS) 파폭에서 사용할 때 설치
  39. Wikipedia Modernized : 위키디피아 확장. 좀 더 빠르고 예쁘게 보여줌
  40. Flash and Video Download : 유튜브 같은 동영상 다운로드 가능, 최고 화질은 별도 프로그램 있어야 함.
  41. Greasemonkey : 사용자 설정 스크립트. DC에서 보기 싫은 사용자 차단도 됨.(물론 나만 안 보임)
  42. Screengrab  (fix version) : 스크린 캡처 용도. 한계가 있는지 너무 긴 스크롤은 잘린다.
  43. FireFTP : 파폭에서 FTP 접속 가능
  44. Firebug : 이게 뭐더라?
  45. FoxyProxy Standard : 이게 뭐더라 2 ?
  46. X-notifier : 각종 웹 메일 쉽게 확인 가능.

cacti

네트워크 모니터링 소프트웨어 – cacti

  1. 공식 홈페이지(영문): http://www.cacti.net/
  2. 사용자 홈페이지(영문): http://www.cactiusers.org/
  3. 한글 자료도 소수 있지만 설치에서 몇가지 자료 등록 정도만 있다. 플러그인에 대해 언급된 것이 하나도 없음.

cacti 소개

  • ping, snmp를 이용한 모니터링
  • 쉬운 인터페이스 : MRTG, nagios가 설정파일을 이리저리 만져야 하는데 반해 웹 인터페이스에서 몇 번 만져주는 것으로 모니터링 설정 가능.
  • 플러그인 확장 : 기본 cacti는 그다지 기능이 많지 않으나 PIA(Plugin Architecture) 패치를 하면 플러그인을 사용할 수 있 각 플러그인을 사용하면 nagios에 버금가는 기능을 사용할 수 있음.
  • 동작 원리는 운영체제의 스케쥴러에서 일정 시간마다(기본값은 5분) poller 스크립트를 실행해 각 서버의 정보를 가져와 DB에 저장, 그 값을 참조해 rrd 그래프를 그리는 것 같음.
  • 모니터할 호스트가 많을 경우 poller 스크립트를 바이너리로 대체 가능. 성능은 기존 스크립트 사용에 비해 바이너리로 실행할 경우가 4배 정도 빠르다(기본으로 제공하지 않으며, 소스 받아와 컴파일을 해야함).
  • 단점으로, PIA을 비롯한 플러그인들은 정식 배포 버전을 가져다 사용해도 소스 수정을 하지 않으면 바로 사용하기 어려운 점이 있다.

설치

요구사항

  • APM 환경 + 스케쥴러(cron 등) + ping + net-snmpd + net-snmpd-devel
  • 리눅스, 윈도든 상관없이 돌아감.
  • 똑같이 돌아간다는 이야기는 아님, 핑 바이너리 실행권한 등이 차이점이 많음.
  • 이 문서는 리눅스 Fedora에서 cacti 패키지 설치 후 그 위에 소스를 덮어 씌우는 것으로 설명한다
    • 그 이유는 cacti 계정 생성, 아파치 설정 등록, 관련 패키지 설치가 편리하기 때문임.
    • Fedora 패키지를 그대로 쓰면 ping 기능이 빠져있고, 버전이 0.86c로 낮다.
  • 설치위치는 /usr/share/cacti 로 가정한다. 별다른 언급 없이 경로명이 나오면 이 디렉토리가 홈 디렉토리임
    • 예) rra/ : /usr/share/cacti/rra/ 를 뜻함

패키지 설치

  • fedora, debian 등에 패키지가 있음
  • 패키지 설치 시 보안문제로 ping 기능 등이 빠져있음. 설정 파일 위치도 배포본 규칙을 따름.
  • 페도라 패키지로 운영시 모든 기능을 쓸 수 없으므로 따라서 여기에서 다루지 않는다.

소스설치

cacti 설치

  1. 관련 패키지를 설치한다. cacti를 패키지로 설치하고(설치 경로는 /usr/share/cacti) 그 위에 소스 덮어씌우는게 제일 편하다.; 패키지 설치시 log/ 디렉토리가 /var/cacti/ 로 링크가 걸려있으므로 편한데로 처리할 것(링크 삭제 후 덮어씌우던지, 그냥 덮어씌우던지..)
    1. 패키지로 설치시
      1. yum -y cacti rrdtool net-snmp-utils mysql-server mysql-client apache php php-snmp php-mysql
    2. 패키지를 소스로 덮어씌운 뒤 안 쓰이는 파일은 다음과 같다.
      • /etc/cacti/db.conf
  2. cacti 다운로드 http://www.cacti.net/downloads/cacti-0.8.7b.tar.gz
  3. 적당한 위치에 압축을 푼다. 웹에서 접근 가능하도록 설정
    1. /var/www/ 밑에 압축을 푸는 방법
    2. 적당한 위치에 풀고(예를 들면 /usr/share/cacti/ )
      1. 아파치 설정(패키지 설치를 했다면 /etc/httpd/conf.d/cacti 파일을 다음과 같이 수정)
        1. #
          # Cacti: An rrd based graphing tool
          #
          Alias /cacti    /usr/share/cacti

          <Directory /usr/share/cacti/>
                 Order Deny,Allow
          #       Deny from all
          #       Allow from 127.0.0.1
                 Allow from all   # 외부에서 접근 가능하도록 설정
          </Directory>

  4.  mysql 설정
    1. mysqladmin -u root ‘root mysql 패스워드
    2. mysqladmin -u root -p create cacti
    3. mysql -u root -p cacti < /usr/share/cacti/cacti.sql
    4. mysql -u root -p mysql
    5. GRANT ALL ON cacti.* TO cacti IDENTIFIED BY ‘패스워드‘;
    6. flush privileges;
  5. cacti mysql 설정
    1. include/config.php 에서
      1. $database_username과 $database_password를 적절히 수정
  6. OS cacti 계정 생성
    1. 패키지 설치시 자동 생성.
    2. icmp ping 을 보내려면 cacti를 root 권한으로 실행해야 하므로 mysql 접속만 제대로 되면 신경 안 써도 되는 부분.
  7. 한글 출력
    1. 한글 지원하는 트루타입 폰트(ttf)를 /usr/share/rrdtool/fonts/ 에 추가한다. cacti Settings – paths – RRDTool Default Font Path에 해당 폰트 경로를 적어놓아야 한다. (예 : /usr/share/rrdtool/fonts/gulim.ttf )
    2. include/config.php 에 다음과 같은 내용을 추가한다. 안 하면 그래프의 한글이 깨져 나온다.
      1. putenv(“LANG=ko_KR.UTF-8”);
    3. 그러나, 위 조치를 취해도 Management – Data Sources 등에서 한글이 깨지는 경우가 있다. config.php include를 하지 않는 것도 아닌데.. 원인 파악 후 수정 예정
  8. 스케쥴러 등록 : 패키지로 설치했을 경우 /etc/cron.d/cacti 파일이 생성되어있다.
    1. 주석처리 되어있으니
      1. service crond reload
    2. icmp ping을 쓰고 싶으면 root 권한으로 실행해야 한다.
      1. */5 * * * *     cacti    /usr/bin/php /usr/share/cacti/poller.php > /dev/null 2>&1
      1. */5 * * * *     root    /usr/bin/php /usr/share/cacti/poller.php > /dev/null 2>&1
      1. 로 변경할 것.
  9. 최종점검
    1. 소유자 설정 : 그냥 압축을 풀었으면 파일 소유자가 root:root가 되어있을 수 있다.
      1. 소유자를 cacti 계정 만들었으면
        1. chown -Rf cacti:apache ./
    2. 권한 설정 : rra 권한 설정을 하지 않으면 그래프가 자동으로 생성 안 됨. 606 이어도 될거 같은데 확실하게 동작하는 것을 확인한 것은 777 권한이었음.
      1. chmod -Rf 777 rra/

cacti 설정

  1. http://설치호스트주소/cacti 로 접속
    1. cacti01.jpg
  2. 새로 설치
    1. cacti02.jpg
  3. 경로 설정 : 기본으로 적힌 값으로 전부 FOUND가 떠 있으면 다음으로 넘어간다. NOT FOUND가 떠 있는 항목은 해당 파일 위치를 찾아 적어서 FOUND
    표시가 나오도록 할 것.
    1. cacti03.jpg
  4. 첫 로그인
    1. User Name : admin
    2. Password : admin
    3. 첫 로그인을 하면 비밀번호를 바꾸라고 나온다. 비밀번호로 사용할 문자를 두번 입력하면 cacti 메인 화면으로 들어감.

플러그인 사용

  1. 모니터링 값이 특정 임계값 이상/이하로 변화시 메일을 전송하거나, 소리를 내주는 각종 유용한 플러그인이 있음.
  2. 이 문서에서 PIA의 설치는
    1. http://cactiusers.org/wiki/PluginArchitectureInstall
    2. http://cactiusers.org/forums/viewtopic.php?t=1355&highlight=install+steps 를 참조했다.
  3. PIA down http://cactiusers.org/downloads/cacti-plugin-arch.tar.gz
  4. 위 파일을 받아 압축을 풀면 cacti-plugin-arch 디렉토리에 cacti-plugin-0.8.7b-PA-v2.0.diff 가 있음. cacti 디렉토리로 옮긴 후 다음의 패치를 실행.
    1. patch -p1 -N < cacti-plugin-0.8.7b-PA-v2.0.diff
  5. 2008/03/13 11:10:50 현재, cacti 0.87b에 PIA 2.0 적용 후 include/plugins.php를 수정해야함. 안 그러면 기본 경로에 cti/ 가 들어가 이미지가 깨지고 정상적인 동작을 하지 않음.
    1. — include/plugins.php.orig 2008-02-25 09:47:35.000000000 -0800
    2. +++ include/plugins.php 2008-02-25 09:48:12.000000000 -0800
    3. @@ -32,13 +32,7 @@
    4. }
    5. }
    6.  
    7. -if (isset($_SERVER[‘DOCUMENT_ROOT’]) && isset($_SERVER[‘REMOTE_ADDR’])) {
    8. – $config[‘url_path’] = substr(__FILE__, strlen($_SERVER[‘DOCUMENT_ROOT’]), strlen(__FILE__) – strlen($_SERVER[‘DOCUMENT_ROOT’]) – strlen(‘include/plugins.php’));
    9. – db_execute(“REPLACE INTO settings (name, value) VALUES (‘url_path’, ‘” . $config[‘url_path’] . “‘)”);
    10. -} else {
    11. – $config[‘url_path’] = db_fetch_cell(“SELECT value FROM settings WHERE name = ‘url_path'”);
    12. -}
    13. +$config[‘url_path’] = ‘/cacti/’;
    14. define(‘URL_PATH’, $config[‘url_path’]);
    1. ‘표시는 지우고 ‘+‘표시된 줄은 추가하면 된다. if 문 블럭 삭제하고 $config[‘url_path’] = ‘/cacti/’; 추가하라는 소리임.
  6. 사용하고자 하는 플러그인을 plugins 디렉토리에 풀어놓는다. 이 때, 플러그인 디렉토리명을 만들고 그 안에 해당 플러그인의 파일을 넣어두면 된다. 예를 들어 manage 플러그인을 사용할 경우,
    • plugins/manage/
    • 디렉토리에 풀어놓으면 된다. tar.gz 형식 플러그인 파일이면 그냥 압축풀면 된다.
  7. include/config.php 에 다음의 내용을 추가한다.
    1. $plugins = array();
    2. $plugins[] = ‘settings’;
      $plugins[] = ‘thold’;
      $plugins[] = ‘update’;
    1. plugins/ 디렉토리 밑에 있는 플러그인들의 디렉토리명을 적어놓으면 됨. 위의 예는 settings, thold, update 등의 플러그인을 설치했다는 의미이다.
  8. 7번까지 한 후 cacti를 웹 브라우져에서 열어보면 별다른 변화가 없다. User Management 에서 아무 사용자를 선택해(여기서는 admin) Realm Permissions 항목을 보자.
    1. 플러그인 설치 후 User ManagementRealm Permissions

      cacti05.jpg

    2. 새로 설치한 플러그인에 대해 권한을 줘야 한다. 권한을 주고 나면 제일 위 탭 표시 부분에 console, graphs 이외에 각 플러그인의 탭이 보일 것이다.

주요 플러그인 설치

  1. thold : 모니터링 값에 이상이 있을 때 메일로 알림. settings 플러그인을 먼저 설치해야 쓸 수 있다.
    1. cacti 플러그인 thold 실행화면

      cacti07.jpg

  2. manage : 모니터링 디바이스를 아이콘으로 표시해 준다. 이상이 있으면 소리를 내어 알려줌(웹 브라우저에 미디어 플레이어 등의 설정이 되어있어야 하지만. 윈도에서 IE는 그냥 된다. FireFox 등은 퀵타임플레이어를 설치하라는 등의 안내가 나옴).
    1. cacti 플러그인 monitor 실행 화면.

      cacti06.jpg

thold 설치

  • 소스가 잘못되어 있는건지, 다른 이유가 있는지 모르겠으나 2008/03/17  현재 plugins/thold/check-thold.php 수정이 필요함.
  1. plugins/thold/check-thold.php 에서 함수 선언부분 function logger(… 을 전부 지운다. plugins/thold/thold-functions.php 에 해당 함수를 선언해두었기 때문에 그대로 두면 충돌이 나서 실행 안됨.
  2. plugins/thold/check-thold.php 에서 <?php 이후 주석이 끝나고 바로 exit; 가 나온다. 이러면 이 스크립트는 실행이 안되는 것과 마찬가지.  ?> 앞으로 옮겨놓자.
    1.                                         fwrite($handle, $logout);
                                             fclose($handle);
                                     }
                             }
                     }
             }
      }
    2. exit;
    3. ?>

관리 대상 등록하기

요구사항

  • 관리 대상에서 snmpd를 지원해야 하며, 정보 공개 설정을 해두어야 한다. 이건 snmpd 문서를 참조. 이 문서는 snmp 클라이언트에서 모든 정보를 받아올 수 있다고 가정한다.

장치 추가하기

  1. console – Management – Devices – Add
    1. add 위치

      cacti08.jpg

  2. Devices [new]
    1. Description : 장치에 대한 설명. 예) ‘스위치’, ‘라우터’, ‘내 컴퓨터’
    2. Hostname : 장치 주소. hostname 혹은 IP 주소를 적는다.
    3. Host Template : 장치에 근접한 템플릿을 선택. 잘 모르겠으면 ‘Generic SNMP-enabled Host’ 등을 선택
    4. Notes : 장치에 대한 설명을 길게 적을 수 있음.
    5. Disable Host : 해당 장치에 대한 모니터링을 끈다.
    6. Monitor Host : monitor 플러그인을 설치하면 나타나는 항목. 체크하면 monitor 탭에서 해당 장치를 볼 수 있다.
    7. Down Host Message : ..이게 무슨 플러그인을 설치해야 나오는거더라(thold로 추정).. 여하간 기본으로는 없음.
    8. Downed Device Detection : NONE, Ping and SNMP, SNMP, PING 중에 선택.
    9. Ping Method : 핑 종류를 선택. icmp, tcp, udp 핑이 있다.
      1. 경험상 udp 핑은 방화벽에 막히는 경우가 있었다.
      2. icmp 핑은 cacti poller를 root 권한으로 실행해야 한다.
    10. Ping Port : 기본값은 23
    11. Ping Timeout Value : 응답을 언제까지 기다리나. 기본값은 400ms
    12. Ping Retry Count : Timeout 되었을 때 몇 번 더 시도하나. 기본값은 1
    13. SNMP Version : Version 1/2/3 중에 선택. 보안상 1은 안 쓰는게 좋고, 2가 일반적으로 널리 쓰인다. 3은 보다 더 보안 강화된..거 같음. SNMP 부분은 잘 모르니 패스.
    14. SNMP Community : 대상 서버 snmpd 커뮤니티값과 일치해야 정보를 긁어올 수 있다.
    15. SNMP Port : 대상 호스트의 SNMP 포트값. 기본은 161.
    16. Maximum OID’s Per Get Request : spine(바이너리 poller) 사용시 적용되는 값이라는 것 같다.
  3. 정상적으로 등록되었으면 Devices 화면에서 볼 수 있다. Status에 Up/Down/Unknown 등으로 표시되는데 이 표시는 갱신이 늦을 수 있으니 좀 기다리자.
    1. 성미급한 사람이라면 장치 이름을 클릭해 에디트 모드로 들어간다.
    2. 가장 밑에 Associated Data Queries 테이블을 보면 SNMP -Interface Statistics 가 있다(없을 수도 있고).
      1. Verbose Query 클릭
    3. 페이지가 리로딩 되는데 Data Query Debug Information 테이블이 생겼을 것이다. 내용을 확인해보자.
      1. 정상적으로 가동하는 장비의 경우 가장 윗쪽 장비명 아래에 다음과 같이 갱신되니 이걸로 확인하는게 더 빠를 수도.
        1. SNMP 쿼리에 대한 응답을 정상적으로 받았을 경우.

          cacti09.jpg

      2. 위 스샷에서 오른쪽에 보이는 Create Graphs for this Host 를 클릭하면 쉽게 그래프를 추가할 수 있다. 그건 다음 절에서 설명하겠다.

그래프 등록

  1. 그래프를 추가하고 싶으면 Devices 등록을 먼저 한 후 장치 이름을 클릭해 Edit 화면으로 들어간다.
  2. Create Graphs for this Host 클릭
  3. Graph Templates와 Data Query 테이블이 있는데, SNMP 지원하는 장비는 Date Query 쪽에 여러 항목이 보인다. 항목을 클릭 후 페이지 하단의 Select a graph type 중에서 적절한 타입을 선택 후 create.
  4. 페이지 좌측 메뉴에서 Graph Management를 클릭해 좀 전에 생성한 그래프 Name 을 클릭.
    1. 화면 오른쪽 위 Turn Off Graph Debug Mode. 를 클릭.
    2. 다음은 등록한지 좀 된(..) 그래프인데, 아래와 같은 그래프가 나오면 된다. 오른쪽 하단에 RRDTool Says: Ok 가 뜨면 된다.

      cacti10.jpg

    3. 만일 안 된다면 rra/ 디렉토리 소유자/권한 문제인 경우가 있으니 확인 할 것.
    4. 그래프는 15분 정도(poller 세 번 정도 실행되는 시간) 기다려야 그려지니 기다릴 것.

이 글은 스프링노트에서 작성되었습니다.

네트워크 모니터링 소프트웨어 cacti와 플러그인 사용하기

좀 더 가다듬고 공개하려 했는데 귀찮아서.. cacti 짱!

이 글은 cacti를 통해 모니터링을 할 때 각종 plugin을 붙여서 사용할 경우에 대해 적었습니다만, 저도 아직 완전히 설정한게 아니라서요.

1. http://cacti.net/
2. http://cactiusers.org/

cacti에 대한 모든 것이 저 두 곳에 있다.

일단 간략히 적으면

1. 압축풀면 땡, 패키지를 쓰는 것도 좋지만 페도라 패키지를 사용해 설치했더니 보안상의 문제인지 뭔지 모르겠으나 host alive를 ping 때려서 확인하는 기능이 삭제되어있다. 소스 설치 하자. 어차피 이런 소프트웨어는 소프트웨어로 설치하나 패키지로 설치하나 큰 차이 없다.

2. mysql 설정 알아서 하시고. 나는 phpMyAdmin에서 cacti 사용자를 만들면서 같은 이름의 데이타베이스를 만들었고, 인코딩은 페도라 5의 기본값인 latin1_swedish_ci로 했는데 utf8_general_ci로 해도 상관 없는듯(아니 더 권장되려나?)

2.5 rra 디렉토리를 777로 맞추니까 그래프 생성 잘 된다. cacti 권한으로 파일을 못 써서 일일이 debug 모드로 확인해가며 rra 수동으로 생성했던 굴욕의 나날..

3. 보면 rrd 그래프에서 한글이 깨지는데
include/config.php 에

putenv(“LANG=ko_KR.UTF-8”);

를 추가하면 된다.

4. 한글 폰트를 업로드 해야한다. /usr/shaare/rrdtool/fonts/ 에 업로드하자. 참고로 윈도 XP에서 돋움체 등을 쓰는데, 이 폰트는 폰트 모임인 ttc라는 확장자이고, 이걸 프로그램을 써서 ttf로 나눈 다음에 업로드해서 쓰면 되기도.. 하지만 저작권 문제가 걸리니까 백묵 폰트와 같은 공개 ttf를 받아다 쓰자.;

5. 그래도 한글 깨지는 부분이 있다. data source 메뉴등은 깨진다. 어쩔 수 없다 대충 살아라. Devices나 다른 메뉴는 안 깨지는데 왜 저기만 저러는지..

6. 플러그인 사용. 그냥 플러그인 받아다 쓰면 안된다. PIA (Plugin Architecture)라는 패치를 써야한다. 문제는

    2008/03/13 11:10:50 현재, cacti 0.87b에 PIA 2.0 적용 후 include/plugins.php를 수정해야함.

— include/plugins.php.orig 2008-02-25 09:47:35.000000000 -0800

+++ include/plugins.php 2008-02-25 09:48:12.000000000 -0800

@@ -32,13 +32,7 @@

}

}

-if (isset($_SERVER[‘DOCUMENT_ROOT’]) && isset($_SERVER[‘REMOTE_ADDR’])) {


$config[‘url_path’] = substr(__FILE__,
strlen($_SERVER[‘DOCUMENT_ROOT’]), strlen(__FILE__) –
strlen($_SERVER[‘DOCUMENT_ROOT’]) – strlen(‘include/plugins.php’));

– db_execute(“REPLACE INTO settings (name, value) VALUES (‘url_path’, ‘” . $config[‘url_path’] . “‘)”);

-} else {

– $config[‘url_path’] = db_fetch_cell(“SELECT value FROM settings WHERE name = ‘url_path'”);

-}

+$config[‘url_path’] = ‘/cacti/’;

define(‘URL_PATH’, $config[‘url_path’]);

7. 패치 깔고 나면 이전에 없던 plugins 디렉토리가 있을거다 거기 플러그인을 디렉토리채로 풀어놓는다.

8. include/config.php에 plugins 변수에 배열로 디렉토리 이름을 넣는다

$plugins = array();
$plugins[] = ‘manage’;
$plugins[] = ‘monitor’;

9. User Management에서 사용자명을 눌러서 권한 설정에서 좀 전에 설치한 플러그인을 볼 수 있도록 체크한다.

10. 그리고 해피엔딩.. 이면 좋겠지만 monitor 이외의 플러그인이 한 번에 설치되는 꼴을 못 봤다. 대표적으로 어떤 측정값이 하향 상향을 넘으면 메일로 경고해주는 플러그인인 thold는 소스 수정을 해줘야 했다. 안 그러면 poller..어쩌고.. ran 어쩌고란 메시지가 나온다.
plugins/thold/check-thold.php
plugins/thold/thold-functions.php
에 보면 logger 란 함수가 똑같이 선언되어있다. 어느 한쪽을 주석처리하든, 지워라.

그러면 cacti의 poller가 실행되고 check-thold.php가 실행되는데.. 안되면 걍 crond에 넣던지;

11. 그리고.. plugins/thold/check-thold.php 를 잘 보면 exit가 소스 가장 위에 있다. 이거 왜 이런지 모르겠는데 파일 끝 부분으로 옮겨주자.;

cacti의 플러그인을 덕지덕지 붙여넣으면 nagios 부럽잖다는 사실을 깨달았는데, 삽질을 좀 많이 해야한다.

12. thold 사용할 때는, thold에 등록할 템플릿을 먼저 만들고, 관련된 템플릿으로 그래프 그리고 있는 디바이스로 가서 그래프 만들기 –  자동으로 만들기를 하면 대충 된다..

Threshold Templates – Devices – Create Graphs for this Host – Auto-create thresholds

U3 소프트웨어 사용법

U3 뽑을 때
1. 런치패드에서 Eject 클릭
    – 그냥 뽑거나
    – 윈도에서 하드웨어 안전하게 제거하기를 쓰지 않습니다.
2. CD롬 드라이브와 이동식 저장소를 제거해야 하거든요. 편하게 Eject 누르면 실행되어있는 관련 프로그램도 종료해줍니다(RoboForm, Avast, WinRAR…)
3. 헝굴리안의 제보에 의하면 U3를 한참 읽고 있을 때 Eject를 누르면 ‘한참 읽고 있는데, 그대로 종료할래?라고 묻는 창에서 어 그래 종료할게를 눌러 종료한 후에 다시 꽂으면 USB 인식이 안되고 리붓해야 인식 되는 경우가 있다고 합니다.

WinRAR
1. 실행하면 WinRAR 창이 뜬다.
2. 창을 닫아도 트레이에 남아있습니다. 이걸 닫지 않는 한 계속 쓸 수 있습니다.
3. 탐색기 등에서 우클릭하면 WinRAR 관련 메뉴가 있습니다. 😀
4. U3랑 상관없이 2기가 이상 파일을 압축할 때 zip 으로는 못하고 rar로 압축해야 합니다. 알집도 못하고… 빵집만 된다 합니다.

SecureCRT
1. 로컬 컴퓨터에서 사용중이었을 경우 설정을 가져올 것인지 물어봄. 그 외에 로컬에서 실행할 때와 U3에서 실행할 때 사용법은 똑같음.
2. 실행 후 접속하기..

더 알게 되는거 추가하겠음.

터미널 에뮬레이터

사용자 삽입 이미지
xshell : 80,000
SecureCRT : $139
putty : 무료, 소스 공개
– 가격은 한 카피 구매시. 대량 구매, 교육기관 구매시 할인혜택이 있음.

몇 번 실행해보고 대충 쓴 감상입니다.

1. 기능 : xshell > SecureCRT > putty
xshell과 SecureCRT간의 큰  차이점은 없는듯 하다. 주요 기능은 왠지 비슷비슷하다. 탭으로 여러개의 세션을 열어놓고 명령창으로 모든 세션에 한 번에 입력이 가능한 점, SFTP 지원 등.

putty는 한 세션이 닫기면 창이 닫기고(기본설정)하기 때문에 여러곳 접속할 때 조작이 다소 귀찮아진다. 작은 프로그램들을 모아서 조합하여 사용하는 유닉스/리눅스 철학을 따라서 그런듯. 이걸 통합 관리하는 소프트웨어(PuTTY Connection Manager)가 있긴 한데 불편하더라.

public key 던가.. 여하간 키 생성 기능, SFTP 등은 세 프로그램 모두 지원하고 있다.

2. 초기 설정
설치하고 바로 사용했으면 좋겠지만.. 그냥 쓰기엔 문제가 있다.
내가 뭔가 설정을 잘못한건지 기본설정인지 모르겠으나, xshell과 SecureCRT 기본으로 VT100 터미널 에뮬레이션 모드를 쓰는거 같은데 이럴 경우 ls 명령어 썼을 때 컬러가 안 나온다. 터미널 에뮬레이션을 xterm 으로 바꿔야 한다.

그리고 한글 출력/입력이 잘 안되는데 로케일 문제일 수 있으나 요즘은 UTF-8 로 설정해놓기 때문에 폰트 문제인 경우가 많은것 같다. 폰트 역시 VT100이 기본이던데 한글 포함된 다른 폰트를 쓰던지, 시스템 글꼴 변경하기 – 영문전용폰트와 한글폰트 결합하기 등을 시전하도록.

putty는.. 여기서 배포하는 버전을 사용하면 그냥 사용하면 된다. 메뉴의 유니코드 전환을 사용하거나 ‘수신데이터의 문자셋 변환’을 UTF-8 등으로 하면 된다.

3. 결론
일단 나는 putty를 쓰고 있다. 이번에 이것저것 기웃거려 봤는데…
일단 기능적, 편의성, 가격에서 xshell이 낫다. 외국에선 xshell도 나름 인기가 있는거 같은데 되려 국내에서 인지도가 낮아서 국내 관리자들은 SecureCRT을 쓰는듯. 회사에서 터미널 소프트웨어 정품 구매할 일이 있으면 xshell을 적극적으로 고려해보도록.

다소 불편함이 있더라고 putty 익숙해지면 좋다. 스크립트나 단축키를 넣을 수 없지만 찾아보면 방법이 있을지도 … 그러나 순수 putty 이외에 별도의 프로그램을 붙여서 썼더니 프로그램 안정성이 크게 낮아지는 경험을 했다.

putty를 쓰면 다른 잡다한 기능을 쓰기 위해 학습할 일 없이 터미널 접속해서 할 일만 할 수 있으니 좋다. 상용 프로그램을 쓰는건 반복되는 작업에서 좀 더 편의를 추구하기 위해서랄까. 전통있는 상용 터미널 에뮬레이터들이 터미널 접속 이외에 기능이 잡다하게 많이 들어간다는건 그만큼 관리자들이 필요로 하는 기능이라는 반증일테니까.

4. 그밖에
NetTerm : 이.. 이거! 왠지 많이 들어본 프로그램이고 눈에 익다 싶었더니 군대 있을 때 쓰던거..!!
zterm : 간단한 텔넷 프로그램. 국산. ssh로 넘어가는 시기에 빠르게 대처하지 못하고 사양길에 접어듬. ssh1을 지원하긴 하는데 요즘 보안 문제로 ssh2를 쓴다. 브레인즈 스퀘어 연구소장이 취미삼아 만든거 같은데 업데이트는 요원한듯 -_-;;;

가상화 소프트웨어 VMware / Virtual PC 비교

VMware Server / Virtual PC 2007 Beta
사용자 삽입 이미지
대표적인 가상화 소프트웨어 VMware와 VirtualPC. 설치파일 비교만 해봐도 전자가 200메가에 육박하는 용량에 설치 및 실행해서 느리다는 인상이 다소 있다. VirtualPC는 19메가 정도. 실제 Guest 머신에서 성능차는 … VMware에는 데비안 VirtualPC는 일어 WindowsXP 를 쓰고 있기에 성능차이를 말하기가 어렵다.

VMware 설치파일 용량이 큰 이유는 VMware tools의 ISO 파일이 포함되어있다. 각종 운영체제별로 준비되어있고, VirtualPC는 …어떻게 깔았더라? 그냥 온라인으로 깔던가?

두 소프트웨어가 똑같이 가상 머신에 OS를 설치하고 Tool을 설치해야 한다. 입력장치(특히 마우스)는 하나인데 OS가 두개가 돌아가니 Guest 머신에서 작업하다가 Host 머신으로 돌아가려면 alt-tab이나 윈도키로 갈 수가 없고, 특수한 핫 키를 눌러야 한다. ctrl-alt 나 오른쪽 alt 같은… 이런 불편을 해소할 수 있다. Guest 머신에서 작업하다가 그냥 마우스 포인터로 Host 창을 클릭하면 끝. 전체화면일 경우는 좀 골때리기 때문에 …가급적 Guest 머신은 Host 머신해상도보다 작게 설정하길 권장한다. 여러 편의성 면에서도 – 일단 사용하는 사람이 자기가 어느 머신을 쓰는지 헷갈리니까.

내가 가상화 소프트웨어를 사용하는 이유는 딱 두가지이다.

  1. 리눅스 쓰기 위해 부팅하는게 귀찮아서 ; 윈도로 한 번 부팅하면 재부팅하지 않는다.
  2. 일윈 사용을 위해 ; 역시 로케일 바꿔서 하기 싫다. 일윈? 특수목적을 위해 쓴다.

HDD와 램만 충분하다면 누구나 쉽게 사용할 수 있기 때문에 한 번 재미 삼아 해볼만하지 않나 싶다. 네트워크도 잘 된다. 다만 외부에서 Guest 머신으로는 직접 연결하기 어렵다. IP가 두개라면 Host / Guest 에 각각 할당하면 되는데 그렇지 않으면 Host 아이피로 연결해야 하고 포트 포워딩을 해줘야 한다. Host 8888 포트로 오는 연결을 Host에서 Guest 80번 포트로 포워딩 하는… 그래서 수많은 서비스들을 포트포워딩 하려면 VMware에서 설정해주고 윈도에서 방화벽 열어주고 하려니 좀 짜증나서 그냥 때려침.

기본 상식

  • 가상화 소프트웨어 : 응용프로그램. 소프트웨어적으로 가상 하드웨어를 구현하여 그 가상 하드웨어에 OS를 설치. 해당 하드웨어는 Host에 파일로 저장되며, 그 파일만 복사하면 Guest를 통째로 다른 Host의 Guest로 그대로 쓸 수 있다.
  • Host 머신 : 가상화 소프트웨어가 설치되는 컴퓨터.
  • Guest 머신 : 가상화 소프트웨어 안의 운영체제.
  • VitrualPC 돌리는 중에 VMware 실행하니까 VMware가 충돌 일으키면서 종료됨… 가상화 소프트웨어 동시에 못 돌리나? OS 세 개가 돌아가는 간지를 연출하고 싶었는데

– 별다른 설정 없이 바로 사운드 출력이 가능한 Virtual PC 2007이 좋게 느껴진다. ; VirtualPC에 리눅스를 깔았을 때 잘 되었으리란 보장은 없다. 다만 사블16가 처음부터 가상 하드웨어 목록에 있다.
– Virtual PC의 경우 윈도-윈도 사용시 파일 공유가 매우 간편.
– Virtual PC가 좀 더 가볍게 돌아가는거 같긴 하다. 윈도에서 윈도를 쓰기 때문에?
– 애초에 VMware는 리눅스/윈도/유닉스 등등을 지원하고 VirtualPC는 윈도에서만 실행되는 차이가 있기 때문인지도.

FireFox 2.0.0.3 현재 설정

내 설정- default

만든 시각: Sat Apr 07 2007 00:55:19 GMT+0900
사용자 에이전트: Mozilla/5.0 (Windows; U; Windows NT 5.1; ko; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3
빌드 ID: 2007030919

쓰고 있는 확장 기능: [29]

안 쓰는 확장 기능: [3]

모든 확장 기능: 32

설치한 테마: [6]

설치한 플러그인: (10)

  • 2007 Microsoft Office system
  • DivX® Content Upload Plugin
  • DivX® Web Player
  • IE Tab Plug-in
  • Java(TM) Platform SE 6
  • Microsoft® DRM
  • Mozilla ActiveX control and plugin support
  • Mozilla Default Plug-in
  • Shockwave Flash
  • Windows Media Player Plug-in Dynamic Link Library

Window Vista Business K x64 사용기

비스타를 쓰고 있습니다.

일단 설치가 꽤나 빠르고 입력할게 처음에만 몰려있어서 간단하게 설치가 가능했고, 처음부터 와이드 해상도를 지원하며 HDD NCQ을 지원합니다(NCQ 부분은 불확실한데, 바이오스 설정 안 바꾸고 그냥 잘 되는거 봐선 지원하는것으로 보임).

에어로 글래스… 및 기타 인터페이스는 기존 컴퓨터 인터페이스에 익숙해진 사람들에겐 다소 당혹스러울 정도입니다. 메뉴부분을 없애버린 점이라든가(alt 키를 눌러야 나옵니다)… 윗 디렉토리로 가는 버튼도 없어졌고요. 경로명 중에서 클릭하면 되지만 예전 탐색기의 무의미한 주소창을 쓰던 사람들은 생각지도 못한 사용법이네요.

버그가 몇가지 있습니다.

  • 탐색기(explorer.exe)에서 일어 특수문자가 들어간 파일 이름을 넘겨받으면 탐색기에서 오류가 나면서 다시 시작합니다. winny2 의 cache 파일 이름같은걸 지울 때도 다운되는거 봐서는 …-_-
  • 덕분에 cmd 창에서 파일 삭제나 이동을 한 적도 있습니다.
  • 가끔 탐색기가 오류를 내고 터미네이트 되고 나서 다시 실행이 안될 때가 있습니다. 이 경우 테스크 바는  물론 바탕화면의 아이콘들이 다 사라지며 윈도키를 눌러 사용하는 단축키가 먹통이 됩니다. 이럴 때는 ctrl-alt-esc를 눌러 작업관리자를 실행- 파일- 새 프로세스 실행 – explorer.exe 를 실행하면 복구됩니다.
  • 가로 한 화면에 들어오지 않는 긴 파일명이 있는 경우 키보드 위 아래로 이동하면 화면이 오른쪽으로 스크롤 되어버리며 파일명을 볼 수가 없게 됩니다. F5키로 리로드 하는 수밖에 없습니다. 이게 긴 파일명일 경우 화면 넘어가는 부분을 보여주기 위해 오른쪽으로 한 화면 넘어가는건데 이게 어중간해서 파일 끝부분(확장자도 안 보임)의 선택상자 끝만 보인다는게 문제.

그 외 문제점

  • VMware Server 1.01, Workstation 6.0 Beta 둘 다 설치되다가 롤백되어 설치 취소됨. 원인 불명.

프로그램 설치 디렉토리는
c:program files
c:program files(x86)
으로 x32 x64 프로그램을 구분하게 되어있습니다. 전 이걸 자동으로 구분해서 설치하는줄 알았는데 64비트 프로그램들 설치할 때 기본 경로가 c:program files(x86) 가 나온다고 합니다(sleepnot 님 제보). 결국 사용자가 일일이 구분하면서 설치를 해줘야 하죠.

32비트, 64비트 프로그램은 다 잘 돌아갑니다. 리눅스는 64비트 커널에서 32비트 응용프로그램이나 라이브러리를 포기하고 그냥 컴파일을 다시 해주는 수밖에 없다는 이야기를 들었는데 대단하다고 할지… 하드웨어 드라이버만 신경 써주면 다른건 큰 문제가 없습니다.

호환성 문제가 다소 있긴 한데… VMware server가 설치 다 되고 나서 롤백되어 삭제되어버리는 문제가 있고(player는 잘 깔림). ActiceX 프로그램들이 제대로 안 돌아가는게 좀 있습니다.

3D 그래픽 게임은 성능저하가 심각하네요. 20-30프레임이 나오기도 하고, Punk Buster 쓰는 프로그램에선 알 수 없는 운영체제라면서 킥해버립니다.

현재 Vista – XP 파일 공유를 못하고 있습니다. 그래서 Virtual PC 2007에서 XP 를 깔아놓고 거기로 공유한 다음에 복사하고 있네요. Virtual PC 굉장히 좋더군요. 파일 드래그&드랍으로 복사될줄은 몰랐어요.