Domowy serwer internetowy zasilany energią słoneczną działał przez 15 miesięcy: czas sprawności 95,26%

Domowy serwer internetowy zasilany energią słoneczną działał przez 15 miesięcy: czas sprawności 95,26%
Pierwszy prototyp serwera fotowoltaicznego z kontrolerem ładowania. Zdjęcie: solar.lowtechmagazine.com

We wrześniu 2018 pasjonat Magazynu Low-tech uruchomił projekt serwera WWW „low-tech”.. Celem było zmniejszenie zużycia energii do takiego stopnia, aby jeden panel słoneczny wystarczył na domowy serwer hostowany samodzielnie. Nie jest to łatwe, bo strona musi działać 24 godziny na dobę. Zobaczmy, co się ostatecznie wydarzyło.

Możesz iść na serwer solar.lowtechmagazine.com, sprawdź aktualny pobór mocy i poziom naładowania baterii. Strona jest zoptymalizowana pod minimalną liczbę żądań ze strony i minimalny ruch, dlatego powinna wytrzymać gwałtowny wzrost ruchu z Habr. Według obliczeń dewelopera zużycie energii na jednego odwiedzającego wynosi 0,021 Wh.

Tuż przed świtem 31 stycznia 2020 r. poziom naładowania baterii wynosił 42%. Świt w Barcelonie o godzinie 8:04 czasu lokalnego, po czym z panelu słonecznego powinien płynąć prąd.

Domowy serwer internetowy zasilany energią słoneczną działał przez 15 miesięcy: czas sprawności 95,26%

Dlaczego?

Eksperci dziesięć lat temu przewidywanyże rozwój Internetu przyczynia się do „dematerializacji” społeczeństwa, powszechnej cyfryzacji – a w efekcie zmniejszenia ogólnego zużycia energii. Mylili się. W rzeczywistości domagał się tego sam Internet ogromne ilości dostaw energii, a wolumeny te stale rosną.

Firmy IT podjęły inicjatywy mające na celu przejście na alternatywne źródła zasilania, ale obecnie jest to niemożliwe. Wszystkie centra danych zużywają trzy razy więcej energii niż wytwarzają wszystkie instalacje fotowoltaiczne i wiatrowe na świecie. Co gorsza, produkcja i regularna wymiana paneli słonecznych i turbin wiatrowych wymaga również energiidlatego dziś porzucenie paliw kopalnych (ropa, gaz, uran) jest po prostu niemożliwe. Ale te rezerwy nie starczą na długo, więc nieuchronnie będziemy musieli pomyśleć o tym, jak żyć o źródłach odnawialnych. Obejmuje obsługę infrastruktury komputerowej, w tym serwerów WWW.

Magazyn o niskiej technologii uważa to za problem Strony internetowe puchną zbyt szybko. Średni rozmiar strony wzrósł w latach 2010–2018 od 0,45 MB do 1,7 MB, a dla witryn mobilnych – od 0,15 MB do 1,6 MB, co jest ostrożnym szacunkiem.

Wzrost natężenia ruchu przewyższa postęp w zakresie efektywności energetycznej (energia potrzebna do przesłania 1 megabajta informacji), co powoduje stały wzrost zużycia energii przez Internet. Cięższe i bardziej obciążone witryny nie tylko zwiększają obciążenie infrastruktury sieciowej, ale także skracają „cykl życia” komputerów i smartfonów, które częściej trzeba wyrzucać i produkować nowe, co również bardzo energochłonny proces.

I oczywiście zwiększone obciążenie pracą wynika z samego stylu życia: ludzie spędzają prawie cały czas w Internecie i w dużym stopniu polegają na różnych usługach internetowych. Trudno już sobie wyobrazić współczesne społeczeństwo bez infrastruktury IT w chmurze (sieci społecznościowe, komunikatory internetowe, poczta itp.)

Konfiguracja serwera i strony internetowej

В ten artykuł Szczegółowo opisano konfigurację sprzętową i stos oprogramowania serwera WWW.

Komputer jednopłytkowy Olimex Olinuxino A20 Limonka 2 wybrany ze względu na niskie zużycie energii i przydatne dodatkowe funkcje, takie jak układ zarządzania energią AXP209. Umożliwia zażądanie statystyk dotyczących aktualnego napięcia i prądu z płytki i akumulatora. Mikroukład automatycznie przełącza zasilanie pomiędzy akumulatorem a złączem DC, gdzie płynie prąd z panelu słonecznego. Dzięki temu możliwe jest nieprzerwane zasilanie serwera przy wsparciu akumulatorowym.

Domowy serwer internetowy zasilany energią słoneczną działał przez 15 miesięcy: czas sprawności 95,26%
Olimex Olinuxino A20 Limonka 2

Początkowo jako akumulator wybrano akumulator litowo-polimerowy o pojemności 6600 mAh (około 24 Wh), następnie zamontowano akumulator kwasowo-ołowiowy o pojemności 84,4 Wh.

System operacyjny uruchamia się z karty SD. Chociaż system operacyjny zajmuje nie więcej niż 1 GB, a statyczna witryna internetowa ma około 30 MB, nie było ekonomicznego sensu kupowanie karty mniejszej niż Class 10 16 GB.

Serwer łączy się z Internetem za pośrednictwem połączenia domowego 100Mbps w Barcelonie i standardowego routera konsumenckiego. Rezerwowany jest dla niego statyczny adres IP. Prawie każdy może założyć taką stronę w swoim mieszkaniu, trzeba nieco zmienić ustawienia firewalla, aby przekierować porty na lokalny adres IP:

Port 80 do 80 dla HTTP Port 443 do 443 dla HTTPS Port 22 do 22 dla SSH

System operacyjny Rozciągnięcie Armbiana oparty na dystrybucji i jądrze Debiana SUNXI, który przeznaczony jest do pojedynczych płyt z chipami AllWinner.

Domowy serwer internetowy zasilany energią słoneczną działał przez 15 miesięcy: czas sprawności 95,26%
Panel słoneczny o mocy 50 W do serwera WWW i panel słoneczny o mocy 10 W do oświetlenia salonu w mieszkaniu autorskim

Strona statyczna wygenerowana przez system Pelikan (generator stron w Pythonie). Strony statyczne ładują się szybciej i zużywają mniej procesora, dzięki czemu są znacznie bardziej energooszczędne niż strony generowane dynamicznie. Zobacz kod źródłowy motywu. tutaj.

Bardzo ważnym punktem jest kompresja obrazu, ponieważ bez tej optymalizacji tworzenie stron internetowych mniejszych niż 1 megabajt jest prawie niemożliwe. W celu optymalizacji zdecydowano się przekonwertować zdjęcia na obrazy rastrowe. Oto na przykład zdjęcie operatorek telefonicznych na centrali telefonicznej w zeszłym stuleciu, 253 KB.

Domowy serwer internetowy zasilany energią słoneczną działał przez 15 miesięcy: czas sprawności 95,26%

A oto zoptymalizowany obraz w skali szarości 36,5 KB w trzech kolorach (czarny, biały, szary). Ze względu na złudzenie optyczne widzowi wydaje się, że jest więcej niż trzy kolory.

Domowy serwer internetowy zasilany energią słoneczną działał przez 15 miesięcy: czas sprawności 95,26%

Zdjęcia rastrowe wybrano nie tylko ze względu na optymalizację rozmiaru (co jest decyzją dość wątpliwą), ale także ze względów estetycznych. Ta stara technika przetwarzania obrazu ma pewne cechy stylistyczne, dlatego strona ma nieco unikalny wygląd.

Po optymalizacji rozmiar 623 ilustracji na stronie Low-tech Magazine zmniejszył się ze 194,2 MB do 21,3 MB, czyli o 89%.

Wszystkie stare artykuły zostały przekonwertowane do Markdown, aby ułatwić pisanie nowych artykułów, a także ułatwić tworzenie kopii zapasowych za pośrednictwem odrzutowiec. Wszystkie skrypty i moduły śledzące, a także logo zostały usunięte ze strony. Stosowana jest domyślna czcionka w przeglądarce Klienta. Jako „logo” – nazwa magazynu pisana wielkimi literami ze strzałką po lewej stronie: LOW←TECH MAGAZINE. Tylko 16 bajtów zamiast obrazu.

W przypadku przestoju zorganizowano możliwość „czytania offline”: teksty i zdjęcia są eksportowane do kanału RSS. Włączono buforowanie 100% zawartości, w tym HTML.

Kolejną optymalizacją jest włączenie ustawień HTTP2 w nginx, co nieznacznie zmniejsza ruch i skraca czas ładowania strony w porównaniu do HTTP/1.1. W tabeli porównano wyniki dla pięciu różnych stron.

| | FP | MY | HS | FW | CW | |---------|-------|-------|-------|-------|------ -| | HTTP/1.1 | 1.46 s | 1.87 s | 1.54 s | 1.86 s | 1.89 s | | HTTP2 | 1.30 s | 1.49 s | 1.54 s | 1.79 s | 1.55 s | | Obrazy | 9 | 21 | 11 | 19 | 23 | | oszczędności | 11% | 21% | 0% | 4% | 18% |

Pełna konfiguracja Nginx:

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;
}

Efekty 15 miesięcy pracy

Za okres od 12 grudnia 2018 do 28 listopada 2019 serwer pokazał czas sprawności 95,26%. Oznacza to, że ze względu na złą pogodę przestój w roku wyniósł 399 godzin.

Ale jeśli nie weźmie się pod uwagę ostatnich dwóch miesięcy, czas sprawności wyniósł 98,2%, a przestój wyniósł tylko 152 godziny – piszą programiści. Czas sprawności spadł do 80% w ciągu ostatnich dwóch miesięcy, gdy zużycie energii wzrosło w wyniku aktualizacji oprogramowania. Każdej nocy strona nie działała przez kilka godzin.

Według statystyk za rok (od 3 grudnia 2018 r. do 24 listopada 2019 r.) zużycie energii elektrycznej przez serwer wyniosło 9,53 kWh. Odnotowano znaczne straty w systemie fotowoltaicznym na skutek konwersji napięcia i rozładowania akumulatorów. Sterownik solarny wykazał roczne zużycie na poziomie 18,10 kWh, co oznacza, że ​​sprawność systemu wynosi około 50%.

Domowy serwer internetowy zasilany energią słoneczną działał przez 15 miesięcy: czas sprawności 95,26%
Uproszczony schemat. Nie pokazuje konwertera napięcia od 12 do 5 woltów i amperogodzin akumulatora

W okresie objętym badaniem witrynę odwiedziło 865 000 unikalnych użytkowników. Uwzględniając wszystkie straty energii w instalacji fotowoltaicznej, zużycie energii na jednego gościa wyniosło 0,021 Wh. Zatem jedna kilowatogodzina wytworzonej energii słonecznej wystarczy, aby obsłużyć prawie 50 000 unikalnych gości.

Podczas eksperymentu przetestowano panele słoneczne o różnych rozmiarach. Tabela pokazuje obliczenia czasu potrzebnego na ładowanie akumulatorów o różnej pojemności przy zastosowaniu paneli słonecznych o różnych rozmiarach.

Domowy serwer internetowy zasilany energią słoneczną działał przez 15 miesięcy: czas sprawności 95,26%

Średni pobór mocy serwera WWW w pierwszym roku, włączając wszystkie straty energii, wyniósł 1,97 W. Z obliczeń wynika, że ​​działanie strony internetowej przez noc w najkrótszą noc w roku (8 godzin 50 minut, 21 czerwca) wymaga 17,40 watogodzin energii magazynującej, a w najdłuższą noc (14 godzin 49 minut, 21 grudnia) potrzeba 29,19 XNUMX Wh.

