Próbuję zainstalować Hadoop w wersji Ubuntu 12.04. Postępując zgodnie z instrukcjami z
http://michael-noll.com/tutorials/running-hadoop-on-ubuntu-linux-single-node-cluster/ , zainstalowałem java-6-openjdk
z centrum oprogramowania Ubuntu. Mam ustawiony java_home
w .bashrc
. Również ustawiony java_home
w Hadoop conf/env.sh
. Podczas formatowania nazwy, pojawia się następujący błąd:
usr/lib/jvm/java-6-openjdk/bin/java no such file or directory.
Dziękuję Ci. Ale to 64-bitowy system operacyjny.
Odpowiedzi:
Przewodniki, które stosowałem, gdy miałem 12.04, to:
Tak naprawdę byłem przeciwny MyLearningowi, ponieważ pierwszą rzeczą, którą polecił, była Oracle Java 7 zamiast OpenJDK 7, ale miałem pewne problemy z OpenJDK 7, kiedy to wypróbowałem, więc musiałem iść z Oracle.
Przewodnik jest w większości prosty i oto:
Zainstaluj Javę
Utwórz użytkownika Hadoop
Gdzie hduser to użytkownik Hadoop, którego chcesz mieć.
Konfigurowanie SSH
Aby upewnić się, że instalacja SSH przebiegła pomyślnie, możesz otworzyć nowy terminal i spróbować utworzyć sesję ssh za
hduser
pomocą następującego polecenia:zainstaluj ponownie ssh, jeśli localhost nie łączy się (może być konieczne dodanie
hduser
do sudo jak poniżej)Edytuj sudoers
Dodaj na końcu linii, aby dodać hduser do sudoers
Aby zapisać, naciśnij CTRL+ X, wpisz Yi naciśnijENTER
Wyłącz IPv6
lub
Skopiuj następujące wiersze na końcu pliku:
Jeśli napotykasz problem z informacją, że nie masz uprawnień, po prostu uruchom poprzednie polecenie z kontem głównym (w przypadku, gdy sudo nie wystarczy. Dla mnie to było)
Teraz uruchom ponownie.
Możesz także zrobić,
sudo sysctl -p
ale wolę zrestartować komputer.Po ponownym uruchomieniu sprawdź, czy IPv6 jest wyłączony:
powinien powiedzieć 1 . Jeśli mówi 0 , coś przeoczyłeś.
Instalowanie Hadoop
Jest na to kilka sposobów, sugerowanych przez Przewodnik, aby pobrać ze strony Apache Hadoop i rozpakować plik w
hduser
folderze domowym. Zmień nazwę wyodrębnionego folderu nahadoop
.Innym sposobem jest użycie PPA, który został przetestowany na 12.04:
UWAGA: PPA może działać dla niektórych, a dla innych nie. Próbowałem pobrać z oficjalnej strony, ponieważ nie wiedziałem o PPA.
Aktualizacja
$HOME/.bashrc
Musisz zaktualizować
.bashrc
dlahduser
(i dla każdego użytkownika, którym musisz administrować Hadoop). Aby otworzyć.bashrc
plik, musisz go otworzyć jako root:lub
Następnie dodasz następujące konfiguracje na końcu
.bashrc
plikuTeraz, jeśli masz OpenJDK7, wyglądałoby to mniej więcej tak:
Należy tutaj zwrócić uwagę na folder, w którym znajduje się Java z wersją AMD64. Jeśli powyższe nie działa, możesz spróbować przeszukać ten konkretny folder lub ustawić Javę, która będzie używana z:
Teraz kilka przydatnych aliasów:
Konfigurowanie Hadoop
Poniżej znajdują się pliki konfiguracyjne, których możemy użyć do prawidłowej konfiguracji. Niektóre pliki, których będziesz używać w Hadoop to (Więcej informacji na tej stronie ):
start-dfs.sh
- Uruchamia demony DFS Hadoop, nazwę i węzły danych. Użyj tego przed start-mapred.shstop-dfs.sh
- Zatrzymuje demony Hadoop DFS.start-mapred.sh
- Uruchamia demony Hadoop Map / Reduce, Jobtracker i Tasktrackers.stop-mapred.sh
- Zatrzymuje demon Hadoop Map / Reduce.start-all.sh
- Uruchamia wszystkie demony Hadoop, nazwę, węzły danych, moduł śledzenia zadań i moduł śledzenia zadań. Przestarzałe; użyj start-dfs.sh, a następnie start-mapred.shstop-all.sh
- Zatrzymuje wszystkie demony Hadoop. Przestarzałe; użyj stop-mapred.sh, a następnie stop-dfs.shAle zanim zaczniemy ich używać, musimy zmodyfikować kilka plików w
/conf
folderze.hadoop-env.sh
Poszukaj pliku
hadoop-env.sh
, musimy tylko zaktualizować zmienną JAVA_HOME w tym pliku:lub
lub w najnowszych wersjach będzie
lub
Następnie zmień następujący wiersz:
Do
Uwaga: jeśli pojawi się
Error: JAVA_HOME is not set
błąd podczas uruchamiania usług, zapomniałeś odkomentować poprzednią linię (po prostu usuń #).core-site.xml
Teraz musimy utworzyć katalog tymczasowy dla środowiska Hadoop. Jeśli potrzebujesz tego środowiska do testowania lub szybkiego prototypu (np. Opracuj proste programy hadoop do osobistego testu ...), sugeruję utworzenie tego folderu w
/home/hduser/
katalogu, w przeciwnym razie należy utworzyć ten folder w miejscu udostępnionym w folderze udostępnionym ( jak / usr / local ...), ale możesz napotkać pewne problemy z bezpieczeństwem. Ale aby przezwyciężyć wyjątki, które mogą być spowodowane bezpieczeństwem (np. Java.io.IOException), utworzyłem folder tmp w obszarze hduser.Aby utworzyć ten folder, wpisz następujące polecenie:
Pamiętaj, że jeśli chcesz utworzyć innego użytkownika administratora (np. Hduser2 w grupie hadoop), powinieneś udzielić mu uprawnienia do odczytu i zapisu w tym folderze za pomocą następujących poleceń:
Teraz możemy otworzyć,
hadoop/conf/core-site.xml
aby edytować wpis hadoop.tmp.dir. Możemy otworzyć plik core-site.xml za pomocą edytora tekstu:lub
Następnie dodaj następujące konfiguracje między
<configure>
elementami xml :Teraz edytuj
mapred-site.xml
Teraz edytuj
hdfs-site.xml
Formatowanie NameNode
Teraz możesz rozpocząć pracę nad węzłem. Pierwszy format:
lub
Powinieneś sformatować NameNode w swoim HDFS. Nie należy wykonywać tego kroku, gdy system jest uruchomiony. Zwykle odbywa się to przy pierwszej instalacji.
Uruchamianie klastra Hadoop
Musisz przejść do katalogu hadoop / bin i uruchomić
./start-all.sh
skrypt.Jeśli masz inną wersję niż ta pokazana w przewodnikach (które najprawdopodobniej będziesz mieć, jeśli robisz to z PPA lub nowszą wersją), spróbuj tego w ten sposób:
Spowoduje to uruchomienie Namenode, Datanode, Jobtracker i Tasktracker na twoim komputerze.
Sprawdzanie, czy działa Hadoop
Jest ładne narzędzie o nazwie
jps
. Możesz go użyć, aby upewnić się, że wszystkie usługi działają. W folderze bin hadoop wpisz:Powinien pokazać wszystkie procesy związane z Hadoop.
UWAGA: Ponieważ zostało to zrobione około 6 miesięcy temu, jeśli jakaś część nie działa, daj mi znać.
Hadoop using Juju (A Juju Charm for Hadoop)
Zaczerpnięte z Uroczego Hadoopa
Zakładam, że następujące ustawienia są już skonfigurowane:
~/.juju/environments.yaml
informacje dotyczące serwera, którego będziesz używać, w tym źródło PPA.Ok, teraz wykonaj następujące kroki, aby uruchomić usługę Hadoop:
Uruchom środowisko dla Hadoop
Poczekaj na zakończenie, a następnie sprawdź, czy łączy się poprawnie:
Wdróż Hadoop (Master and Slave)
Utwórz relacje
Ujawnij Hadoop (ponieważ już wdrożyłeś i utworzyłeś relacje usługa powinna być uruchomiona)
I sprawdź status, aby zobaczyć, czy działa poprawnie:
Do tej pory masz działający Hadoop. Istnieje wiele innych rzeczy, które możesz zrobić, które można znaleźć w podanym linku lub w oficjalnym Uroku Juju dla Hadoop
Aby uzyskać aktualne Charms JuJu (ustawienia, przewodnik krok po kroku i więcej), odwiedź: Charms JuJu i stwórz własne środowisko JuJu i zobacz, jak konfiguruje się każdy plik i jak łączy się każda usługa.
źródło
hduser (ALL)=(ALL:ALL) ALL
zgłasza błąd składniowy ...hduser ALL=(ALL:ALL) ALL
, usuń pierwszą parę nawiasów.bachrc
- poczekaj, aż Johann Sebastian to usłyszy. Och, czekaj, nie może ... ponieważ jest głuchy. :-DPomyślnie zainstalowałem Hadoop, ustawiając ścieżkę
JAVA_HOME
asusr/lib/jvm/java-6-openjdk-amd64
.źródło
Pochodzące z @Luis Alvarado odpowiedź , oto moja wersja Ubuntu 14.04 i Hadoop 2.5.1
W skrócie
hduser
hduser
terazhduser
na zdalne przesyłanie przez ssh bez użycia frazGotowy. Powodzenia!
Szczegółowe kroki
Zainstaluj Javę
Ściągnij i zainstaluj
Upewnij się, że masz zainstalowaną Java7
powinniśmy
java
wskazać/usr/lib/jvm/java-7-oracle/jre/bin/java
Przygotuj użytkownika wykonawczego dla Hadoop
hduser
Utwórz użytkownika
hduser
w grupiehadoop
Grant
hduser
z sudo przywilejEdytuj sudo
Dodaj do końca tę linię
Przełącz na
hduser
terazZezwalaj
hduser
na zdalne przesyłanie przez ssh bez użycia frazZainstaluj openssh
Wygeneruj klucz publiczny / prywatny RSA dla połączenia SSH; hasło jest puste jako
parameter -P ""
Upewnij się, że
hduser
można ssh zdalnie lokalnie bez hasłaWyłącz IPv6
Edytuj plik konfiguracyjny
Skopiuj do końca
Upewnij się, że IPv6 jest wyłączony przez ponowne uruchomienie lub połączenie
Wtedy zadzwoń
Powinien powiedzieć 1, co oznacza OK ^^
Pobierz i skonfiguruj pakiet Hadoop
Pobierz pakiety Hadoop 2.5.1 ze strony Apache Hadoop
Bezpośrednim adresem URL tego pakietu jest ten link
Pobierzmy więc
hduser
folder domowy, rozpakuj go i zmień nazwę nahadoop
Upewnij się, że Hadoop jest przechowywany w
hduser
domuPrzygotuj ścieżkę systemową $ HADOOP_HOME i $ JAVA_HOME
Edytuj
hduser
plik .bashrcDopisz wartości końcowe do
$HADOOP_HOME
i$JAVA_HOME
Dodaj
binary
foldery Hadoop do systemu$PATH
Otwórz nowy terminal, zaloguj się jako
hduser
i upewnij się, że masz $ HADOOP_HOME z dostępnymi poleceniamiPowinniśmy zobaczyć pełną ścieżkę tych nazw.
Skonfiguruj usługi Hadoop
Każdy komponent w Hadoop jest konfigurowany przy użyciu pliku XML.
Wspólne właściwości znajdują się w pliku core-site.xml
Właściwości HDFS można znaleźć w pliku hdfs-site.xml
Właściwości MapReduce znajdują się w mapred-site.xml
Wszystkie pliki znajdują się w folderze $ HADOOP_HOME / etc / hadoop
Zdefiniuj ponownie JAVA_HOME, edytując
hadoop-env.sh
wierszZdefiniuj Hadoop
temp folder
ifile system
nazwę w core-site.xml atMusimy to przygotować
temp folder
zgodnie z konfiguracją na/home/hduser/tmp
Zdefiniuj
file system
„sblock replication
w HDFS-site.xmlZdefiniuj
map-reduce job
w mapred-site.xmlFormat
name node
Uruchom usługę Hadoop
Połączenie
te dwa polecenia znajdują się w $ HADOOP_HOME / sbin, które wcześniej dodaliśmy do systemu $ PATH.
Upewnij się, że usługi Hadoop są uruchomione poprawnie
powinniśmy zobaczyć
źródło
mapred-site.xml
na początku nie istnieje. Powinien zostać utworzony przezcp mapred-site.xml.template mapred-site.xml
Aby móc zainstalować
sun-java
za pomocąapt-get
polecenia, musisz dodać wiersz do pliku o nazwiesources.list
. Ten plik można znaleźć w/etc/apt/sources.list
.Otwórz plik za pomocą tego polecenia:
Następnie na samym końcu (na dole) tego pliku skopiuj / wklej wiersz:
Teraz naciśnij Ctrl+, Xaby wyjść i yzapisać.
Teraz wpisz polecenie:
A kiedy to zrobisz, możesz z powodzeniem uruchomić polecenie:
źródło
Aby uzyskać bardziej aktualny samouczek (nie jestem pewien co do różnic), obejrzyj samouczki wideo z zrzutami ekranowymi hadoop . Zapewniają wideo i rzeczywiste polecenia do zainstalowania pod spodem. Również, jeśli wyślesz e-maila do pisarza, z przyjemnością odpowie i pomoże ci, jeśli utkniesz z czymś.
Instrukcje te są w dużej mierze podobne do tych, na które @Luis odpowiedział.
źródło