Suche…


Bemerkungen

Was ist Apache Hadoop?

Die Apache Hadoop-Softwarebibliothek ist ein Framework, das die verteilte Verarbeitung großer Datenmengen über Cluster von Computern mit einfachen Programmiermodellen ermöglicht. Es ist so konzipiert, dass es von einzelnen Servern auf Tausende von Computern skaliert werden kann, von denen jeder lokale Berechnungen und Speicher bietet. Anstatt sich auf Hardware zu verlassen, um Hochverfügbarkeit bereitzustellen, ist die Bibliothek selbst darauf ausgelegt, Fehler auf der Anwendungsebene zu erkennen und zu handhaben. Auf diese Weise kann ein hochverfügbarer Dienst auf einem Cluster von Computern bereitgestellt werden, die jeweils fehleranfällig sind.

Apache Hadoop enthält folgende Module:

  • Hadoop Common : Die allgemeinen Dienstprogramme, die die anderen Hadoop-Module unterstützen.
  • Hadoop Distributed File System (HDFS) : Ein verteiltes Dateisystem, das Zugriff auf Anwendungsdaten mit hohem Durchsatz ermöglicht.
  • Hadoop YARN : Ein Framework für die Planung von Jobs und das Management von Clusterressourcen .
  • Hadoop MapReduce : Ein YARN-basiertes System für die parallele Verarbeitung großer Datenmengen.

Referenz:

Apache Hadoop

Versionen

Ausführung Versionshinweise Veröffentlichungsdatum
3.0.0-alpha1 2016-08-30
2.7.3 Hier klicken - 2.7.3 2016-01-25
2.6.4 Klicken Sie hier - 2.6.4 2016-02-11
2.7.2 Klicken Sie hier - 2.7.2 2016-01-25
2.6.3 Hier klicken - 2.6.3 2015-12-17
2.6.2 Klicken Sie hier - 2.6.2 2015-10-28
2.7.1 Klicken Sie hier - 2.7.1 2015-07-06

Installation oder Setup unter Linux

Ein Pseudo-verteiltes Cluster-Setup-Verfahren

Voraussetzungen

  • Installieren Sie JDK1.7 und legen Sie die Umgebungsvariable JAVA_HOME fest.

  • Erstellen Sie einen neuen Benutzer als "hadoop".

    useradd hadoop

  • Richten Sie die SSH-Anmeldung ohne Kennwort für ein eigenes Konto ein

     su - hadoop
     ssh-keygen
     << Press ENTER for all prompts >>
     cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
     chmod 0600 ~/.ssh/authorized_keys
    
  • Überprüfen Sie dies, indem Sie ssh localhost ausführen

  • Deaktivieren Sie IPV6, indem Sie /etc/sysctl.conf folgt bearbeiten:

     net.ipv6.conf.all.disable_ipv6 = 1
     net.ipv6.conf.default.disable_ipv6 = 1
     net.ipv6.conf.lo.disable_ipv6 = 1
    
  • Überprüfen Sie dies mit cat /proc/sys/net/ipv6/conf/all/disable_ipv6

    (sollte 1 zurückgeben)

Installation und Konfiguration:

  • Laden Sie die erforderliche Version von Hadoop mit dem Befehl wget aus den Apache-Archiven herunter.

     cd /opt/hadoop/
     wget http:/addresstoarchive/hadoop-2.x.x/xxxxx.gz
     tar -xvf hadoop-2.x.x.gz
     mv hadoop-2.x.x.gz hadoop 
    (or)
    
     ln -s hadoop-2.x.x.gz hadoop
     chown -R hadoop:hadoop hadoop
    
  • Aktualisieren Sie .bashrc / .kshrc basierend auf Ihrer Shell mit den Umgebungsvariablen

      export HADOOP_PREFIX=/opt/hadoop/hadoop
      export HADOOP_CONF_DIR=$HADOOP_PREFIX/etc/hadoop
      export JAVA_HOME=/java/home/path
      export PATH=$PATH:$HADOOP_PREFIX/bin:$HADOOP_PREFIX/sbin:$JAVA_HOME/bin
    
  • Bearbeiten $HADOOP_HOME/etc/hadoop Verzeichnis $HADOOP_HOME/etc/hadoop die folgenden Dateien

    • core-site.xml

      <configuration>
          <property>
              <name>fs.defaultFS</name>
              <value>hdfs://localhost:8020</value>
          </property>
      </configuration> 
      
    • mapred-site.xml

      Erstellen Sie mapred-site.xml aus seiner Vorlage

      cp mapred-site.xml.template mapred-site.xml

        <configuration>
            <property>
                <name>mapreduce.framework.name</name>
                <value>yarn</value>
            </property>
        </configuration> 
      
    • garne-site.xml

       <configuration>
           <property>
               <name>yarn.resourcemanager.hostname</name>
               <value>localhost</value> 
           </property>
           <property>
               <name>yarn.nodemanager.aux-services</name>
               <value>mapreduce_shuffle</value>
           </property>
       </configuration>
      
    • hdfs-site.xml

       <configuration>
           <property>
               <name>dfs.replication</name>
               <value>1</value>
           </property>
           <property>
               <name>dfs.namenode.name.dir</name>
               <value>file:///home/hadoop/hdfs/namenode</value>
           </property>
           <property>
               <name>dfs.datanode.data.dir</name> 
               <value>file:///home/hadoop/hdfs/datanode</value> 
           </property>
       </configuration>
      

    Erstellen Sie den übergeordneten Ordner, um die Hadoop-Daten zu speichern

    mkdir -p /home/hadoop/hdfs
    
  • Format NameNode (bereinigt das Verzeichnis und erstellt die erforderlichen Metadateien)

    hdfs namenode -format
    
  • Starten Sie alle Dienste:

    start-dfs.sh && start-yarn.sh
    mr-jobhistory-server.sh start historyserver
    