Domowy serwer internetowy zasilany energią słoneczną działał przez 15 miesięcy: czas sprawności 95,26%

Ponieważ akumulatory kwasowo-ołowiowe nie powinny rozładowywać się poniżej połowy pojemności, serwer potrzebuje akumulatora 60 Wh, aby przetrwać najdłuższą noc przy optymalnym świetle dziennym (2x29,19 Wh). Przez większą część roku system pracował z baterią 86,4 Wh i panelem słonecznym o mocy 50 W, po czym osiągnięto wspomniane 95-98% czasu sprawności.

Czas pracy 100%

Aby uzyskać 100% czasu pracy, konieczne jest zwiększenie pojemności akumulatora. Aby zrekompensować jeden dzień bardzo złej pogody (bez znacznego wytwarzania energii), potrzeba 47,28 watogodzin (24 godziny x 1,97 wata) pamięci.

Od 1 grudnia 2019 r. do 12 stycznia 2020 r. w systemie zainstalowano akumulator o mocy 168 W, który ma praktyczną pojemność magazynowania 84 Wh. To wystarczająca ilość miejsca, aby witryna działała przez dwie noce i jeden dzień. Konfiguracja została przetestowana w najciemniejszej porze roku, ale pogoda była stosunkowo dobra – a w podanym okresie czas sprawności wyniósł 100%.

Aby jednak zagwarantować 100% dyspozycyjności przez kilka lat, należy uwzględnić najgorszy scenariusz, gdy zła pogoda będzie się utrzymywać przez kilka dni. Obliczenia pokazują, że aby utrzymać witrynę internetową przez cztery dni przy niskim wytwarzaniu energii lub bez niej, potrzebny byłby akumulator kwasowo-ołowiowy o pojemności 440 watogodzin, czyli wielkości akumulatora samochodowego.

W praktyce przy dobrej pogodzie akumulator kwasowo-ołowiowy o pojemności 48 Wh zapewni serwerowi pracę przez noc od marca do września. Bateria 24 Wh wystarczy na maksymalnie 6 godzin pracy serwera, co oznacza, że ​​będzie on wyłączany każdej nocy, chociaż w różnych momentach w zależności od miesiąca.

Ogólnie rzecz biorąc, niektóre witryny nie muszą działać w nocy, gdy liczba odwiedzających jest minimalna, mówią chłopaki z magazynu Low-tech. Na przykład, jeśli jest to regionalna publikacja miejska, do której nie przyjeżdżają goście z innych stref czasowych, a jedynie lokalni mieszkańcy.

Oznacza to, że w przypadku witryn o różnym natężeniu ruchu i różnym czasie pracy potrzebne są akumulatory o różnych pojemnościach i panele słoneczne o różnych rozmiarach.

Domowy serwer internetowy zasilany energią słoneczną działał przez 15 miesięcy: czas sprawności 95,26%

Domowy serwer internetowy zasilany energią słoneczną działał przez 15 miesięcy: czas sprawności 95,26%

Autor podaje obliczenia ile energii potrzeba na to produkcja same panele słoneczne (energia ucieleśniona) i ile się okaże, jeśli podzielisz tę kwotę przez oczekiwany okres użytkowania wynoszący 10 lat.

Domowy serwer internetowy zasilany energią słoneczną działał przez 15 miesięcy: czas sprawności 95,26%

W ten sposób można obliczyć równowartość paliw kopalnych zużywanych przy produkcji i eksploatacji paneli. Magazyn Low-tech ustalił, że w pierwszym roku działania ich system (panel 50 W, akumulator 86,4 Wh) „wygenerował” około 9 kg emisji, co odpowiada spaleniu 3 litrów benzyny: mniej więcej tyle samo, co 50- roczny samochód osobowy km podróży.

Domowy serwer internetowy zasilany energią słoneczną działał przez 15 miesięcy: czas sprawności 95,26%

Jeśli serwer będzie zasilany nie z paneli słonecznych, ale z ogólnej sieci energetycznej, wówczas równoważna emisja wydaje się być sześciokrotnie niższa: 1,54 kg (hiszpański sektor energetyczny ma duży udział energii alternatywnych i elektrowni jądrowych). Nie jest to jednak porównanie do końca trafne – pisze autor, gdyż uwzględnia energię ucieleśnioną w infrastrukturze fotowoltaicznej, ale nie uwzględnia tego wskaźnika dla ogólnej sieci energetycznej, czyli kosztów jej budowy i utrzymania .

Dalsze doskonalenia

W ostatnim czasie przeprowadzono szereg optymalizacji, które zmniejszyły zużycie energii przez serwer. Na przykład w pewnym momencie programista zauważył, że 6,63 TB z całkowitego 11,15 TB ruchu zostało wygenerowane przez jedną nieprawidłową implementację kanału RSS, który pobierał zawartość co kilka minut. Po naprawieniu tego błędu pobór mocy serwera (bez strat energii) spadł z 1,14 W do około 0,95 W. Zysk może wydawać się niewielki, ale różnica 0,19 W oznacza 4,56 watogodzin dziennie, co odpowiada ponad 2,5 godzinom pracy serwera na baterii.

W pierwszym roku wydajność wynosiła tylko 50%. Straty zaobserwowano przy ładowaniu i rozładowywaniu akumulatora (22%), a także przy konwersji napięcia z 12 V (system fotowoltaiczny) na 5 V (USB), gdzie straty sięgały aż 28%. Deweloper przyznaje, że ma suboptymalną przetwornicę napięcia (sterownik bez wbudowanego USB), więc można zoptymalizować ten punkt lub przejść na instalację fotowoltaiczną 5V.

Aby poprawić efektywność magazynowania energii, akumulatory kwasowo-ołowiowe można zastąpić droższymi akumulatorami litowo-jonowymi, które charakteryzują się niższymi stratami podczas ładowania/rozładowania (<10%). Teraz projektant rozważa kompakt system magazynowania energii w postaci sprężonego powietrza (CAES), którego żywotność sięga kilkudziesięciu lat, co oznacza mniejszy ślad węglowy powstający przy jego produkcji.

Domowy serwer internetowy zasilany energią słoneczną działał przez 15 miesięcy: czas sprawności 95,26%
Kompaktowy akumulator energii sprężonego powietrza, źródło

Rozważana jest instalacja dodatkowej turbiny wiatrowej (możliwe zrobić z drewna) i zainstalowanie modułu śledzącego energię słoneczną, aby skierować panele w stronę słońca. Tracker pozwala zwiększyć produkcję energii elektrycznej o 30%.

Domowy serwer internetowy zasilany energią słoneczną działał przez 15 miesięcy: czas sprawności 95,26%

Innym sposobem na zwiększenie wydajności systemu jest jego skalowanie. Twórz więcej witryn internetowych na serwerze i uruchamiaj więcej serwerów. Wtedy zużycie energii na obiekt spadnie.

Domowy serwer internetowy zasilany energią słoneczną działał przez 15 miesięcy: czas sprawności 95,26%
Firma hostingowa Solar. Ilustracja: Diego Marmolejo

Jeśli pokryjesz cały balkon swojego mieszkania panelami słonecznymi i otworzysz firmę hostingową zajmującą się energią słoneczną, koszt na klienta będzie znacznie niższy niż w przypadku pojedynczej strony internetowej: korzyści skali.

Ogólnie rzecz biorąc, eksperyment ten pokazuje, że przy pewnych ograniczeniach całkowicie możliwe jest korzystanie z infrastruktury komputerowej w oparciu o odnawialne źródła energii.

Teoretycznie taki serwer mógłby obejść się nawet bez baterii, gdyby miał swoje odbicie w innych częściach świata. Na przykład zainstaluj lustra w Nowej Zelandii i Chile. Tam panele słoneczne będą działać, gdy w Barcelonie zapadnie noc.

Źródło: www.habr.com

Dodaj komentarz