Захранван от слънчева енергия домашен уеб сървър работи 15 месеца: време на работа 95,26%

Захранван от слънчева енергия домашен уеб сървър работи 15 месеца: време на работа 95,26%
Първият прототип на соларен сървър с контролер за зареждане. снимка: solar.lowtechmagazine.com

През септември 2018 г. ентусиаст от Low-tech Magazine стартира проект за „нискотехнологичен“ уеб сървър. Целта беше да се намали консумацията на енергия толкова много, че един слънчев панел да е достатъчен за домашен сървър, който се хоства самостоятелно. Това не е лесно, защото сайтът трябва да работи 24 часа в денонощието. Да видим какво се получи накрая.

Можете да отидете на сървъра solar.lowtechmagazine.com, проверете текущата консумация на енергия и нивото на зареждане на батерията. Сайтът е оптимизиран за минимален брой заявки от страницата и минимален трафик, така че трябва да издържи скок в трафика от Habr. Според изчисленията на разработчика, консумацията на енергия на уникален посетител е 0,021 Wh.

Точно преди зазоряване на 31 януари 2020 г. имаше 42% оставащ заряд на батерията. Зазоряване в Барселона в 8:04 местно време, след което трябва да потече ток от слънчевия панел.

Захранван от слънчева енергия домашен уеб сървър работи 15 месеца: време на работа 95,26%

Защо?

Преди десет години експерти предвиденоче развитието на интернет допринася за „дематериализацията“ на обществото, универсалната цифровизация - и в резултат на това намаляване на общото потребление на енергия. Грешаха. Всъщност самият Интернет изискваше огромно количество енергияи тези обеми продължават да растат.

ИТ компаниите стартираха инициативи за преминаване към алтернативни източници на енергия, но това вече е невъзможно. Всички центрове за данни консумират три пъти повече енергия, отколкото генерират всички слънчеви и вятърни инсталации в света. Още по-лошо е производството и редовната подмяна на слънчеви панели и вятърни турбини също изисква енергия, следователно днес е просто невъзможно да се изоставят изкопаемите горива (нефт, газ, уран). Но тези резерви няма да стигнат за дълго, така че неизбежно ще трябва да мислим как да живеем от възобновяеми източници. Включително експлоатация на компютърна инфраструктура, включително уеб сървъри.

Списание за ниски технологии смята го за проблем Уеб страниците се раздуват твърде бързо. Средният размер на страницата се е увеличил от 2010 до 2018 г от 0,45 MB до 1,7 MB, а за мобилни сайтове - от 0,15 MB до 1,6 MB, консервативна оценка.

Увеличаване на обема на трафика изпреварва напредъка в енергийната ефективност (енергията, необходима за предаване на 1 мегабайт информация), което води до постоянно нарастване на консумацията на интернет енергия. По-тежките и по-натоварени сайтове не само увеличават натоварването на мрежовата инфраструктура, но и съкращават „жизнения цикъл“ на компютрите и смартфоните, които трябва по-често да се изхвърлят и да се произвеждат нови, което също много енергоемък процес.

И разбира се, повишеното натоварване се създава от самия начин на живот: хората прекарват почти цялото си време в интернет и разчитат в голяма степен на различни уеб услуги. Вече е трудно да си представим съвременното общество без облачна ИТ инфраструктура (социални мрежи, месинджъри, поща и др.)

Конфигурация на сървър и уебсайт

В тази статия Хардуерната конфигурация и софтуерният стек на уеб сървъра са описани подробно.

Едноплатков компютър Olimex Olinuxino A20 Лайм 2 избран за ниска консумация на енергия и полезни допълнителни функции като чип за управление на захранването AXP209. Позволява ви да поискате статистика за текущото напрежение и ток от платката и батерията. Микросхемата автоматично превключва захранването между батерията и DC конектора, където тече ток от слънчевия панел. По този начин е възможно непрекъснато захранване на сървъра с поддръжка на батерия.

Захранван от слънчева енергия домашен уеб сървър работи 15 месеца: време на работа 95,26%
Olimex Olinuxino A20 Лайм 2

