InglesPransesEspanyol

OnWorks favicon

rrd-beginners - Online sa Cloud

Patakbuhin ang mga rrd-beginners sa OnWorks na libreng hosting provider sa Ubuntu Online, Fedora Online, Windows online emulator o MAC OS online emulator

Ito ang command rrd-beginners na maaaring patakbuhin sa OnWorks free hosting provider gamit ang isa sa aming maramihang libreng online na workstation gaya ng Ubuntu Online, Fedora Online, Windows online emulator o MAC OS online emulator

PROGRAMA:

NAME


rrd-beginners - Gabay sa Mga Nagsisimula ng RRDtool

SINOPSIS


Pagtulong sa mga bagong user ng RRDtool na maunawaan ang mga pangunahing kaalaman ng RRDtool

DESCRIPTION


Ang manwal na ito ay isang pagtatangka na tulungan ang mga nagsisimula sa pag-unawa sa mga konsepto ng RRDtool. Ito
nagbibigay-liwanag sa mga pagkakaiba sa pagitan ng RRDtool at iba pang mga database. Sa tulong ng isang halimbawa,
ipinapaliwanag nito ang istruktura ng database ng RRDtool. Sinusundan ito ng isang pangkalahatang-ideya ng
"graph" na tampok ng RRDtool. Sa dulo, mayroon itong mga sample na script na naglalarawan sa
paggamit/pagbabalot ng RRDtool sa loob ng mga script ng Shell o Perl.

Ano Ginagawang RRDtool so espesyal?
Ang RRDtool ay GNU licensed software na binuo ni Tobias Oetiker, isang system manager sa
Swiss Federal Institute of Technology. Kahit na ito ay isang database, may mga natatanging
mga pagkakaiba sa pagitan ng mga database ng RRDtool at iba pang mga database tulad ng nakalista sa ibaba:

· Ang RRDtool ay nag-iimbak ng data; na ginagawa itong back-end na tool. Ang hanay ng utos ng RRDtool ay nagbibigay-daan sa isa
upang lumikha ng mga graph; na ginagawa itong isang front-end na tool din. Ang iba pang mga database ay nag-iimbak lamang
data at hindi makalikha ng mga graph.

· Sa kaso ng mga linear na database, ang bagong data ay madaragdagan sa ibaba ng database
mesa. Kaya ang laki nito ay patuloy na tumataas, samantalang ang laki ng isang database ng RRDtool ay
tinutukoy sa oras ng paglikha. Isipin ang isang database ng RRDtool bilang perimeter ng isang bilog.
Ang data ay idinagdag sa kahabaan ng perimeter. Kapag ang bagong data ay umabot sa panimulang punto, ito
pinapatungan ang umiiral na data. Sa ganitong paraan, palaging nananatili ang laki ng isang database ng RRDtool
pare-pareho. Ang pangalang "Round Robin" ay nagmula sa pag-uugaling ito.

· Iniimbak ng ibang mga database ang mga halaga bilang ibinigay. Maaaring i-configure ang RRDtool upang kalkulahin
ang rate ng pagbabago mula sa nakaraan hanggang sa kasalukuyang halaga at iimbak ang impormasyong ito
sa halip.

· Ang iba pang mga database ay naa-update kapag ang mga halaga ay ibinigay. Ang database ng RRDtool ay
nakabalangkas sa paraang nangangailangan ito ng data sa mga paunang natukoy na agwat ng oras. Kung ito ay
hindi makakuha ng bagong halaga sa panahon ng agwat, nag-iimbak ito ng HINDI ALAM na halaga para sa agwat na iyon.
Kaya, kapag gumagamit ng database ng RRDtool, kinakailangang gumamit ng mga script na tumatakbo sa
regular na mga agwat upang matiyak ang patuloy na daloy ng data upang i-update ang database ng RRDtool.

