Konfiguracja serwera sieciowego typu Network Attached Storage o niskim poborze mocy i wysokiej odporności

Mark Harris
|  Utworzono: wrzesień 23, 2019  |  Zaktualizowano: marzec 16, 2020

Budowa urządzenia Internetu Rzeczy lub nagrywanie ciągłego wideo wymaga systemu przechowywania o niskim poborze mocy i dużej pojemności, najlepiej wykorzystującego niedrogie komponenty. W konkretnych przypadkach twoje urządzenie może być zdalne lub może być narażone na wysokie intensywności wibracji, na przykład będąc zamontowane na kawałku sprzętu przemysłowego, na robocie lub w pojeździe. Takie okoliczności czynią pamięć typu solid-state niezbędną.

Raspberry Pi?

Zacząłem od rozważenia budowy serwera sieciowego do przechowywania danych wykorzystującego Raspberry Pi; w końcu są to świetne małe komputery na jednej płytce. Jednakże, jest kilka rzeczy, które czynią je mniej niż idealnymi do tego typu zastosowań. Po pierwsze, port sieciowy ma tylko 300Mbit/s w najnowszym modelu 3B+, i 100Mbit/s w starszych generacjach. Po drugie, porty USB są tylko USB 2.0 (480Mbit/s), więc są znacznie wolniejsze niż USB 3.0 (5Gbit/s). Złącza USB nie zawsze są najlepsze w środowiskach o wysokich wibracjach i mogą mieć przerywane błędy połączenia z tego powodu, lub zawodzić z powodu zmęczenia materiału, jeśli kabel nie jest dobrze zabezpieczony. Kable USB, szczególnie te 2.0, również nie radzą sobie zbyt dobrze w środowiskach o wysokim EMI, takich jak w pobliżu silników napędzanych przez przemienniki częstotliwości.

ODroid HC1!

Po porównaniu wielu atrakcyjnych opcji dostępnych na rynku, zdecydowałem się na zakup ODroid HC1 (Home Cloud 1) od ich brytyjskiego dystrybutora (https://odroid.co.uk). To bardzo kompaktowy i rozsądnie wyceniony jednopłytkowy komputer. Reklamowane wyniki testów są dość zdumiewające dla HC1, w porównaniu z innymi jednopłytkowymi komputerami w podobnym przedziale cenowym.

Przy zakupie bezpośrednio od Hard Kernel, jednostka kosztowałaby 49 USD, nie uwzględniając wysyłki, zasilacza ani dysku twardego. Hard Kernel oferuje również kilka bardzo imponujących płyt w formacie RasPi, z ogromną mocą obliczeniową dla tych, którzy są gotowi za to zapłacić. HC1 przyciągnął mnie ze względu na dedykację do kontrolowania sieciowego magazynu danych, całkowicie pozbawionego wszelkich zbędnych funkcji. Jest również dość kompaktowy, pomimo że jest zamontowany na ogromnym radiatorze, który pełni również funkcję otwartej obudowy, z opcją dołączenia górnej pokrywy dla tych, którzy by tego chcieli.

Chciałbym, aby miał wbudowaną funkcjonalność WiFi, jak również możliwość obsługi wielu dysków dla RAID i bezpieczeństwa danych w przypadku awarii dysku. Chociaż Odroid HC1 nie posiada takich funkcji, zachowuje pojedynczy port USB, który opcjonalnie może być użyty do podłączenia dongla WiFi USB. Interesowało mnie WiFi ze względu na wygodę, aby móc sprawdzać zawartość dysku z urządzenia mobilnego, a nie do zapisywania lub odczytywania dużych ilości danych. RAID z kolei jest trochę trudniejszy do realizacji na jednopłytkowych komputerach, chyba że zacznie się rozważać maszyny oparte na x86, dodawanie procesorów graficznych lub rozważanie dodatkowych, energochłonnych funkcji. Trudno było znaleźć kompaktową, energooszczędną opcję, więc musiałem zrezygnować z RAID.

Przechowywanie

Zdecydowałem się na dysk SSD Samsung 860 Evo SATA o pojemności jednego terabajta jako urządzenie do przechowywania danych oraz kartę microSDHC Sandisk o pojemności 16 gigabajtów jako urządzenie do uruchamiania systemu. Próbowałem obejść się starą kartą microSD o pojemności dwóch gigabajtów, ale była zbyt wolna dla systemu operacyjnego. Karta Sandisk microSDHC o pojemności 16GB była najtańszą kartą renomowanej marki dostępną na rynku. Jeśli szukasz wyjątkowo wytrzymałej konfiguracji, dyski Samsung 860 Evo PRO są dwa razy droższe, ale oferują prawie czterokrotnie większą trwałość pamięci flash niż Evo, co może być bardzo opłacalne dla zdalnej instalacji zbierającej krytyczne dane. Wersja PRO zużywa również znacznie mniej energii. Nieco bardziej budżetową opcją od Samsunga jest linia Qvo, która ma około połowę trwałości pamięci flash Evo. Zdecydowałem się na Samsungi zamiast innej marki, ponieważ moje urządzenie nie oferuje opcji RAID. Nie miałem z nimi żadnych problemów w przeszłości i mam 9 z nich w ciągłej eksploatacji, więc postanowiłem trzymać się tego, co wcześniej dobrze mi służyło.

Dyski mechaniczne nie są dobrym pomysłem dla urządzeń o niskim poborze mocy, intensywnie wibrujących lub pracujących w trudnych warunkach. Są bardzo tanie biorąc pod uwagę oferowaną pojemność w porównaniu do wysokiej jakości dysków SSD, ale wibracje bardzo szybko je niszczą, podobnie jak kurz i wilgoć. Dysk SSD zużywa znacznie mniej energii niż dysk mechaniczny i nie ma problemu z czasem rozruchu po wyjściu ze stanu uśpienia, gdy chcesz zacząć zapisywać dane.

Boxed Samsung 860 EVO SSD and ODroid HC1

Samsung 860 EVO SSD i ODroid HC1 po zakupie.

System operacyjny

Istnieje kilka systemów operacyjnych do sieciowych urządzeń pamięci masowej dostępnych dla komputerów jednopłytkowych. Zdecydowałem się użyć OpenMediaVault, ponieważ działa na wielu komputerach jednopłytkowych opartych na ARM, co pozwala na kontynuowanie pracy nawet jeśli zdecydujesz się na inną opcję (taką jak Raspberry Pi). Posiada również bardzo łatwy w obsłudze interfejs webowy do konfiguracji i zarządzania udziałami/użytkownikami, eliminując potrzebę korzystania z linii poleceń lub SSH!

Przygotowanie systemu operacyjnego

Konfiguracja i uruchomienie ODroid HC1 to po prostu kwestia podłączenia dysku twardego, zapisania i podłączenia karty SD, a na końcu podłączenia ethernetu i zasilania. Przejdźmy przez te kroki krok po kroku.

Po pierwsze, zainstalujmy obraz firmware na karcie SD.

  1. Pobierz obraz „OMV_4_Odroid_XU4_HC1_HC2.img.xz” ze Sourceforge.

  2. Pobierz dowolne narzędzie do zapisywania obrazów na nośniku. W tym artykule będziemy pracować z Etcher (https://etcher.io/), ponieważ jest łatwy w użyciu.

  3. Podłącz kartę microSD do komputera.

  4. Otwórz Etcher i wybierz pobrany obraz, a następnie swój dysk.

  5. Kliknij Flash!

Przygotowanie sprzętu

Podczas gdy Etcher zapisuje i weryfikuje obraz na twojej karcie SD, możesz zmontować ODroid HC1 i dysk twardy, po prostu podłączając dysk twardy do złącza SATA HC1.

An ODroid HC1 connected to a Samsung EVO SSD

ODroid HC1 podłączony do dysku Samsunga tworzy bardzo kompaktowe sieciowe urządzenie do przechowywania danych.

Następnie obróć i użyj dołączonych śrub, aby zabezpieczyć dysk.

Możesz wtedy podłączyć kabel ethernetowy.

An ethernet cable connected to an ODroid HC1 in its casing and connected to a Samsung EVO SSD

Po podłączeniu kabla ethernetowego, skończysz łączenie całego sprzętu.

Gdy Etcher zakończy zapisywanie karty SD, możesz ją podłączyć do HC1, a następnie podłączyć zasilanie. OpenMediaVault kluczowo wymaga stabilnego połączenia z internetem przy pierwszym uruchomieniu. Próbowałem uruchomić mój HC1 po raz pierwszy, będąc podłączonym do sieci, która zawierała połączenie bezprzewodowe, które nie było szczególnie wysokiej jakości, i miałem znaczne trudności z uruchomieniem urządzenia. Jednak od razu udało mi się, podłączając HC1 bezpośrednio do przewodowej części sieci.

Uruchomienie systemu po raz pierwszy może zająć trochę czasu, więc zrób sobie herbatę lub kawę, albo sprawdź inne artykuły na tym blogu. Pozostaw HC1 do uruchomienia i instalacji przynajmniej na 15 minut; nie ma wizualnego sygnału, że proces się zakończył, więc lepiej zostawić urządzenie nieco dłużej, niż zbyt wcześnie cokolwiek z nim robić.

Konfiguracja Vault

Będziesz chciał sprawdzić, co przydziela adresy DHCP w Twojej sieci (zazwyczaj jest to router internetowy w domu lub małym biurze), aby spojrzeć na podłączone urządzenia i znaleźć adres IP ODroida. Alternatywnie, możesz użyć narzędzia do skanowania IP, aby go znaleźć – popularnym wyborem jest Angry IP Scanner (preferuję wersję legacy, ponieważ nie wymaga Java). Jeśli to jedyny ODroid w sieci, możesz prawdopodobnie pominąć znajdowanie adresu IP i przejść do http://odroidxu4/ w przeglądarce internetowej. W przeciwnym razie przejdź do adresu IP za pomocą przeglądarki.

OpenMediaVault login screen

Konfiguracja OpenMediaVault zaczyna się od zalogowania się.

Domyślną nazwą użytkownika i hasłem są admin / openmediavault.

Pierwszą rzeczą, którą będziesz chciał zrobić, to przejść do System⇒Ustawienia Ogólne, a następnie Hasło Administratora Web, aby zmienić swoje hasło.

eb administrator password change interface in OpenMediaVault

Następnie możesz przejść do System⇒Zarządzanie Aktualizacjami, aby upewnić się, że masz wszystkie najnowsze pakiety. Kliknij przycisk Sprawdź, następnie zaznacz pole obok Informacje o Pakiecie, aby wybrać wszystkie i naciśnij przycisk Aktualizuj

OpenMediaVault checking for updates interface

 

OpenMediaVault installing updates window

Proszę poczekać chwilę, podczas gdy OpenMediaVault instaluje swoje aktualizacje.

Po zakończeniu aktualizacji będziesz chciał ponownie uruchomić komputer. Możesz kliknąć ikonę menu ⋮ w prawym górnym rogu pulpitu i wybrać opcję ponownego uruchomienia.

OpenMediaVault menu, with mouse hovered over the reboot button

Konfiguracja dysku twardego

Jeśli używasz istniejącego dysku twardego lub Twój dysk twardy jest dostarczony już sformatowany, będziesz musiał usunąć partycje przed kontynuowaniem. Możesz przejść do menu Magazyn⇒Systemy plików, wybrać dowolne wpisy /dev/sda* i usunąć je. Jednak upewnij się, że nie dotykasz pozycji /dev/mmc, ponieważ to jest karta SD, z której się uruchamiasz!

OpenMediaVault storage management interface

Ustawienie dysku twardego wymaga, abyś utworzył system plików.

Po uzyskaniu pustego dysku, możesz kliknąć przycisk Utwórz. Nadaj swojemu dyskowi etykietę woluminu, upewnij się, że wybrano system plików EXT4 i kliknij OK.

OpenMediaVault create file system window asking for device, label, and file system type

To prawdopodobnie zajmie kilka minut.

Create file system process window in OpenMediaVault

Po zakończeniu kliknij Zamknij, a następnie wybierz /dev/SDA1 i kliknij przycisk Montuj. Następnie będziesz musiał kliknąć Zastosuj, aby dysk został zamontowany.

OpenMediaVault storage management interface after a file system has been created

Przycisk zastosuj można znaleźć w prawym górnym rogu tabeli urządzeń.

Uzyskiwanie dostępu

Następnie potrzebujesz użytkownika, aby uzyskać dostęp do udziału plików. Przejdź do Zarządzanie prawami dostępu⇒Użytkownik w menu, a następnie kliknij Dodaj.

Access right management interface in OpenMediaVault with the Add User button being highlighted

Teraz, kiedy skończyliśmy z przechowywaniem, musimy skonfigurować zarządzanie prawami dostępu.

Ustaw nazwę użytkownika i hasło, a następnie kliknij Dodaj. Następnie musisz Zastosować zmiany, tak jak zrobiłeś to podczas montowania nowego systemu plików. Teraz masz użytkownika, który może uzyskać dostęp do udziału plików.

Add user interface with data for name, comment, email, and password filled in

Będziemy musieli skonfigurować podstawowe opcje podczas tworzenia nowego użytkownika.

Przejdź do Zarządzanie prawami dostępu⇒Udostępnione foldery i kliknij Dodaj.

Po prostu nadaj udziałowi nazwę, na przykład „logdata” i kliknij Dodaj. Idealnie, powinieneś również ustawić uprawnienia, aby odmówić dostępu „innym”, tak aby tylko użytkownicy mogli uzyskać dostęp do folderu.

OpenMediaVault add shared folder interface

Tworzenie udostępnionego folderu pozwala użytkownikowi, którego właśnie utworzyliśmy, na transfer danych do i z pamięci sieciowej.

Po utworzeniu udziału możesz go wybrać, a następnie kliknąć przycisk Uprawnienia, aby dodać swojego użytkownika.

Access rights management window with emphasis on the privileges button above the folders table

Chcesz zaznaczyć pole wyboru Odczyt/Zapis, a następnie kliknąć Zapisz. Znowu musisz zastosować te zmiany.

Shared folder privileges window with the recently created user highlighted

Następnie kliknij przycisk ACL, obok przycisku Uprawnienia, który wcześniej kliknąłeś, i zrób to samo, a następnie Zastosuj i Zamknij.

Modify shared folder ACL window in OpenMediaVault

Włączanie dostępu sieciowego

Przejdź do opcji menu Usługi - SMB/CIFS. Jest to serwer plików na urządzeniu.

Kliknij Włącz, a następnie Zapisz i Zastosuj.

Services > SMB/CIFS settings window in OpenMediaVault

Nie zapomnij kliknąć przycisku zastosuj, aby zapisać dokonane zmiany.

Po włączeniu serwera SMB kliknij zakładkę Udostępnione foldery, a następnie kliknij przycisk Dodaj. Możesz wybrać wcześniej utworzony udział, a następnie kliknąć przycisk Zapisz, a potem Zastosuj zmiany.

Add share interface for the recently created shared folder in OpenMediaVault

W systemie Windows możesz przejść do \\odroidxu4\ (lub \\ipaddress\) w Eksploratorze Windows, aby sprawdzić, czy udział jest poprawnie ustawiony. Wprowadź wcześniej utworzone dane uwierzytelniające, gdy zostaniesz o to poproszony.

Windows security prompting for credentials to connect to the ODroid HC1

Windows operating system network folder showing the accessible shared folder on the OCDroid

Możemy użyć naszych danych uwierzytelniających, aby zobaczyć i uzyskać dostęp do udostępnionego folderu na OCDroid z dowolnego innego komputera w sieci.

Kopiując do lub z dysku, powinieneś zobaczyć prędkości transferu około 95-115Mbytes/sekundę przez sieć przewodową, co jest mniej więcej tak szybkie, jak może transferować sieć gigabitowa. Przepustowość na HC1 jest dość imponująca.

Inne metody dostępu

OpenMediaVault wspiera również inne sposoby przesyłania plików. Jeśli urządzenie generujące wszystkie potrzebne Ci dane nie obsługuje systemów plików SMB (udziały Windows), wówczas warto również włączyć FTP. FTP nie jest tak szybki jak SMB, ogólnie rzecz biorąc, jednakże, jeśli używasz mikrokontrolera, jest łatwiejszy do implementacji niż udziały SMB.

Serwer FTP może być również dość przydatny do przeglądania serwera z oddalonej lokalizacji. Jeśli chcesz uzyskać dostęp do serwera FTP z podstawowego mikrokontrolera, prawdopodobnie nie chcesz, aby SSL był wymagany, tylko opcjonalny. Jeśli musisz uruchomić serwer FTP bez SSL, powinieneś uzyskiwać dostęp do serwera przez internet tylko za pośrednictwem tunelu VPN do sieci, do której podłączony jest NAS.

Włączanie FTP

Przejdź do Usługi⇒FTP, zaznacz pole Włącz i kliknij Zapisz.

Services > FTP settings window in OpenMediaVault

Teraz możesz przejść do zakładki Udostępnione i dodać udział tak, jak zrobiłeś to dla udziału SMB powyżej. Nie zapomnij kliknąć Zapisz, a następnie Zastosuj zmiany konfiguracji.

dd share interface with the enable checkbox ticked

Podsumowanie

Jeśli szukasz sposobu na zbudowanie zdalnego serwera do przechowywania danych, który zużywa bardzo mało energii i zajmuje niewiele miejsca, Odroid HC1 jest doskonałą opcją. Jeśli znajdujesz się w bardzo wilgotnym lub mokrym środowisku, warto zastosować powłokę konformalną i pokryć nią obficie obie strony płyty, a potencjalnie także wnętrze dysku twardego (tylko jeśli używasz dysku stanu stałego). Powłoka konformalna zapewni, że płyty nie będą podlegać korozji.

Duży radiator na Odroidzie dodaje dużo sztywności do konstrukcji, więc nie ma większych obaw, że złącze SATA będzie narażone na zmęczenie spowodowane wibracjami czy uderzeniami. W połączeniu z dyskiem stanu stałego, daje to solidne urządzenie do przechowywania danych w sieci.

Jak wspomniano wcześniej, dla ostatecznej niezawodności idealnym rozwiązaniem byłoby automatyczne lustrzane odbicie danych na dwóch dyskach. Jeszcze lepiej byłoby mieć wiele dysków w RAID 6, ale wtedy znacznie przekroczymy zakres pojęć „kompaktowy”, „niski pobór mocy” i „kosztowo efektywny”. Obudowy z radiatorem Odroid HC1 są stosowalne, więc można by po prostu użyć dwóch NAS razem i użyć synchronizacji oprogramowania, takiego jak RSync, który OpenMediaVault może skonfigurować dla Ciebie, w drugim systemie do kopiowania plików z pierwszego. Synchronizując dwa systemy, posiadałbyś pewne możliwości awaryjne i zachowania danych na wypadek awarii dysku.

Chcesz dowiedzieć się więcej o tym, jak Altium Designer® może pomóc Ci w następnym projekcie PCB? Porozmawiaj z ekspertem w Altium.

About Author

About Author

Mark Harris to uznany inżynier z ponad 12-letnim różnorodnym doświadczeniem w branży elektronicznej: od kontraktów lotniczych i wojskowych po niewielkie przedsięwzięcia typu start-up, działania hobbistyczne i wszystko, co znajduje się pomiędzy. Przed przeprowadzką do Wielkiej Brytanii Mark był zatrudniony w jednej z największych organizacji badawczy w Kanadzie; każdy dzień przynosił inny projekt lub wyzwanie na polu elektroniki, mechaniki i oprogramowania. Publikuje również najbardziej obszerną bibliotekę komponentów dla oprogramowania Altium Designer w oparciu o bazę danych typu open source o nazwie Celestial Database Library. Mark ma zamiłowanie do osprzętu i oprogramowania na bazie open source oraz innowacyjnego rozwiązywania problemów, jakie jest niezbędne w obliczu codziennych wyzwań związanych z takimi projektami Elektronika to pasja; obserwowanie rozwoju produktu od idei po realizację i rozpoczęcie interakcji ze światem to niewyczerpane źródło przyjemności.
Z Markiem można się skontaktować bezpośrednio pod adresem: mark@originalcircuit.com

Powiązane zasoby

Powiązana dokumentacja techniczna

Powrót do strony głównej
Thank you, you are now subscribed to updates.