티스토리 뷰
RRD
Round Robin Database의 약자로, 통계 정보 혹은 통계 그래프가 필요한 주기성을 가진 데이터들을 저장하고 필요할 때, 데이터를 가져와 가공하여 새로운 정보를 만들어 내거나, 그에 해당하는 그래프를 편리하게 그릴 수 있도록 고안된 데이터베이스의 일종이다. 라운드 로빈이라는 말처럼 디비를 생성할 때, 저장할 주기를 설정하고 해당 주기만큼의 데이터만을 유지한다는 것 이 특징이다. 이런 이유로 인해서 데이터베이스의 파일 사이즈가 처음 생성할 때의 데이터베이스 사이즈로 유지가 된다.
트래픽 디비 생성
rrdtool create [rrd_name] --step 300 \
"DS:input:COUNTER:600:U:U" \
"DS:output:COUNTER:600:U:U" \
"RRA:AVERAGE:0.5:1:315360" \
"RRA:AVERAGE:0.5:6:52560" \
"RRA:AVERAGE:0.5:24:13140" \
"RRA:AVERAGE:0.5:288:1095" \
"RRA:MAX:0.5:1:315360" \
"RRA:MAX:0.5:6:52560" \
"RRA:MAX:0.5:24:13140" \
"RRA:MAX:0.5:288:1095"
--step 300
데이터 수집 주기로 300초 설정
"DS:input:COUNTER:600:U:U"
Data Source 정의, input 변수 지정, COUNTER 타입 값으로 지정, 600초 heart beat 지정, 최소 리미트 값 지정 U(unknown), 최대 리미트 값 지정 U(unknown)
"RRA:AVERAGE:0.5:1:315360"
Round Robin Archive 정의, AVERAGE 함수 사용, 만약 U(unknown) 값일 경우에 50% 되는 값을 사용, 1개의 값(5분 단위 값)을 315360 개의 값의 평균으로 사용
RRD의 데이터 저장 포멧
rrd 트래픽 정보 저장
rrdupdate [rrd_name] N:[traffic_in]:[traffic_out]
N
현재 시간
[traffic_in]
스위치 정보의 out 트래픽 누적 값(옥텟)
[traffic_out]
스위치 정보의 in 트래픽 누적 값(옥텟)
RRD 트래픽 데이터 조회
현재를 기준으로 마지막에 제정된 트래픽 정보 조회(xml)
rrdtool xport \
--start `date +'%s'`-300 \
--end `date +'%s'` \
DEF:invalue=[rrd_name]:input:AVERAGE \
DEF:outvalue=[rrd_name]:output:AVERAGE \
CDEF:indata=invalue,8,* \
CDEF:outdata=outvalue,8,* \
XPORT:indata:"in" \
XPORT:outdata:"out"
RRD 트래픽 그래프 생성
현재 시간을 기준으로 1일 트래픽 그래프 생성
rrdtool graph traffic_graph.gif \
--start `date +'%s'`-86400 \
--end `date +'%s'` \
--step 300 \
--vertical-label="Bits per second" \
--x-grid "HOUR:1:HOUR:1:HOUR:2:0:%H" \
--slope-mode \
--rigid \
--alt-autoscale-max \
"DEF:inoctets=[rrd_name]:input:AVERAGE" \
"DEF:outoctets=[rrd_name]:output:AVERAGE" \
"CDEF:inbits=inoctets,8,*" \
"CDEF:outbits=outoctets,8,*" \
"AREA:inbits#0000ff:In" \
"LINE1:outbits#008000:Out\l"
참고 사이트
'엔지니어링' 카테고리의 다른 글
Linux 호스트네임 네트워크 재시작 없이 변경하기 (0) | 2020.03.06 |
---|---|
vmstata로 부하 체크 (0) | 2020.03.06 |
keepalived 를 통한 서버 이중화 (0) | 2020.03.05 |
SQL 중복 데이터 카운트 (0) | 2020.03.05 |
Ansible 커스텀 모듈 개발 (0) | 2020.02.26 |
댓글
warpmemory
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
페이지
TAG
- code
- deview
- example
- engineering
- Module
- Python
- Windows
- 이슈처리
- 번역
- 외부링크
- Ansible
- 예제
- RESTful
- limits
- httpd
- monitoring
- client
- mysql
- File
- PowerShell
- command
- check
- MariaDB
- error
- configuration
- apache
- 코드
- Web
- Linux
- 명령어
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함