Verwenden Sie stattdessen start-all.sh (veraltet).

  • Überprüfen Sie alle laufenden Java-Prozesse

    jps 
    
  • Namenode-Webschnittstelle: http: // localhost: 50070 /

  • Ressourcen-Manager-Webschnittstelle: http: // localhost: 8088 /

  • So stoppen Sie Daemons (Dienste):

    stop-dfs.sh && stop-yarn.sh
    mr-jobhistory-daemon.sh stop historyserver
    

Verwenden Sie stattdessen stop-all.sh (veraltet).

Installation von Hadoop auf Ubuntu

Hadoop-Benutzer erstellen:

sudo addgroup hadoop

Benutzer hinzufügen:

sudo adduser --ingroup hadoop hduser001

Geben Sie hier die Bildbeschreibung ein

SSH konfigurieren:

su -hduser001
ssh-keygen -t rsa -P ""
cat .ssh/id rsa.pub >> .ssh/authorized_keys

Hinweis : Wenn Sie beim Schreiben des autorisierten Schlüssels Fehler [ bash: .ssh / authorised_keys: Keine solche Datei oder ein solches Verzeichnis ] erhalten Überprüfen Sie hier .

Geben Sie hier die Bildbeschreibung ein Geben Sie hier die Bildbeschreibung ein Geben Sie hier die Bildbeschreibung ein

Füge hadoop Benutzer zur Liste von sudoer hinzu:

sudo adduser hduser001 sudo

Geben Sie hier die Bildbeschreibung ein

Deaktivieren von IPv6:

Geben Sie hier die Bildbeschreibung ein Geben Sie hier die Bildbeschreibung ein

Hadoop installieren:

sudo add-apt-repository ppa:hadoop-ubuntu/stable
sudo apt-get install hadoop

Geben Sie hier die Bildbeschreibung ein Geben Sie hier die Bildbeschreibung ein

Hadoop-Übersicht und HDFS

Geben Sie hier die Bildbeschreibung ein

    Hadoop ist ein Open-Source-Software-Framework zur Speicherung und umfangreichen Verarbeitung von Datensätzen in einer verteilten Computerumgebung. Es wird von der Apache Software Foundation gesponsert. Es ist so konzipiert, dass es von einzelnen Servern auf Tausende von Computern skaliert werden kann, von denen jeder lokale Berechnungen und Speicher bietet.
Geschichte

  • Hadoop wurde 2005 von Doug Cutting und Mike Cafarella gegründet.
  • Cutting, der bei Yahoo! arbeitete benannte es damals nach dem Spielzeugelefanten seines Sohnes.
  • Es wurde ursprünglich entwickelt, um die Verteilung für das Suchmaschinenprojekt zu unterstützen.
Hauptmodule von Hadoop

    Hadoop Distributed File System (HDFS): Ein verteiltes Dateisystem, das Zugriff auf Anwendungsdaten mit hohem Durchsatz ermöglicht. Hadoop MapReduce: Ein Software-Framework für die verteilte Verarbeitung großer Datenmengen in Rechenclustern.
Hadoop-Dateisystem- Grundfunktionen

    Sehr fehlertolerant. Hoher Durchsatz Geeignet für Anwendungen mit großen Datensätzen. Kann aus handelsüblicher Hardware aufgebaut werden.
Namenode und Datanodes

    Master / Slave-Architektur. Der HDFS-Cluster besteht aus einem einzigen Namenode, einem Masterserver, der den Namensbereich des Dateisystems verwaltet und den Zugriff von Clients auf Dateien regelt. Die DataNodes verwalten Speicher, der mit den Knoten verbunden ist, auf denen sie ausgeführt werden. HDFS macht einen Dateisystem-Namespace verfügbar und ermöglicht das Speichern von Benutzerdaten in Dateien. Eine Datei wird in einen oder mehrere Blöcke aufgeteilt und eine Gruppe von Blöcken wird in DataNodes gespeichert. DataNodes: dient zum Lesen, Schreiben von Anforderungen, zum Erstellen, Löschen und Replizieren von Blöcken nach Anweisung von Namenode.

Geben Sie hier die Bildbeschreibung ein

    HDFS dient zum Speichern sehr großer Dateien auf Computern in einem großen Cluster. Jede Datei ist eine Folge von Blöcken. Alle Blöcke in der Datei außer dem letzten haben dieselbe Größe. Blöcke werden zur Fehlertoleranz repliziert. Der Namenode empfängt einen Heartbeat und einen BlockReport von jedem DataNode im Cluster. BlockReport enthält alle Blöcke in einem Datanode.
Hadoop Shell-Befehle

    Häufig verwendete Befehle: -
      ls Verwendung: hadoop fs –ls Pfad (Verzeichnispfad zur Liste). Cat- Nutzung: hadoop fs -cat PathOfFileToView

Geben Sie hier die Bildbeschreibung ein

Link für hadoop-Shell-Befehle: - https://hadoop.apache.org/docs/r2.4.1/hadoop-project-dist/hadoop-common/FileSystemShell.html



Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow