Kućni web poslužitelj na solarni pogon radio je 15 mjeseci: vrijeme neprekidnog rada 95,26%

Kućni web poslužitelj na solarni pogon radio je 15 mjeseci: vrijeme neprekidnog rada 95,26%
Prvi prototip solarnog servera s regulatorom punjenja. Fotografija: solar.lowtechmagazine.com

U rujnu 2018. entuzijast iz Low-tech Magazina pokrenuo “niskotehnološki” projekt web poslužitelja. Cilj je bio smanjiti potrošnju energije toliko da bi jedan solarni panel bio dovoljan za kućni server koji se samostalno hostira. To nije lako, jer stranica mora raditi 24 sata dnevno. Da vidimo što je na kraju bilo.

Možete ići na poslužitelj solar.lowtechmagazine.com, provjerite trenutnu potrošnju energije i razinu napunjenosti baterije. Stranica je optimizirana za minimalan broj zahtjeva sa stranice i minimalan promet, tako da bi trebala izdržati val prometa s Habra. Prema izračunima programera, potrošnja energije po jedinstvenom posjetitelju je 0,021 Wh.

Neposredno prije zore 31. siječnja 2020. imao je 42% baterije. Zora u Barceloni u 8:04 po lokalnom vremenu, nakon čega bi trebala poteći struja iz solarne ploče.

Kućni web poslužitelj na solarni pogon radio je 15 mjeseci: vrijeme neprekidnog rada 95,26%

Zašto?

Prije deset godina stručnjaci predvidioda razvoj interneta pridonosi “dematerijalizaciji” društva, univerzalnoj digitalizaciji – i kao rezultat tome smanjenju ukupne potrošnje energije. Bili su u krivu. Zapravo, sam Internet je zahtijevao ogromne količine energije, a te količine nastavljaju rasti.

IT tvrtke pokrenule su inicijative za prelazak na alternativne izvore energije, no to je sada nemoguće. Svi podatkovni centri troše tri puta više energije nego što generiraju sve solarne i vjetroelektrane na svijetu. Još gore, proizvodnja i redovita zamjena solarnih panela i vjetroturbina također zahtijeva energiju, stoga je danas jednostavno nemoguće napustiti fosilna goriva (nafta, plin, uran). No te rezerve neće dugo potrajati, pa ćemo neminovno morati razmišljati kako živjeti od obnovljivih izvora. Uključujući rad računalne infrastrukture, uključujući web poslužitelje.

Časopis niske tehnologije smatra problemom Web stranice se prebrzo napuhavaju. Prosječna veličina stranice povećala se od 2010. do 2018 od 0,45 MB do 1,7 MB, a za mobilne stranice - od 0,15 MB do 1,6 MB, konzervativna procjena.

Povećanje obima prometa nadmašuje napredak u energetskoj učinkovitosti (energija potrebna za prijenos 1 megabajta informacija), što uzrokuje stalni porast potrošnje internetske energije. Teža i opterećenija mjesta ne samo da povećavaju opterećenje mrežne infrastrukture, već i skraćuju "životni ciklus" računala i pametnih telefona koji se moraju češće izbacivati ​​i proizvoditi nova, što također energetski vrlo intenzivan proces.

I naravno, povećano opterećenje uvjetovano je samim stilom života: ljudi gotovo cijelo vrijeme provode na internetu i uvelike se oslanjaju na razne web servise. Već sada je teško zamisliti moderno društvo bez informatičke infrastrukture u oblaku (društvene mreže, instant messengeri, pošta, itd.)

Konfiguracija poslužitelja i web stranice

В ovaj članak Detaljno je opisana hardverska konfiguracija i softverski skup web poslužitelja.

Računalo s jednom pločom Olimex Olinuxino A20 vapno 2 odabran zbog male potrošnje energije i korisnih dodatnih značajki kao što je čip za upravljanje napajanjem AXP209. Omogućuje vam traženje statistike o trenutnom naponu i struji s ploče i baterije. Mikro krug automatski prebacuje napajanje između baterije i DC konektora, gdje struja teče iz solarne ploče. Tako je omogućeno neprekidno napajanje poslužitelja s podrškom za baterije.

Kućni web poslužitelj na solarni pogon radio je 15 mjeseci: vrijeme neprekidnog rada 95,26%
Olimex Olinuxino A20 vapno 2

U početku je kao baterija odabrana litij-polimerska baterija kapaciteta 6600 mAh (oko 24 Wh), zatim je ugrađena olovna baterija kapaciteta 84,4 Wh.

Operativni sustav se pokreće sa SD kartice. Iako OS ne zauzima više od 1 GB, a statična web stranica ima oko 30 MB, nije bilo ekonomskog smisla kupovati karticu manju od Class 10 16 GB.

Poslužitelj se povezuje s internetom putem kućne veze od 100 Mbps u Barceloni i standardnog potrošačkog usmjerivača. Za njega je rezervirana statička IP adresa. Gotovo svatko može postaviti takvo mjesto u svom stanu; morate malo promijeniti postavke vatrozida kako biste proslijedili priključke na lokalni IP:

Priključci 80 do 80 za HTTP Priključci 443 do 443 za HTTPS Priključci 22 do 22 za SSH

Operativni sustav Armbian Stretch temeljen na Debian distribuciji i kernelu SUNXI, koji je dizajniran za pojedinačne ploče s AllWinner čipovima.

Kućni web poslužitelj na solarni pogon radio je 15 mjeseci: vrijeme neprekidnog rada 95,26%
Solarni panel od 50 watta za web server i solarni panel od 10 watta za osvjetljenje dnevnog boravka u stanu autora

Statička stranica generirana od strane sustava Pelikan (generator stranica u Pythonu). Statičke stranice učitavaju se brže i manje su intenzivne za CPU, pa su mnogo energetski učinkovitije od dinamički generiranih stranica. Pogledajte izvorni kod za temu. здесь.

Vrlo važna točka je kompresija slike, jer je bez ove optimizacije gotovo nemoguće napraviti web stranice manje od 1 megabajta. Za optimizaciju je odlučeno pretvoriti fotografije u polutonske slike. Na primjer, ovdje je fotografija telefonskih operaterki na centrali u prošlom stoljeću, 253 KB.

Kućni web poslužitelj na solarni pogon radio je 15 mjeseci: vrijeme neprekidnog rada 95,26%

A ovdje je optimizirana slika u sivim tonovima veličine 36,5 KB u tri boje (crna, bijela, siva). Zbog optičke iluzije, gledatelju se čini da postoji više od tri boje.

Kućni web poslužitelj na solarni pogon radio je 15 mjeseci: vrijeme neprekidnog rada 95,26%

Polutonske fotografije odabrane su ne samo radi optimizacije veličine (prilično dvojbena odluka), već i iz estetskih razloga. Ova stara tehnika obrade slika ima određene stilske značajke, pa stranica ima donekle jedinstven dizajn.

Nakon optimizacije, 623 ilustracije na web stranici Low-tech Magazine smanjile su se sa 194,2 MB na 21,3 MB, odnosno za 89%.

Svi stari članci pretvoreni su u Markdown radi lakšeg pisanja novih članaka, kao i radi lakšeg sigurnosnog kopiranja putem git. Sve skripte i trackeri, kao i logotipi, uklonjeni su sa stranice. Koristi se zadani font u pregledniku klijenta. Kao “logo” - naziv časopisa velikim slovima sa strelicom lijevo: LOW←TECH MAGAZINE. Samo 16 bajtova umjesto slike.

U slučaju zastoja, organizirana je mogućnost “offline čitanja”: tekstovi i slike eksportiraju se u RSS feed. Omogućeno je predmemoriranje 100% sadržaja, uključujući HTML.

Još jedna optimizacija je omogućavanje HTTP2 postavki u nginxu, što malo smanjuje promet i smanjuje vrijeme učitavanja stranice u usporedbi s HTTP/1.1. Tablica uspoređuje rezultate za pet različitih stranica.

| | FP | MI | HS | FW | CW | |----------|-------|-------|-------|-------|------ -| | HTTP/1.1 | 1.46s | 1.87 s | 1.54s | 1.86s | 1.89 s | | HTTP2 | 1.30s | 1.49s | 1.54s | 1.79 s | 1.55s | | Slike | 9 | 21 | 11 | 19 | 23 | | štednja | 11% | 21% | 0% | 4% | 18% |

