Перший прототип сонячного сервера із контролером заряду. Фото:
У вересні 2018 року ентузіаст із Low-tech Magazine
Можете зайти на сервер
Незадовго до світанку 31 січня 2020 року залишалося 42% заряду батареї. Світанок у Барселоні о 8:04 за місцевим часом, після цього має піти струм із сонячної панелі.
Навіщо?
Десять років тому експерти
IT-компанії запустили ініціативи щодо переходу на альтернативні джерела харчування, але це зараз неможливо. Усі дата-центри споживають утричі більше енергії, ніж генерують усі сонячні та вітряні установки у світі. Гірше того, виробництво та регулярна заміна сонячних панелей та вітряків
Low-tech Журнал
Збільшення обсягів трафіку
Ну і звичайно, підвищення навантаження створюється самим способом життя: люди майже весь час проводять в інтернеті та багато в чому покладаються на різні веб-сервіси. Сучасне суспільство вже важко уявити без хмарної IT-інфраструктури (соціальні мережі, месенджери, пошта тощо)
Конфігурація сервера та веб-сайту
В
Одноплатний комп'ютер
Olimex Olinuxino A20 Lime 2
Спочатку в якості акумулятора вибрали літій-полімерну батарею ємністю 6600 мАч (близько 24 Втч), потім поставили кислотно-свинцевий акумулятор на 84,4 Втч.
Операційна система завантажується із SD-карти. Хоча ОС займає трохи більше 1 ГБ, а статичний веб-сайт близько 30 МБ, але було економічного сенсу купувати карту менше, ніж Class 10 16 ГБ.
Сервер підключається до мережі через 100-мегабітне домашнє з'єднання в Барселоні та стандартний споживчий маршрутизатор. Для нього зарезервована статична IP-адреса. Практично кожен може підняти такий сайт у себе в квартирі, потрібно трохи змінити налаштування файрвола для форвардингу портів на локальний IP:
Port 80 to 80 for HTTP Port 443 to 443 for HTTPS Port 22 to 22 for SSH
Операційна система
50-ватна сонячна панель для веб-сервера та 10-ватна панель для освітлення вітальні у квартирі автора
Статичний сайт згенерований системою
Дуже важливий момент – стиснення зображень, оскільки без цієї оптимізації практично неможливо зробити веб-сторінки менше 1 мегабайта. Для оптимізації було вирішено перевести фотографії на напівтонові зображення. Для прикладу, ось фотографія дівчат-телефоністок на комутаторі минулого століття,
А ось оптимізоване напівтонове зображення розміром
Напівтонові фотографії вибрали не тільки для оптимізації розміру (рішення досить сумнівне), а й з естетичних міркувань. Ця стара техніка обробки зображень має певні стильові особливості, так що у сайту вийшов в якомусь сенсі унікальний дизайн.
623 ілюстрації на сайті журналу Low-tech Magazine після оптимізації зменшилися у розмірі зі 194,2 МБ до 21,3 МБ, тобто на 89%.
Всі старі статті конвертували в Markdown для простоти написання нових статей, а також для простоти резервного копіювання через
На випадок даунтайму організовано можливість «офлайнового читання»: тексти та картинки експортуються до RSS-фіду. Включено кешування 100% контенту, включаючи HTML.
Ще одна оптимізація - включення налаштування HTTP2 в nginx, що трохи зменшує трафік і скорочує час завантаження сторінок порівняно з HTTP/1.1. У таблиці порівнюються результати п'яти різних сторінок.
| | FP | WE | 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 | | Images | 9 | 21 | 11 | 19 | 23 | | savings | 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 року сервер показав
Але якщо не брати до уваги останні два місяці, то час безвідмовної роботи становив 98,2%, а час простою — лише 152 години, пишуть розробники. Час безвідмовної роботи впав до 80% протягом останніх двох місяців, коли споживання енергії збільшилося через оновлення програмного забезпечення. Щоночі сайт відключався на кілька годин.
За статистикою, за рік (з 3 грудня 2018 року по 24 листопада 2019 року) споживання електроенергії сервером становило 9,53 кВт⋅год. Зафіксовано значні втрати у фотоелектричній системі через перетворення напруги та розряду батареї. Сонячний контролер показав річне споживання 18,10 кВт·год, що означає ефективність системи близько 50%.
Спрощена схема. На ній не показані перетворювач напруги з 12 на 5 вольт та батарейний лічильник ампер-годин.
За досліджуваний період на сайт зайшли 865 тисяч унікальних відвідувачів. Включаючи всі втрати енергії в сонячній установці, витрата енергії на одного унікального відвідувача становила 000 Вт·ч. Таким чином, однієї кіловат-години сонячної енергії, що виробляється, вистачає на обслуговування майже 0,021 50 унікальних відвідувачів.
За час експерименту випробовувалися сонячні панелі різного розміру. У таблиці наведено розрахунки, за який час зарядяться акумулятори різної ємності під час використання сонячних панелей різного розміру.
Середня споживана потужність веб-сервера протягом першого року, включаючи всі втрати енергії, становила 1,97 Вт. Розрахунок показує, що для підтримки веб-сайту вночі в найкоротшу ніч року (8 годин 50 хвилин, 21 червня) потрібно 17,40 Вт-години потужності зберігання, а в найдовшу ніч (14 годин 49 хвилин, 21 грудня) потрібно 29,19 ,XNUMX Вт⋅ч.
Оскільки свинцево-кислотні батареї не повинні розряджатися нижче половини ємності, серверу потрібно батарея на 60 Втч, щоб пережити найдовшу ніч при оптимальній освітленості вдень (2×29,19 Втч). Більшу частину року система працювала з акумулятором 86,4 Вт·ч і 50-ватною сонячною панеллю, тоді і було досягнуто вищезазначеного аптайму 95-98%.
Аптайм 100%
Для аптайму 100% необхідно збільшити ємність акумуляторів. Щоб компенсувати один день дуже поганої погоди (без значної генерації електроенергії), потрібно 47,28 Вт-години (24 години × 1,97 Вт) сховища.
З 1 грудня 2019 року по 12 січня 2020 року в систему поставили 168-ватну батарею, яка має практичну ємність зберігання 84 ват-години. Цього сховища достатньо, щоб підтримувати роботу сайту протягом двох ночей та одного дня. Конфігурацію тестували в темний період року, але погода була відносно гарною — і за вказаний період час безвідмовної роботи становив 100%.
Але щоб гарантувати аптайм 100% протягом кількох років, доведеться передбачити і найгірший сценарій, коли погана погода зберігається кілька днів. Розрахунок показує: щоб підтримувати сайт в онлайні протягом чотирьох днів з низькою або нульовою генерацією енергії, знадобиться свинцево-кислотна батарея ємністю 440 ват-годин, тобто розміром з автомобільний акумулятор.
На практиці за хорошої погоди свинцево-кислотна батарея ємністю 48 Втч буде підтримувати роботу сервера протягом ночі з березня по вересень. Батарея на 24 Втч протримає сервер максимум 6 годин, тобто він буде відключатися щоночі, хоча і в різний час, залежно від місяця.
За великим рахунком, деяким сайтам необов'язково працювати вночі, коли кількість відвідувачів мінімальна, вважають хлопці з Low-tech Magazine. Наприклад, якщо це регіональне міське видання, куди не заходять відвідувачі інших часових поясів, а лише місцеві жителі.
Тобто для сайтів з різною відвідуваністю та різним аптаймом потрібні акумулятори різної ємності та сонячні батареї різного розміру.
Автор наводить розрахунок, скільки енергії потрібно для виробництва самих сонячних панелей (embodied energy) і скільки виходить, якщо поділити цю кількість на очікуваний термін служби 10 років.
Таким чином, можна розрахувати аналог викопного палива, яке витрачено на виробництво та експлуатацію панелей. Low-tech Magazine вийшло, що за перший рік роботи їх система (панель 50 Вт, батарея 86,4 Вт·ч) «згенерувала» приблизно 9 кг викидів або еквівалент спалювання 3 л бензину: приблизно стільки ж, скільки легковий автомобіль за 50 км ходу.
Якщо запитувати сервер не від сонячних батарей, а від загальної енергомережі, то еквівалент викидів начебто виходить ушестеро нижче: 1,54 кг (в іспанській енергетиці висока частка альтернативної енергетики та АЕС). Але це не зовсім коректне порівняння, пише автор, бо воно враховує embodied energy сонячної інфраструктури, але не враховує цей показник для загальної енергомережі, тобто витрати на її будівництво та підтримку.
подальші поліпшення
За минулий час проведено низку оптимізацій, що знизили енергоспоживання сервера. Наприклад, у якийсь момент розробник зауважив, що 6,63 ТБ із загального обсягу 11,15 ТБ трафіку генерує одна некоректна реалізація RSS-фіду, яка витягує контент кожні кілька хвилин. Після виправлення цього бага енергоспоживання сервера (без урахування втрат енергії) знизилося з 1,14 Вт до 0,95 Вт. Виграш може бути невеликим, але різниця в 0,19 Вт означає 4,56 ват-години за добу, що відповідає більше 2,5 годин автономної роботи сервера.
Протягом першого року ккд становив лише 50%. Втрати спостерігалися при зарядці та розрядженні акумулятора (22%), а також при перетворенні напруги з 12 В (сонячна фотоелектрична система) на 5 В (USB), де втрати становлять до 28%. Розробник визнає, що має неоптимальний перетворювач напруги (контролер без вбудованого USB), тому можна оптимізувати цей момент або перейти на сонячну установку 5V.
Для підвищення ефективності зберігання енергії можна замінити свинцево-кислотні акумулятори на більш дорогі літій-іонні батареї, у яких менші втрати заряду/розряду (<10%). Наразі конструктор розглядає компактну
Компактний акумулятор енергії на стисненому повітрі,
Розглядається встановлення додаткової вітряної турбіни (її можна
Ще один спосіб підвищення ефективності системи – її масштабування. Піднімати на сервері більше веб-сайтів та запускати більше серверів. Тоді зменшиться витрата енергії з розрахунку на кожен сайт.
Компанія сонячного хостингу. Ілюстрація: Дієго Мармолехо
Якщо покрити сонячними панелями весь балкон квартири і відкрити компанію сонячного веб-хостингу, то витрати на кожного клієнта будуть значно нижчими, ніж на єдиний сайт: економія від масштабу.
В цілому цей експеримент демонструє, що при певних обмеженнях комп'ютерна інфраструктура цілком може працювати на відновлюваних джерелах енергії.
Теоретично, такий сервер може навіть обійтися без акумулятора, якщо віддзеркалювати його в інших частинах світу. Наприклад, поставити дзеркала в Новій Зеландії та Чилі. Там сонячні панелі працюватимуть, коли у Барселоні ніч.
Джерело: habr.com