Publisert i bloggen, fredag 6. desember 2013:

Overvåke ReadyNAS Duo med PHP

Høsten 2011 kjøpte jeg meg nettverksharddisken ReadyNAS Duo, gjerne omtalt som NAS, «Network-attached Storage». Jeg har to harddisker på 2 TB hver, og disse tar kontinuerlig backup av hverandre i tilfelle en av de skulle feile.

ReadyNAS Duo
Min ReadyNAS DUO måler 22 x 16,2 x 17,2 centimeter, og har 2 TB lagringsplass satt opp i RAID slik at innholdet alltid speiles på 2 harddisker

Bildearkivet mitt

Bakgrunnen for denne investeringen er at jeg har et ganske stort bildearkiv, spesielt fra den tiden jeg drev nettavisen Liernett. Samtlige digitale bilder jeg har tatt siden vinteren 2003 er arkivert med dato og beskrivelse, per i dag 56 462 bilder.

bildearkiv.png

I tillegg har jeg en god del andre bilder som er tatt i forbindelse med diverse timelapse-prosjekter. Blant annet tok jeg et bilde hvert minutt, døgnet rundt, fra terrassen i min gamle leilighet fra slutten av august 2011 til juni 2012. Inkludert noen perioder med nedetid, endte dette prosjektet med 371 714 bilder.

Med så mange bilder som dokumenterer så mye forskjellig vil jeg ikke risikere et diskkrasj. Og da jeg i tillegg ventet barn ville jeg sikre at alle minnene var litt tryggere enn hva de hadde vært tidligere. Jeg hadde jo backup-systemer tidligere også, men det var litt mer manuelt arbeid med diverse harddisker og (u)regelmessig kopiering fra A til B.

Fysisk plassering

Tidligere hadde jeg min NAS plassert på skrivebordet på hjemmekontoret. Den er svært stillegående og krever liten plass, men det er viktig at det er god luftsirkulasjon rundt den så den ikke går varm.

readynas4.jpg
Tidligere hadde jeg NAS-et plassert i hjørnet på skrivebordet på hjemmekontoret

Over tid så jeg at temperaturen jevnt over ble høyere, sannsynligvis grunnet økt diskaktivitet og flere aktive plug-ins. Da jeg flyttet inn i nytt hus sommeren 2013 innredet jeg et nytt hjemmekontor, og her ble ofte romtemperaturen mye høyere enn på mitt gamle hjemmekontor som lå i en kjeller uten vinduer. Disktemperaturene kunne gjerne ligge på rundt 40 °C.

Jeg er ingen ekspert på hardware, men syntes det ville være fornuftig om NAS-disken holdt en litt lavere temperatur, gjerne ned mot 30 °C. Det ville vært ergerlig om for høy temperatur skulle skape problemer på sikt.

Jeg har derfor flyttet hele disken inn i en bod 2. etasjer lenger ned (jeg har 4 etasjer). Jeg monterte en enkel hylle over døra, et sted hvor disken ikke vil være til hinder for noe annet og fikk lagt opp kablet nettverkstilgang. I tillegg til at jeg slapp å ha disken stående fremme og synlig, ville jeg også oppnå lavere temperaturer.

Ny fysisk plassering - over døra i boden
Ny fysisk plassering - over døra i boden

Logge data

For å se hvordan dette, og andre tiltak, samt årstidene, ville påvirke temperaturen utviklet jeg en løsning for å logge temperaturen. Så siden i sommer har jeg logget temperaturen for hver av de to harddiskene, samt hvilken hastighet vifta har, hvert 10. minutt døgnet rundt.

Jeg kjenner ikke til noe API for å gjøre dette, og har heller ikke kunnskap nok til å gjøre dette på noen geeky måte og hente det rett fra kilden. Løsningen ble å «web scrape» temperaturen fra selve brukergrensesnittet til disken.

Jeg kommer ikke til å dele alle detaljene rundt hvordan jeg har gått frem for å få til dette, blant annet fordi jeg ikke vil avsløre eventuelle smutthull inn i systemene mine.

readynas3.JPG

Jeg fant ut at når brukergrensesnittet viser status for ReadyNAS Duo hentes det en XML-fil med alle data. Jeg har satt opp NAS-en med fast IP og et eget domene, slik at jeg for eksempel kan logge meg på og få tilgang til filene mine fra andre steder i verden. Det er for eksempel veldig praktisk å ha tilgang til filene mine fra kontoret i Oslo.