Puna nginx konfiguracija:

root@solarserver:/var/log/nginx# cat /etc/nginx/sites-enabled/solar.lowtechmagazine.com

# Expires map
map $sent_http_content_type $expires {
default off;
text/html 7d;
text/css max;
application/javascript max;
~image/ max;
}

server {
listen 80;
server_name solar.lowtechmagazine.com;

location / {
return 301 https://$server_name$request_uri;
}
}

server{
listen 443 ssl http2;
server_name solar.lowtechmagazine.com;

charset UTF-8; #improve page speed by sending the charset with the first response.

location / {
root /var/www/html/;
index index.html;
autoindex off;
}


#Caching (save html pages for 7 days, rest as long as possible, no caching on frontpage)
expires $expires;

location @index {
add_header Last-Modified $date_gmt;
add_header Cache-Control 'no-cache, no-store';
etag off;
expires off;
}

#error_page 404 /404.html;

# redirect server error pages to the static page /50x.html
#error_page 500 502 503 504 /50x.html;
#location = /50x.html {
# root /var/www/;
#}

#Compression

gzip on;
gzip_disable "msie6";
gzip_vary on;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;


#Caching (save html page for 7 days, rest as long as possible)
expires $expires;

# Logs
access_log /var/log/nginx/solar.lowtechmagazine.com_ssl.access.log;
error_log /var/log/nginx/solar.lowtechmagazine.com_ssl.error.log;

# SSL Settings:
ssl_certificate /etc/letsencrypt/live/solar.lowtechmagazine.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/solar.lowtechmagazine.com/privkey.pem;

# Improve HTTPS performance with session resumption
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 5m;

# Enable server-side protection against BEAST attacks
ssl_prefer_server_ciphers on;
ssl_ciphers ECDH+AESGCM:ECDH+AES256:ECDH+AES128:DH+3DES:!ADH:!AECDH:!MD5;

# Disable SSLv3
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

# Lower the buffer size to increase TTFB
ssl_buffer_size 4k;

# Diffie-Hellman parameter for DHE ciphersuites
# $ sudo openssl dhparam -out /etc/ssl/certs/dhparam.pem 4096
ssl_dhparam /etc/ssl/certs/dhparam.pem;

# Enable HSTS (https://developer.mozilla.org/en-US/docs/Security/HTTP_Strict_Transport_Security)
add_header Strict-Transport-Security "max-age=63072000; includeSubdomains";

# Enable OCSP stapling (http://blog.mozilla.org/security/2013/07/29/ocsp-stapling-in-firefox)
ssl_stapling on;
ssl_stapling_verify on;
ssl_trusted_certificate /etc/letsencrypt/live/solar.lowtechmagazine.com/fullchain.pem;
resolver 87.98.175.85 193.183.98.66 valid=300s;
resolver_timeout 5s;
}

Rezultati 15 mjeseci rada

Za razdoblje od 12. prosinca 2018. do 28. studenog 2019. poslužitelj je pokazao vrijeme rada 95,26%. To znači da je zbog lošeg vremena godišnji zastoj bio 399 sati.

Ali ako ne uzmete u obzir posljednja dva mjeseca, vrijeme rada bilo je 98,2%, a vrijeme prekida rada samo 152 sata, pišu programeri. Vrijeme neprekidnog rada palo je na 80% u posljednja dva mjeseca kada se povećala potrošnja energije zbog ažuriranja softvera. Svake noći stranica je padala nekoliko sati.

Prema statistici, za godinu (od 3. prosinca 2018. do 24. studenog 2019.) potrošnja električne energije poslužitelja bila je 9,53 kWh. Zabilježeni su značajni gubici u fotonaponskom sustavu zbog pretvorbe napona i pražnjenja baterije. Solarni regulator pokazao je godišnju potrošnju od 18,10 kWh, što znači da je učinkovitost sustava oko 50%.

Kućni web poslužitelj na solarni pogon radio je 15 mjeseci: vrijeme neprekidnog rada 95,26%
Pojednostavljeni dijagram. Ne prikazuje pretvarač napona od 12 do 5 volti i mjerač amper-sata baterije

