enregistrement d'installation pseudo-distribuée hadoop

Citation:

    Récemment, je souhaite entrer en contact avec certaines technologies liées au Big Data, donc avec cet article, il s'agit en fait d'enregistrer le processus d'apprentissage de Hadoop. S'il y a quelque chose qui ne va pas dans l'article, j'espère le corriger (avoir une expérience de développement Java, mais c'est un gros Les données sont un peu blanches, tout le monde est léger.)
J'ai d'abord cherché sur Internet une vague de données volumineuses. Quelle technologie devrait être apprise, essentiellement par coïncidence, tout indique hadoop.
    De Wikipedia: adresse du lien Apache Hadoop . Après l'avoir lu Selon Wikipédia, nous savons probablement que hadoop est un framework Big Data distribué, et nous saurons
qu'il est composé de nombreux composants (tels que le noyau HDFS, Hadoop Distributed File System, le framework Mapreduce, et de nombreux Hive , HBase, etc.). Donc Hadoop fait en fait référence à un ensemble d'écosystèmes Hadoop. Parlez simplement de ne pas pratiquer de fausses poignées. OK, voyons comment installer et créer un environnement hadoop?

étapes d'installation:

    Il y a en fait un prérequis ici: par défaut, les environnements linux et java ont été installés sur vos machines. S'il n'y a pas de doigt flexible qui puisse vous déplacer, tapez "Comment installer l'environnement linux / java" dans la barre de recherche, sans blague, c'est plus courant.
Le site officiel d'installation hadoop dit qu'il y a trois façons:
1. Installation en mode mono-machine
2. Installation pseudo-distribuée
3. Installation entièrement distribuée (vrai. Distribué)
J'utilise pseudo-distribué ici. Quelqu'un veut demander pourquoi pas réel. Distribué?
La première est que les débutants ont appris la pseudo-distribution. En gros, il n'y aura pas de problèmes majeurs avec la distribution complète, mais il y a plus de machines; la
seconde est à cause de la pauvreté, il

est nécessaire d'en construire quelques-unes entièrement distribuées sur des serveurs cloud. 2333 ~ Je plaisante, principalement paresseux ~

1. Téléchargez hadoop

Allez sur le site officiel pour le télécharger, le lien du site officiel .

Cliquez sur source, puis téléchargez hadoop-3.1.2-src.tar.gz dans la page redirigée.

tar -zxvf hadoop-3.1.2-src.tar.gz

Entrez ensuite hadoop-3.1.2, le répertoire est tel que

bin et sbin sont des répertoires pour les scripts exécutables, et etc est le répertoire dans lequel les fichiers de configuration Hadoop sont placés.

2. Configurer hadoop

(1). Commencez par configurer le fichier d'environnement hadoop-env.sh de hadoop, entrez dans le répertoire hadoop-3.1.2 / etc / hadoop, éditez le fichier hadoop-env.sh
et recherchez JAVA_HOME, vous trouverez deux emplacements, mais vous pouvez passer Lisez les notes en anglais pour savoir de quoi il s'agit

# Technically, the only required environment variable is JAVA_HOME.
# All others are optional.  However, the defaults are probably not
# preferred.  Many sites configure these options outside of Hadoop,
# such as in /etc/profile.d

# The java implementation to use. By default, this environment
# variable is REQUIRED on ALL platforms except OS X!

Ajoutez export JAVA_HOME = "jdk address on the machine" ci-dessous

Ajoutez la configuration de hadoop dans la variable d'environnement, vim / etc / profile, ajoutez hadoop_home

export HADOOP_HOME=/home/hadoop/hadoop-3.1.2
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/sbin:$HADOOP_HOME/bin

(2). Configurez le fichier de configuration core de hadoop core-site.xml, voici l'adresse namenode de hdfs et le chemin du répertoire de stockage des données
, ajoutez-y:

这个是hdfs的地址
<property>
       <name>fs.defaultFS</name>
       <value>hdfs://wxwwt-hadoop:9000</value>
   </property>
hadoop存储数据路径
<property>
     <name>hadoop.tmp.dir</name>
     <value>/home/hadoop/hadoop-3.1.2/data</value>
</property>

wxwwt-hadoop consiste à obtenir le nom avec désinvolture, n'oubliez pas de le configurer dans etc / hosts et de le mapper sur le 127.0.0.1 local

(3) Configurez mapred-site.xml, il peut être vu du nom qu'il est lié à MapReduce. Spécifiez la configuration du système de planification

<property>
      <name>mapreduce.framework.name</name>
      <value>yarn</value>
</property>

(4). Placement yarn-site.xml

<configuration>
指定ResouceManager的地址
    <property>
       <name>yarn.resourcemanager.hostname</name>
       <value>wxwwt-hadoop</value>
    </property>
指定MapReduce的方式
    <property>
       <name>yarn.nodemanager.aux-services</name>
       <value>mapreduce_shuffle</value>
    </property>
</configuration>

Jusqu'à présent, le fichier de configuration de hadoop est terminé.

3. Formatez le système de fichiers

hdfs namenode -format

Si vous pouvez voir un message similaire au suivant, le formatage est réussi

Storage directory /home/hadoop/hadoop-3.1.2/data/dfs/name has been successfully formatted.

4. Exécutez hadoop, start-dfs.sh

Mais avant d'exécuter, vous devez dire que si vous avez déjà utilisé l'utilisateur root, vous obtiendrez une erreur lors de l'exécution. Comme il s'agit de l'utilisateur root, hadoop ne recommande pas d'utiliser l'utilisateur root. Informera

ERROR: Attempting to operate on hdfs namenode as root
ERROR: but there is no HDFS_NAMENODE_USER defined. Aborting operation.
Starting datanodes
ERROR: Attempting to operate on hdfs datanode as root
ERROR: but there is no HDFS_DATANODE_USER defined. Aborting operation.

Erreurs similaires.
(1). Si vous souhaitez continuer l'exécution en tant qu'utilisateur root, vous devez l'ajouter dans le script de démarrage start-dfs.sh

HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root

Et pour configurer une connexion sans mot de passe root.
étape:

$ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
$ chmod 0600 ~/.ssh/authorized_keys

(2). Si vous souhaitez utiliser d'autres utilisateurs, vous devez d'abord ajouter les autorisations de répertoire de hadoop à cet utilisateur. Par
exemple: Je souhaite utiliser l'utilisateur wxwwt pour fonctionner

useradd wxwwt
passwd wxwwt
chown -R wxwwt:wxwwt /home/hadoop-3.1.2
su wxwwt

Définissez le nom d'utilisateur et le mot de passe, accordez les autorisations de répertoire hadoop à wxwwt, puis changez d'utilisateur. Configurer à nouveau la connexion sans mot de passe

ssh-keygen -t rsa
ssh-copy-id localhost

Puis courir hadoop.

Une fois que start-hdfs.sh est exécuté, regardez jps s'il existe des processus NameNode, SecondaryNameNode et DataNode, le HDFS démarre correctement.

5. Démarrez yarn, start-yarn.sh .

Après le démarrage, regardez à nouveau jps. ResourceManager apparaît dans la figure et NodeManager est terminé.

Pour résumer:

1. Quelques concepts simples de Hadoop, qui est également un grand écosystème;
2. L'installation de Hadoop est divisée en trois modes, autonome, pseudo-distribué et entièrement distribué; l'article présente la pseudo-distribution, ce qui signifie le faire sur une seule machine le;
3. tutoriel d'installation principalement en ajoutant la configuration, mais qui a encore une fosse, rappelez-vous quand le début de la racine de la fosse, et évitez les connexions denses.

Matériel de référence:

1. https://hadoop.apache.org/docs/r3.1.2/hadoop-project-dist/hadoop-common/SingleCluster.html (tutoriel pseudo-distribué sur le site officiel)
2. https://blog.csdn.net/ solaraceboy / article / details / 78438336 (tutoriel de connexion sans mot de passe)
3. https://blog.csdn.net/whq12789/article/details/79782020
4. https://www.ibm.com/developerworks/cn/opensource/ os-cn-hadoop-yarn / (introduction de fil)

Je suppose que tu aimes

Origine blog.csdn.net/sc9018181134/article/details/97621238
conseillé
Classement