В началото на месец декември закупих комплекта Home-server, който Олимекс предлагат.
Комплекта включва платката(SBC) A20-OLinuXino-LIME2-s16M, 32GB micro SD flash card, метална кутия за платката, метална кутия за 2,5″ харддист (или SATA SSD), платка за свързване на SATA HDD/SSD към SBC, захранващ адаптер и батерия 1400mAh 3,7V и UTP кабел за връзка с интернет.
Може да закупите комплекта от тук.
За операционна система избрах Armbian 21 Buster minimal с Linux kernel 5.10.х. Както се подразбира от името, това е операционна система базирана на Debian Buster и е без графична среда, подходяща за домашен сървър.
A20-OLinuXino-LIME2-s16M има двуядрен Cortex-A7 процесор с честота 1000 MHz, 1GB DDR3 RAM, SATA конектор, 2 USB конектора, гигабитов мрежов адаптер,HDMI конектор, конектор за батерия и много GPIO.
Причината да избера точно този комплект е в това, че Олимекс произвеждат тази платка като OSHW (опен сорс хардуер). Платката е достатъчно мощна за домашен сървър и разполага с гигабитов порт за връзка с интернет. SATA интерфейса позволява да се включи допълнителен диск, който да съхранява файловете. Допълнителен плюс е вградената поддръжка на батерия, което позволява работата на платката дори и след прекъсване на електрозахранването. Всички тези плюсове направиха A20-OLinuXino-LIME2-s16M, предпочитана за мен платка пред конкурентите от RPi.
Първоначално монтирах един 2TB Seagate. Операционната система беше инсталирана на SD картата. Машината работи до 6-ти март (повече от 2 месеца) без прекъсване.
Написах скрипт който да извършва мониторинг на системата и на всяка минута записва в база данни основни параметри – ток и напрежение на батерията и AC адаптера, температура на процесора, използвано място на дисковете. Както и проверка дали са достъпни няколко уеб сайта, за мониторинг на свързаността . Също така инсталирах и cli версията на speedtest и на всеки 15 мин извършвах спийдтест и записвах резултата в базата данни.
Всичко това доведе до повреда на файловата система на SD картата. Явно множеството записи във файловата система, не са препоръчителни за SD картите. Скриптовете генерират около 200 000 записа в базата данни ( за 2 месеца работа), и всичко това без да броим промените по файловете които се извършват при инсталирането и ъпдейтването на пакетите.
След тази повреда, направих малка промяна. Закупих един 240GB SSD PNY CS900 SSD. Този път реших да инсталирам операционната система на него. Това е лесно, защото Armbian разполага с конфигурационен скрипт, който копира системата на SSD и коригира boot процеса. Така конфигурацията на системата позволява работата на операционната система на SSD диска. Това позволява да се извършват записи в базата данни на всяка минута, без това да повреди файловата система.
Към момента машината изпълнява функциите на самба сървър, уеб сървър, медиен сървър и мониторинг система. Инсталиран е следния софтуер за да се изпълни това – samba, apache2, php7.3, mariadb 10.3, minidlna, grafana и observium.
Благодарение на PHP и Apache, спретнах тази демонстрационна страничка home.danaildr.eu. Кода не е много елегантен, даже може да се каже, че си е спагети код. Поради тази причина за момента няма да го публикувам. На по-късен етап ще публикувам него и скриптовете събиращи данните за системата.
Системата консумира около 2W електроенергия в покой, а когато се натовари около 2,7-2,9W. При тестовете за работа на батерия, при 1 час работа заряда на батерията пада до около 60%, което предполага около 2 часа и половина работа. В сайта на Олимекс е записано, че батерията осигурява около 3 часа автономна работа. На снимките по-долу се виждат няколко графики от observium и grafana които показват състоянието на системата и историята на някои от следените параметри.