Първоначално като батерия беше избрана литиево-полимерна батерия с капацитет 6600 mAh (около 24 Wh), след което беше инсталирана оловно-киселинна батерия с капацитет 84,4 Wh.

Операционната система се зарежда от SD картата. Въпреки че операционната система заема не повече от 1 GB, а статичният уебсайт е около 30 MB, нямаше икономически смисъл да се купува карта, по-малка от Class 10 16 GB.

Сървърът се свързва с интернет чрез 100Mbps домашна връзка в Барселона и стандартен потребителски рутер. За него е запазен статичен IP адрес. Почти всеки може да настрои такъв сайт в апартамента си; трябва леко да промените настройките на защитната стена, за да пренасочите портове към локален IP:

Порт 80 до 80 за HTTP
Порт 443 до 443 за HTTPS
Порт 22 до 22 за SSH

Операционна система Armbian Stretch базиран на дистрибуция и ядро ​​на Debian SUNXI, който е предназначен за единични платки с чипове AllWinner.

Захранван от слънчева енергия домашен уеб сървър работи 15 месеца: време на работа 95,26%
Соларен панел 50 вата за уеб сървър и соларен панел 10 вата за осветление на хола в апартамента на автора

Статичен сайт, генериран от системата пеликан (генератор на сайтове в Python). Статичните сайтове се зареждат по-бързо и изискват по-малко CPU, така че са много по-енергийно ефективни от динамично генерираните страници. Вижте изходния код на темата. тук.

Много важен момент е компресирането на изображения, тъй като без тази оптимизация е почти невъзможно да се направят уеб страници по-малки от 1 мегабайт. За оптимизация беше решено снимките да се конвертират в полутонови изображения. Например, ето снимка на телефонни операторки на комутатор през миналия век, 253 KB.

Захранван от слънчева енергия домашен уеб сървър работи 15 месеца: време на работа 95,26%

И ето оптимизирано изображение в сива скала на размер 36,5 KB с три цвята (черно, бяло, сиво). Поради оптическата илюзия на зрителя изглежда, че има повече от три цвята.

Захранван от слънчева енергия домашен уеб сървър работи 15 месеца: време на работа 95,26%

Полутоновите снимки бяха избрани не само за оптимизиране на размера (доста съмнително решение), но и по естетически причини. Тази стара техника за обработка на изображения има определени стилистични характеристики, така че сайтът има донякъде уникален дизайн.

След оптимизация, 623 илюстрации на уебсайта на Low-tech Magazine са намалели по размер от 194,2 MB на 21,3 MB, тоест с 89%.

Всички стари статии бяха преобразувани в Markdown за по-лесно писане на нови статии, както и за по-лесно архивиране чрез Git. Всички скриптове и тракери, както и лога бяха премахнати от сайта. Използва се шрифтът по подразбиране в браузъра на клиента. Като “лого” - името на списанието с главни букви със стрелка вляво: LOW←TECH MAGAZINE. Само 16 байта вместо картина.

В случай на прекъсване е организирана възможността за „офлайн четене“: текстове и снимки се експортират в RSS емисия. Активирано е кеширане на 100% съдържание, включително HTML.

Друга оптимизация е активирането на HTTP2 настройки в nginx, което леко намалява трафика и намалява времето за зареждане на страницата в сравнение с HTTP/1.1. Таблицата сравнява резултатите за пет различни страници.

| | FP | НИЕ | HS | FW | CW |
|----------|-------|-------|-------|-------|------ -|
| HTTP/1.1 | 1.46s | 1.87s | 1.54s | 1.86s | 1.89s |
| HTTP2 | 1.30s | 1.49s | 1.54s | 1.79s | 1.55s |
| Изображения | 9 | 21 | 11 | 19 | 23 |
| спестявания | 11% | 21% | 0% | 4% | 18% |

Пълна конфигурация на 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;
}

Резултати от 15 месеца работа

За периода от 12 декември 2018 г. до 28 ноември 2019 г. сървърът показа време на работа 95,26%. Това означава, че поради лошото време престоят за годината е бил 399 часа.

Но ако не вземете предвид последните два месеца, времето на работа е 98,2%, а времето на престой е само 152 часа, пишат разработчиците. Времето за работа спадна до 80% през последните два месеца, когато консумацията на енергия се увеличи поради актуализация на софтуера. Всяка вечер сайтът спираше за няколко часа.