Tijekom razdoblja istraživanja stranicu je posjetilo 865 jedinstvenih posjetitelja. Uključujući sve gubitke energije u solarnoj instalaciji, potrošnja energije po jedinstvenom posjetitelju bila je 000 Wh. Tako je jedan kilovat-sat generirane solarne energije dovoljan za opsluživanje gotovo 0,021 jedinstvenih posjetitelja.

Tijekom eksperimenta testirani su solarni paneli različitih veličina. U tablici su prikazani izračuni koliko će trajati punjenje baterija različitih kapaciteta kada se koriste solarni paneli različitih veličina.

Kućni web poslužitelj na solarni pogon radio je 15 mjeseci: vrijeme neprekidnog rada 95,26%

Prosječna potrošnja energije web poslužitelja tijekom prve godine, uključujući sve gubitke energije, bila je 1,97 W. Izračun pokazuje da je za rad web stranice preko noći u najkraćoj noći u godini (8 sati i 50 minuta, 21. lipnja) potrebno 17,40 watt-sati pohrane energije, a u najduljoj noći (14 sati i 49 minuta, 21. prosinca) potrebno vam je 29,19 .XNUMX Wh.

Kućni web poslužitelj na solarni pogon radio je 15 mjeseci: vrijeme neprekidnog rada 95,26%

Budući da se olovne baterije ne bi trebale prazniti ispod polovice kapaciteta, poslužitelju je potrebna baterija od 60 Wh kako bi preživio najdužu noć uz optimalno dnevno svjetlo (2x29,19 Wh). Veći dio godine sustav je radio s baterijom od 86,4 Wh i solarnim panelom od 50 watta, a tada je postignuto spomenutih 95-98% uptimea.

Radno vrijeme 100%

Za 100% radni vijek potrebno je povećati kapacitet baterije. Kako bi se nadoknadio jedan dan vrlo lošeg vremena (bez značajne proizvodnje električne energije), potrebno je 47,28 vat-sati (24 sata × 1,97 vata) pohrane.

Od 1. prosinca 2019. do 12. siječnja 2020. u sustav je ugrađena baterija od 168 W, koja ima praktični kapacitet pohrane od 84 W-sata. Ovo je dovoljno za pohranu da stranica radi dvije noći i jedan dan. Konfiguracija je testirana tijekom najmračnijeg razdoblja u godini, ali vrijeme je bilo relativno dobro - tijekom navedenog razdoblja vrijeme rada bilo je 100%.

Ali kako biste zajamčili 100% neprekidnog rada tijekom nekoliko godina, morat ćete se pobrinuti za najgori mogući scenarij, kada loše vrijeme potraje nekoliko dana. Izračun pokazuje da bi vam za održavanje internetske stranice četiri dana uz nisku ili nikakvu proizvodnju energije bila potrebna olovna baterija kapaciteta 440 watt-sati, što je veličina automobilske baterije.

U praksi, u dobrim vremenskim uvjetima, olovna baterija od 48 Wh omogućit će rad poslužitelja tijekom noći od ožujka do rujna. Baterija od 24 Wh izdržat će server maksimalno 6 sati, što znači da će se gasiti svaku noć, iako u različito vrijeme ovisno o mjesecu.

Uglavnom, neke stranice ne moraju raditi noću, kada je broj posjetitelja minimalan, kažu dečki iz Low-tech Magazina. Na primjer, ako je ovo regionalna gradska publikacija, gdje ne dolaze posjetitelji iz drugih vremenskih zona, već samo lokalni stanovnici.

Odnosno, za stranice s različitim prometom i različitim vremenom rada, potrebne su baterije različitih kapaciteta i solarni paneli različitih veličina.

Kućni web poslužitelj na solarni pogon radio je 15 mjeseci: vrijeme neprekidnog rada 95,26%

Kućni web poslužitelj na solarni pogon radio je 15 mjeseci: vrijeme neprekidnog rada 95,26%

Autor daje izračun koliko je energije potrebno za proizvodnja sami solarni paneli (utjelovljena energija) i koliko to ispadne ako ovu količinu podijelite s očekivanim radnim vijekom od 10 godina.

Kućni web poslužitelj na solarni pogon radio je 15 mjeseci: vrijeme neprekidnog rada 95,26%