Ang RRDtool ay idinisenyo upang mag-imbak ng time series ng data. Sa bawat pag-update ng data, isang nauugnay
nakaimbak ang time stamp. Ang oras ay palaging ipinahayag sa mga segundong lumipas mula noong panahon (01-01-1970).
Maaaring mai-install ang RRDtool sa Unix pati na rin sa Windows. Ito ay may kasamang command set para dalhin
sa iba't ibang mga operasyon sa mga database ng RRD. Maaaring ma-access ang command set na ito mula sa command
linya, gayundin mula sa mga script ng Shell o Perl. Ang mga script ay nagsisilbing mga wrapper para sa pag-access
data na nakaimbak sa mga database ng RRDtool.

Unawa sa by an halimbawa
Ang istraktura ng isang database ng RRD ay iba kaysa sa iba pang mga linear na database. Iba pa
Tinutukoy ng mga database ang mga talahanayan na may mga column, at marami pang ibang parameter. Ang mga kahulugang ito
minsan ay napakakomplikado, lalo na sa malalaking database. Ang mga database ng RRDtool ay
pangunahing ginagamit para sa mga layunin ng pagsubaybay at samakatuwid ay napakasimple sa istraktura. Ang
ang mga parameter na kailangang tukuyin ay mga variable na nagtataglay ng mga halaga at archive ng mga iyon
mga halaga. Dahil sensitibo sa oras, tinukoy din ang ilang mga parameter na nauugnay sa oras.
Dahil sa istraktura nito, ang kahulugan ng isang database ng RRDtool ay kasama rin ang isang probisyon
upang tukuyin ang mga partikular na aksyon na gagawin sa kawalan ng mga halaga ng pag-update. Pinagmulan ng Data (DS),
heartbeat, Date Source Type (DST), Round Robin Archive (RRA), at Consolidation Function
(CF) ay ilan sa mga terminolohiyang nauugnay sa mga database ng RRDtool.

Ang istraktura ng isang database at ang terminolohiya na nauugnay dito ay maaaring maipaliwanag nang pinakamahusay
na may isang halimbawa.

rrdtool lumikha ng target.rrd \
--simula 1023654125 \
--hakbang 300 \
DS:mem:GAUGE:600:0:671744 \
RRA:AVERAGE:0.5:12:24 \
RRA:AVERAGE:0.5:288:31

Ang halimbawang ito ay lumilikha ng isang database na pinangalanan target.rrd. Ang oras ng pagsisimula (1'023'654'125) ay tinukoy
sa kabuuang bilang ng mga segundo mula noong panahon (oras sa mga segundo mula noong 01-01-1970). Habang nag-a-update
ang database, ang oras ng pag-update ay tinukoy din. DAPAT mas malaki ang oras ng pag-update na ito (mamaya)
kaysa sa oras ng pagsisimula at DAPAT sa mga segundo mula noong panahon.

Ang hakbang na 300 segundo ay nagpapahiwatig na ang database ay umaasa ng mga bagong halaga bawat 300 segundo.
Ang script ng wrapper ay dapat na nakaiskedyul na tumakbo bawat hakbang segundo upang ma-update nito ang
database bawat hakbang segundo.

Ang DS (Data Source) ay ang aktwal na variable na nauugnay sa parameter sa device na
ay sinusubaybayan. Ang syntax nito ay

DS:variable_name:DST:heartbeat:min:max

DS ay isang mahalagang salita. Ang "variable_name" ay isang pangalan kung saan naka-save ang parameter sa
database. Maaaring magkaroon ng maraming DS sa isang database kung kinakailangan. Pagkatapos ng bawat agwat ng hakbang, a
bagong halaga ng DS ay ibinibigay upang i-update ang database. Ang halagang ito ay tinatawag ding Primary
Punto ng Data (PDP). Sa aming halimbawang nabanggit sa itaas, isang bagong PDP ang nabubuo tuwing 300
segundo.

Tandaan, na kung HINDI ka magbibigay ng mga bagong data point nang eksakto bawat 300 segundo, hindi ito a
problema, isasama ng RRDtool ang data nang naaayon.

Magkaroon ng mga std (Uri ng Pinagmulan ng Data) ay tumutukoy sa uri ng DS. Maaari itong maging KONTRA, DERIVE, ABSOLUTE,
PANUKAT. Ang isang DS na idineklara bilang COUNTER ay magse-save ng rate ng pagbabago ng halaga sa isang hakbang
panahon. Ipinapalagay nito na ang halaga ay palaging tumataas (ang pagkakaiba sa pagitan ng
kasalukuyan at ang dating halaga ay mas malaki sa 0). Ang mga counter ng trapiko sa isang router ay isang
perpektong kandidato para sa paggamit ng COUNTER bilang DST. Ang DERIVE ay kapareho ng COUNTER, ngunit pinapayagan nito
mga negatibong halaga din. Kung gusto mong makita ang rate ng baguhin sa libreng puwang sa disk sa iyong
server, pagkatapos ay maaaring gusto mong gamitin ang DERIVE data type. Ang ABSOLUTE ay nakakatipid din sa rate ng
pagbabago, ngunit ipinapalagay nito na ang dating halaga ay nakatakda sa 0. Ang pagkakaiba sa pagitan ng
kasalukuyang at ang dating halaga ay palaging katumbas ng kasalukuyang halaga. Kaya nag-iimbak lamang ito
ang kasalukuyang halaga na hinati sa pagitan ng hakbang (300 segundo sa aming halimbawa). GAUGE ay
hindi i-save ang rate ng pagbabago. Ito ay nagse-save ng aktwal na halaga mismo. Walang mga dibisyon o
mga kalkulasyon. Ang pagkonsumo ng memorya sa isang server ay isang tipikal na halimbawa ng gauge. Ang pagkakaiba
sa pagitan ng iba't ibang uri ng DST ay maaaring maipaliwanag nang mas mahusay sa sumusunod na halimbawa:

Mga Halaga = 300, 600, 900, 1200
Hakbang = 300 segundo
COUNTER DS = 1, 1, 1, 1
DERIVE DS = 1, 1, 1, 1
Ganap na DS = 1, 2, 3, 4
GAUGE DS = 300, 600, 900, 1200

Ang susunod na parameter ay tibok ng puso. Sa aming halimbawa, ang tibok ng puso ay 600 segundo. Kung ang database
hindi nakakakuha ng bagong PDP sa loob ng 300 segundo, maghihintay ito ng isa pang 300 segundo (kabuuang 600
segundo). Kung hindi ito makakatanggap ng anumang PDP sa loob ng 600 segundo, magse-save ito ng HINDI ALAM na halaga
sa database. Ang UNKNOWN value na ito ay isang espesyal na feature ng RRDtool - mas maganda ito
kaysa sa ipagpalagay na ang isang nawawalang halaga ay 0 (zero) o anumang iba pang numero na maaaring a
wastong halaga ng data. Halimbawa, ang counter ng daloy ng trapiko sa isang router ay patuloy na tumataas.
Sabihin nating, may napalampas na value para sa isang interval at 0 ang iniimbak sa halip na UNKNOWN. Ngayon kung kailan
magiging available ang susunod na halaga, kakalkulahin nito ang pagkakaiba sa pagitan ng kasalukuyang
value at ang dating value (0) na hindi tama. Kaya, ang pagpasok ng halagang UNKNOWN
mas may katuturan dito.

Ang susunod na dalawang parameter ay ang minimum at maximum na halaga, ayon sa pagkakabanggit. Kung ang variable
na maiimbak ay may predictable na maximum at minimum na mga halaga, dapat itong tukuyin dito.
Ang anumang halaga ng pag-update na lumalabas sa hanay na ito ay maiimbak bilang UNKNOWN.

Ang susunod na linya ay nagdedeklara ng round robin archive (RRA). Ang syntax para sa pagdedeklara ng RRA ay

RRA:CF:xff:step:rows

Ang RRA ay ang keyword upang magdeklara ng mga RRA. Ang function ng pagpapatatag (CF) ay maaaring AVERAGE,
MINIMUM, MAXIMUM, at LAST. Papasok ang konsepto ng pinagsama-samang data point (CDP).
ang larawan dito. Ang CDP ay CFed (average, maximum/minimum na halaga o huling halaga) mula sa hakbang
bilang ng mga PDP. Ang RRA na ito ay gaganapin hilera Mga CDP.

Tingnan natin ang halimbawa sa itaas. Para sa unang RRA, 12 (mga hakbang) na PDP (mga variable ng DS)
ay AVERAGEed (CF) upang bumuo ng isang CDP. 24 (na hilera) ng mga tesis na CDP ay naka-archive. Ang bawat PDP ay nangyayari
sa 300 segundo. Ang 12 PDP ay kumakatawan sa 12 beses 300 segundo na 1 oras. Nangangahulugan ito ng 1 CDP
(na katumbas ng 12 PDP) ay kumakatawan sa data na nagkakahalaga ng 1 oras. Ang 24 na naturang CDP ay kumakatawan sa 1 araw (1
oras na beses 24 CDPs). Ibig sabihin, ang RRA na ito ay isang archive para sa isang araw. Pagkatapos ng 24 na CDP, CDP
papalitan ng numero 25 ang 1st CDP. Ang pangalawang RRA ay nakakatipid ng 31 CDP; bawat CPD ay kumakatawan sa isang
AVERAGE na halaga para sa isang araw (288 PDP, bawat isa ay sumasaklaw sa 300 segundo = 24 na oras). Samakatuwid ito
Ang RRA ay isang archive para sa isang buwan. Ang isang solong database ay maaaring magkaroon ng maraming RRA. Kung meron
maramihang mga DS, ang bawat indibidwal na RRA ay magse-save ng data para sa lahat ng mga DS sa database. Para sa
halimbawa, kung ang isang database ay may 3 DS at araw-araw, lingguhan, buwanan, at taunang RRA ay idineklara,
pagkatapos ang bawat RRA ay hahawak ng data mula sa lahat ng 3 data source.

Graphic Salamangka
Ang isa pang mahalagang tampok ng RRDtool ay ang kakayahang lumikha ng mga graph. Ang "graph" na utos
gumagamit ng "fetch" na utos sa loob upang kunin ang mga halaga mula sa database. Kasama ang
retrieved values ​​ito ay gumuhit ng mga graph gaya ng tinukoy ng mga parameter na ibinigay sa command
linya. Ang isang solong graph ay maaaring magpakita ng iba't ibang DS (Mga Pinagmumulan ng Data) mula sa isang database. Ito ay din
posibleng ipakita ang mga halaga mula sa higit sa isang database sa isang graph. Kadalasan, ito ay
kinakailangan upang magsagawa ng ilang matematika sa mga halaga na nakuha mula sa database bago i-plot
sila. Halimbawa, sa mga tugon ng SNMP, karaniwang tinutukoy ang mga halaga ng pagkonsumo ng memorya sa
Ang mga KByte at daloy ng trapiko sa mga interface ay tinukoy sa Bytes. Ang mga graph para sa mga halagang ito ay
maging mas makabuluhan kung ang mga halaga ay kinakatawan sa MBytes at mbps. Ang utos ng RRDtool graph
nagbibigay-daan sa isa na tukuyin ang mga naturang conversion. Bukod sa mathematical calculations, ito rin
posible na magsagawa ng mga lohikal na operasyon tulad ng mas malaki kaysa sa, mas mababa kaysa, at kung / pagkatapos / iba pa.
Kung ang isang database ay naglalaman ng higit sa isang RRA archive, kung gayon ang isang katanungan ay maaaring lumitaw - paano
Ang RRDtool ang magpapasya kung aling RRA archive ang gagamitin para sa pagkuha ng mga halaga? Tumingin si RRDtool
ilang bagay kapag pumipili. Una, tinitiyak nito na ang RRA ay sumasaklaw sa halos lahat ng
ang graphing time frame hangga't maaari. Pangalawa tinitingnan nito ang resolusyon ng RRA kumpara
sa resolusyon ng graph. Sinusubukan nitong makahanap ng isa na may pareho o mas mataas na mas mahusay
resolusyon. Gamit ang opsyong "-r" maaari mong pilitin ang RRDtool na kumuha ng ibang resolusyon
kaysa sa kinakalkula mula sa lapad ng pixel ng graph.

Maaaring ipakita ang mga halaga ng iba't ibang variable sa 5 magkakaibang hugis sa isang graph - AREA,
LINE1, LINE2, LINE3, at STACK. Ang AREA ay kinakatawan ng isang solid na kulay na lugar na may mga halaga bilang
ang hangganan ng lugar na ito. Ang LINE1/2/3 (tumataas na lapad) ay mga simpleng linya lamang na kumakatawan
ang mga halaga. Ang STACK ay isang lugar din ngunit ito ay "stack" sa itaas na AREA o LINE1/2/3. Isa pa
mahalagang bagay na dapat tandaan ay ang mga variable ay naka-plot sa pagkakasunud-sunod ng mga ito ay tinukoy sa
utos ng graph. Samakatuwid, ang pag-iingat ay dapat gawin upang tukuyin ang STACK pagkatapos lamang tukuyin ang AREA/LINE.
Posible ring maglagay ng mga naka-format na komento sa loob ng graph. Ang mga detalyadong tagubilin ay maaari
makikita sa manwal ng graph.

Pambalot RRDtool sa loob ng Shell/Perl script
Matapos maunawaan ang RRDtool, panahon na para aktwal na gumamit ng RRDtool sa mga script. Mga gawain
kasangkot sa pamamahala ng network ay ang pagkolekta ng data, pag-iimbak ng data, at pagkuha ng data. Sa
ang sumusunod na halimbawa, ang dating nilikha na target.rrd database ay ginagamit. Pagkolekta ng data
at ang pag-iimbak ng data ay ginagawa gamit ang mga script ng Shell. Ang pagkuha ng data at pagbuo ng ulat ay tapos na
gamit ang Perl script. Ang mga script na ito ay ipinapakita sa ibaba:

Talukap ng alimango script (nangongolekta data, Update database)

#!/ Bin / SH
a = 0
habang [ "$a" == 0 ]; gawin
snmpwalk -c public 192.168.1.250 hrSWRunPerfMem > snmp_reply
total_mem=`awk 'BEGIN {tot_mem=0}
{ kung ($NF == "KBytes")
{tot_mem=tot_mem+$(NF-1)}
}
END {print tot_mem}' snmp_reply`
# Magagamit ko ang N bilang kapalit sa kasalukuyang oras
rrdtool update target.rrd N:$total_mem
# matulog hanggang sa susunod na 300 segundo ay puno na
perl -e 'sleep 300 - time % 300'
tapos # end ng while loop

Perl script (kinukuha data mula database at bumubuo graph at istatistika)

#!/usr/bin/perl -w
# Kinukuha ng script na ito ang data mula sa target.rrd, lumilikha ng graph ng memorya
# pagkonsumo sa target (Dual P3 Processor 1 GHz, 656 MB RAM)

# tawagan ang RRD perl module
gumamit ng lib qw( /usr/local/rrdtool-1.0.41/lib/perl ../lib/perl );
gumamit ng mga RRD;
aking $cur_time = time(); # itakda ang kasalukuyang oras
aking $end_time = $cur_time - 86400; # itakda ang oras ng pagtatapos sa 24 na oras ang nakalipas
aking $start_time = $end_time - 2592000; # set simula 30 araw sa nakalipas

# kunin ang mga average na halaga mula sa database ng RRD sa pagitan ng oras ng pagsisimula at pagtatapos
my ($start,$step,$ds_names,$data) =
RRDs::fetch("target.rrd", "AVERAGE",
"-r", "600", "-s", "$start_time", "-e", "$end_time");
# i-save ang mga nakuhang value sa isang 2-dimensional na array
aking $rows = 0;
aking $columns = 0;
aking $time_variable = $start;
foreach $line (@$data) {
$vals[$rows][$columns] = $time_variable;
$time_variable = $time_variable + $step;
foreach $val (@$line) {
$vals[$rows][++$columns] = $val;}
$rows++;
$columns = 0;
}
aking $tot_time = 0;
ang aking $count = 0;
# i-save ang mga halaga mula sa 2-dimensional sa isang 1-dimensional na array
para sa $i ( 0 .. $#vals ) {
$tot_mem[$count] = $vals[$i][1];
$count++;
}
aking $tot_mem_sum = 0;
# kalkulahin ang kabuuan ng lahat ng mga halaga
para sa $i ( 0 .. ($count-1) ) {
$tot_mem_sum = $tot_mem_sum + $tot_mem[$i];
}
# kalkulahin ang average ng array
aking $tot_mem_ave = $tot_mem_sum/($count);
# gumawa ng graph
Mga RRD::graph ("/images/mem_$count.png",
"--title= Paggamit ng Memorya",
"--vertical-label=Memory Consumption (MB)",
"--start=$start_time",
"--end=$end_time",
"--color=BACK#CCCCCC",
"--color=CANVAS#CCFFFF",
"--color=SHADEB#9999CC",
"--taas=125",
"--upper-limit=656",
"--lower-limit=0",
"--matigas",
"--base=1024",
"DEF:tot_mem=target.rrd:mem:AVERAGE",
"CDEF:tot_mem_cor=tot_mem,0,671744,LIMIT,UN,0,tot_mem,IF,1024,/",
"CDEF:machine_mem=tot_mem,656+,tot_mem,-",
"COMMENT: Memory Consumption sa pagitan ng $start_time",
"COMMENT: at $end_time ",
"HRULE:656#000000:Maximum Available na Memory - 656 MB",
"AREA:machine_mem#CCFFFF:Memory Unused",
"AREA:tot_mem_cor#6699CC:Kabuuang memorya na nagamit sa MB");
my $err=RRDs::error;
if ($err) {print "problem generating the graph: $err\n";}
# i-print ang output
print "Average memory consumption ay ";
printf "%5.2f",$tot_mem_ave/1024;
print " MB. Ang graphical na representasyon ay makikita sa /images/mem_$count.png.";

Gumamit ng mga rrd-beginners online gamit ang mga serbisyo ng onworks.net


Mga Libreng Server at Workstation

Mag-download ng Windows at Linux apps

  • 1
    PHP QR Code
    PHP QR Code
    Ang PHP QR Code ay open source (LGPL)
    library para sa pagbuo ng QR Code,
    2-dimensional na barcode. Batay sa
    libqrencode C library, nagbibigay ng API para sa
    paggawa ng QR Code barc...
    I-download ang PHP QR Code
  • 2
    freeciv
    freeciv
    Ang Freeciv ay isang libreng turn-based
    Multiplayer diskarte laro, kung saan ang bawat isa
    ang manlalaro ay nagiging pinuno ng a
    kabihasnan, pakikipaglaban upang makuha ang
    pangwakas na layunin: maging...
    I-download ang Freeciv
  • 3
    Cuckoo Sandbox
    Cuckoo Sandbox
    Gumagamit ang Cuckoo Sandbox ng mga bahagi upang
    subaybayan ang gawi ng malware sa a
    Sandbox na kapaligiran; nakahiwalay sa
    natitirang bahagi ng sistema. Nag-aalok ito ng awtomatiko
    pagsusuri o...
    I-download ang Cuckoo Sandbox
  • 4
    LMS-YouTube
    LMS-YouTube
    Mag-play ng video sa YouTube sa LMS (pag-port ng
    Triode's to YouTbe API v3) Ito ay
    isang application na maaari ding makuha
    mula
    https://sourceforge.net/projects/lms-y...
    I-download ang LMS-YouTube
  • 5
    Windows Presentation Foundation
    Windows Presentation Foundation
    Windows Presentation Foundation (WPF)
    ay isang UI framework para sa pagbuo ng Windows
    mga desktop application. Sinusuportahan ng WPF ang a
    malawak na hanay ng pagbuo ng application
    mga tampok...
    I-download ang Windows Presentation Foundation
  • 6
    SportMusik
    SportMusik
    Mit dem Programm kann man schnell und
    einfach Pausen bei Sportveranstaltungen
    mit Musik �berbr�cken. Hierf'r haben sie
    die M�glichkeit, folgende Wiedergabvaria...
    I-download ang SportMusik
  • Marami pa »

Linux command

Ad