Според статистиката за годината (от 3 декември 2018 г. до 24 ноември 2019 г.) потреблението на електроенергия на сървъра е 9,53 kWh. Регистрирани са значителни загуби във фотоволтаичната система поради преобразуване на напрежението и разреждане на батерията. Соларният контролер показа годишна консумация от 18,10 kWh, което означава, че ефективността на системата е около 50%.

Захранван от слънчева енергия домашен уеб сървър работи 15 месеца: време на работа 95,26%
Опростена диаграма. Не показва преобразувател на напрежение от 12 на 5 волта и амперчасов метър на батерията

През периода на изследването 865 000 уникални посетители са посетили сайта. Включвайки всички загуби на енергия в слънчевата инсталация, потреблението на енергия на отделен посетител е 0,021 Wh. Така един киловатчас генерирана слънчева енергия е достатъчен, за да обслужи почти 50 000 уникални посетители.

По време на експеримента са тествани слънчеви панели с различни размери. Таблицата показва изчисления колко време ще отнеме зареждането на батерии с различен капацитет при използване на слънчеви панели с различни размери.

Захранван от слънчева енергия домашен уеб сървър работи 15 месеца: време на работа 95,26%

Средната консумация на енергия на уеб сървъра през първата година, включително всички загуби на енергия, беше 1,97 вата. Изчислението показва, че работата на уебсайт през нощта през най-късата нощ в годината (8 часа 50 минути, 21 юни) изисква 17,40 вата часа мощност за съхранение, а през най-дългата нощ (14 часа 49 минути, 21 декември) ви трябват 29,19 .XNUMX Wh.

Захранван от слънчева енергия домашен уеб сървър работи 15 месеца: време на работа 95,26%

Тъй като оловно-киселинните батерии не трябва да се разреждат под половината капацитет, сървърът изисква 60 Wh батерия, за да оцелее в най-дългата нощ с оптимална дневна светлина (2x29,19 Wh). През по-голямата част от годината системата работеше с 86,4 Wh батерия и 50-ватов соларен панел, след което беше постигнат гореспоменатия 95-98% ъптайм.

Време на работа 100%

За 100% ъптайм е необходимо да увеличите капацитета на батерията. За да се компенсира един ден с много лошо време (без значително генериране на електроенергия), са необходими 47,28 вата часа (24 часа × 1,97 вата) съхранение.

От 1 декември 2019 г. до 12 януари 2020 г. в системата е инсталирана 168-ватова батерия, която има практически капацитет за съхранение от 84 вата часа. Това е достатъчно място за съхранение, за да поддържа сайта да работи две нощи и един ден. Конфигурацията беше тествана през най-мрачния период от годината, но времето беше сравнително добро - и през посочения период времето за работа беше 100%.

Но за да гарантирате 100% непрекъсната работа за няколко години, ще трябва да предвидите най-лошия сценарий, когато лошото време продължава няколко дни. Изчислението показва, че за да поддържате уебсайт онлайн в продължение на четири дни с ниско или никакво генериране на енергия, ще ви е необходима оловно-киселинна батерия с капацитет от 440 ватчаса, което е с размерите на автомобилна батерия.

На практика, при добри метеорологични условия, 48 Wh оловно-киселинна батерия ще поддържа сървъра работещ през нощта от март до септември. Батерията от 24 Wh ще издържи на сървъра максимум 6 часа, което означава, че ще се изключва всяка вечер, макар и в различно време в зависимост от месеца.

Като цяло някои сайтове не трябва да работят през нощта, когато броят на посетителите е минимален, казват момчетата от Low-tech Magazine. Например, ако това е регионално градско издание, където не идват посетители от други часови зони, а само местни жители.

Тоест за сайтове с различен трафик и различно време на работа са необходими батерии с различен капацитет и слънчеви панели с различни размери.

Захранван от слънчева енергия домашен уеб сървър работи 15 месеца: време на работа 95,26%

Захранван от слънчева енергия домашен уеб сървър работи 15 месеца: време на работа 95,26%