Med cURL og PHP fikk jeg hentet ut denne XML-en, og med litt modifikasjoner fikk jeg isolert selve dataverdiene som heltall. Jeg måtte logge meg på som administrator via cURL.

Jeg opprettet en MySQL-tabell og satte opp en «cron» som kjørte PHP-scriptet mitt hvert 10. minutt. Scriptet puttet nye data inn i tabellen, og slik har jeg altså fått logget temperatur og viftehastighet over tid.

Statistikken

Statistikken nedenfor blir kontinuerlig oppdatert med nye data. Grønn og lilla markør er hhv. Disk 1 og Disk 2.

Begynnelsen på markøren angir laveste temperatur registrert, sort strek angir gjennomnittlig temperatur og slutten på markør angir høyeste temperatur registrert.

Til høyre vises gjennomsnittlig viftehastighet.

Ytterligere informasjon vises ved mouseover i statistikken.

Oppdatering 2023: Denne statistikken er ikke lenger tilgjengelig.

Denne grafiske fremstillingen her er ikke helt god, men det var en enkel og rask metode som lett kunne brukes i bloggen og som kan oppdatere seg automatisk.

Presentasjonen av dataene er i dag ikke så viktig. Det viktige er at jeg har alle dataene loggført og kan kanskje få brukt det til noe fornuftig en gang i fremtiden. Er det for eksempel noen sammenheng mellom værdataene fra Yr?

Jeg har en egen side med en litt annen fremstilling ved hjelp av Highcharts, men av tekniske årsaker valgte jeg å ikke bruke dette verktøyet i bloggen. På sikt vil jeg nok lage et bedre dashboard for visning av disse dataene, men inntil videre får slike enkle fremstillinger duge.

Bloggen

Paid and organic last click
Are og Ida på date
Kunstig intelligens
Vekst- prosjektet
Da Outlook stjal ikonet mitt
Sen eller tidlig påske?
Koordinater i SVG
Påstand: Corner er mål
Vestfold-Rogaland kalkulator
Twitter og VM på ski
My New Year's Resolutions
Et bilde sier mer enn tusen ord
Rogaland blir nye Vestfold
På størrelse med Vestfold
Datoformat i Excel og Google Analytics
what3words Hvilke tre ord?
Covfefe will make America great again
Om domenenavn og firmanavn
Fotballfrue: Jeg tar innpå deg
Sakte-TV: Se gresset gro
Sakte-TV: Se maling tørke
Første generasjon iPapp har kommet
Jukselapp fotografering
Det sorte hullet cookies disabled
Høysesong for kjipe annonser
Om analsex og popups
Rotasjon av vindsymboler
Hvor mye er Fotballfrue verdt?
Slik tar du et screenshot
Nyttige husketrekanter
Enklere utregning med kryssmultiplisering
Min egen lille adventskalender
Logge antall likes på Facebook
Hva er sitemap.xml?
Hva er robots.txt?
Responsivt design
Webscraping med PHP
Jeg sammenligner epler og pærer
Scalable Vector Graphics
Google Analytics API: Hente data
Google Analytics API: Muligheter
HTML5: Video
Big Data
Cookies: Hvordan det brukes
Cookies: Hva er det?
Excel i to vinduer
CRM-systemet «Kontor»
Gigantisk timelapse
Hva er jQuery?
Overvåke ReadyNAS DUO med PHP
Favicon - ikonet i adressefeltet
Animert heading på hardcode.no
CSS -sprites
Komprimere PNG-bilder
Redesign av hardcode.no
Klikkbar flash uten clickTAG
Relevans har stor verdi
Alle har wide- screen i 2013
Markedsandeler nettlesere 2010
Internet Explorer-vindu i feil størrelse
Hvor stor er en piksel?
Markedsføring og kundelojalitet
Flash-versjoner
Vestre Sylling og Øverskogen JFF
Sidevisninger, besøk og brukere
Widescreen kommer
Hvor brede bør sidene være?
Fortsatt lese hele saken?
Lese hele saken nå?
Første møte med AdWords
Bort med IE6
Utviklingen på nettleserfronten
Nyttige jukselapper
Nye Sylling.no
Klær med egen logo?
Værdata fra yr.no
Logodesign trender i 2008
Gmail grimaser
Google Analytics
Publiseringssystemet Outpost
Hardcode.no relanseres
Publiserings -systemet