Na ovaj način moguće je izračunati ekvivalent fosilnih goriva koja se potroše u proizvodnji i radu panela. Low-tech Magazine otkrio je da je u prvoj godini rada njihov sustav (ploča od 50 W, baterija od 86,4 Wh) "generirao" približno 9 kg emisija, što je ekvivalent sagorijevanju 3 litre benzina: otprilike isto kao i 50- godišnji osobni automobil prijeđeni km.

Kućni web poslužitelj na solarni pogon radio je 15 mjeseci: vrijeme neprekidnog rada 95,26%

Ako se poslužitelj ne napaja iz solarnih panela, već iz opće električne mreže, tada se čini da su ekvivalentne emisije šest puta niže: 1,54 kg (španjolski energetski sektor ima visok udio alternativne energije i nuklearnih elektrana). No to nije posve točna usporedba, piše autor, jer uzima u obzir utjelovljenu energiju solarne infrastrukture, ali ne uzima u obzir ovaj pokazatelj za opću energetsku mrežu, odnosno troškove njezine izgradnje i podrške. .

Daljnja poboljšanja

U proteklom vremenu provedene su brojne optimizacije koje su smanjile potrošnju energije poslužitelja. Na primjer, u jednom trenutku programer je primijetio da je 6,63 TB od ukupno 11,15 TB prometa generirano jednom netočnom implementacijom RSS feeda koja je povlačila sadržaj svakih nekoliko minuta. Nakon ispravljanja ove pogreške, potrošnja energije poslužitelja (isključujući gubitke energije) smanjila se s 1,14 W na približno 0,95 W. Dobitak se može činiti malim, ali razlika od 0,19 W znači 4,56 watt-sati dnevno, što odgovara više od 2,5 sata trajanja baterije za poslužitelj.

Tijekom prve godine učinkovitost je bila samo 50%. Gubici su uočeni pri punjenju i pražnjenju akumulatora (22%), kao i kod pretvaranja napona sa 12 V (solarni PV sustav) na 5 V (USB), gdje su gubici iznosili do 28%. Programer priznaje da ima suboptimalan pretvarač napona (kontroler bez ugrađenog USB-a), tako da možete optimizirati ovu točku ili se prebaciti na solarnu instalaciju od 5 V.

Kako bi se poboljšala učinkovitost skladištenja energije, olovne baterije mogu se zamijeniti skupljim litij-ionskim baterijama, koje imaju manje gubitke punjenja/pražnjenja (<10%). Sada dizajner razmišlja o kompaktu sustav skladištenja energije u obliku komprimiranog zraka (CAES), koji ima životni vijek desetljećima, što znači manji ugljični otisak na njegovu proizvodnju.

Kućni web poslužitelj na solarni pogon radio je 15 mjeseci: vrijeme neprekidnog rada 95,26%
Kompaktni akumulator energije komprimiranog zraka, izvor

Razmatra se ugradnja dodatne vjetroturbine (može biti napraviti od drveta) i instaliranje solarnog tragača za okretanje panela prema suncu. Tragač vam omogućuje povećanje proizvodnje električne energije za 30%.

Kućni web poslužitelj na solarni pogon radio je 15 mjeseci: vrijeme neprekidnog rada 95,26%

Drugi način povećanja učinkovitosti sustava je njegovo skaliranje. Podignite više web stranica na poslužitelju i pokrenite više poslužitelja. Tada će se potrošnja energije po mjestu smanjiti.

Kućni web poslužitelj na solarni pogon radio je 15 mjeseci: vrijeme neprekidnog rada 95,26%
Solar hosting tvrtka. Ilustracija: Diego Marmolejo

Ako pokrijete cijeli balkon svog stana solarnim pločama i otvorite tvrtku za hosting solarnih web stranica, trošak po korisniku bit će znatno niži nego za jednu web stranicu: ekonomija razmjera.

Općenito, ovaj eksperiment pokazuje da je, s obzirom na određena ograničenja, potpuno moguće da računalna infrastruktura radi na obnovljivim izvorima energije.

Teoretski, takav poslužitelj mogao bi čak i bez baterije ako se zrcali u drugim dijelovima svijeta. Na primjer, instalirajte ogledala na Novom Zelandu i Čileu. Tamo će solarni paneli raditi kada je noć u Barceloni.

Izvor: www.habr.com

Dodajte komentar