Авторът дава изчисление колко енергия е необходима за производство самите слънчеви панели (въплътена енергия) и колко излиза, ако разделите това количество на очаквания експлоатационен живот от 10 години.

Захранван от слънчева енергия домашен уеб сървър работи 15 месеца: време на работа 95,26%

По този начин е възможно да се изчисли еквивалентът на изкопаемите горива, които се изразходват при производството и експлоатацията на панелите. Low-tech Magazine установи, че през първата година на работа тяхната система (50 W панел, 86,4 Wh батерия) е „генерирала“ приблизително 9 kg емисии или еквивалента на изгарянето на 3 литра бензин: приблизително същото като 50- годишна кола км.

Захранван от слънчева енергия домашен уеб сървър работи 15 месеца: време на работа 95,26%

Ако сървърът се захранва не от слънчеви панели, а от общата електрическа мрежа, тогава еквивалентните емисии изглеждат шест пъти по-ниски: 1,54 kg (испанският енергиен сектор има висок дял на алтернативна енергия и атомни електроцентрали). Но това не е напълно коректно сравнение, пише авторът, тъй като отчита въплътената енергия на слънчевата инфраструктура, но не взема предвид този показател за общата енергийна мрежа, тоест разходите за нейното изграждане и поддръжка .

Допълнителни подобрения

През изминалото време бяха извършени редица оптимизации, които намалиха консумацията на енергия на сървъра. Например, в един момент разработчикът забеляза, че 6,63 TB от общо 11,15 TB трафик е генериран от една неправилна реализация на RSS емисия, която изтегля съдържание на всеки няколко минути. След коригирането на тази грешка, консумацията на енергия на сървъра (с изключение на загубите на енергия) намаля от 1,14 W на приблизително 0,95 W. Печалбата може да изглежда малка, но разлика от 0,19 W означава 4,56 ватчаса на ден, което съответства на повече от 2,5 часа живот на батерията за сървъра.

През първата година ефективността беше само 50%. Наблюдавани са загуби при зареждане и разреждане на батерията (22%), както и при преобразуване на напрежението от 12 V (соларна PV система) към 5 V (USB), където загубите са до 28%. Разработчикът признава, че има неоптимален преобразувател на напрежение (контролер без вграден USB), така че можете да оптимизирате тази точка или да преминете към 5V соларна инсталация.

За да се подобри ефективността на съхранение на енергия, оловно-киселинните батерии могат да бъдат заменени с по-скъпи литиево-йонни батерии, които имат по-ниски загуби при зареждане/разреждане (<10%). Сега дизайнерът обмисля компактен система за съхранение на енергия под формата на сгъстен въздух (CAES), който има живот от десетилетия, което означава по-малък въглероден отпечатък върху производството му.

Захранван от слънчева енергия домашен уеб сървър работи 15 месеца: време на работа 95,26%
Компактен енергиен акумулатор за сгъстен въздух, източник

Обмисля се инсталиране на допълнителна вятърна турбина (може да бъде направи от дърво) и инсталиране на слънчев тракер за обръщане на панелите към слънцето. Тракерът ви позволява да увеличите производството на електроенергия с 30%.

Захранван от слънчева енергия домашен уеб сървър работи 15 месеца: време на работа 95,26%

Друг начин за повишаване на ефективността на системата е нейното мащабиране. Повишете повече уебсайтове на сървъра и стартирайте повече сървъри. Тогава консумацията на енергия на обект ще намалее.

Захранван от слънчева енергия домашен уеб сървър работи 15 месеца: време на работа 95,26%
Слънчева хостинг компания. Илюстрация: Диего Мармолехо

Ако покриете балкона на целия си апартамент със слънчеви панели и отворите соларна уеб хостинг компания, цената на клиент ще бъде значително по-ниска, отколкото за един уебсайт: икономии от мащаба.

Като цяло този експеримент демонстрира, че при определени ограничения е напълно възможно компютърната инфраструктура да работи с възобновяеми енергийни източници.

Теоретично, такъв сървър може дори да се справи без батерия, ако бъде огледален в други части на света. Например, инсталирайте огледала в Нова Зеландия и Чили. Там слънчевите панели ще работят, когато в Барселона е нощ.

Източник: www.habr.com

Добавяне на нов коментар