前の操作
JDKおよびHadoopの環境変数が設定されます
3台のサーバをされている名前
hadoop112、hadoop113、hadoop114
3台のネームサーバをバインドするために/ etc / hostsファイルを変更します。
例えば
hadoop112 192.168.1.112
hadoop113 192.168.1.113
hadoop114 192.168.1.114ご注意ください
下は/ optフォルダのHadoopおよびJDKのディレクトリ、
環境変数は次のようにどこに
設定ファイルは、後に経路問題のHadoop現れた場合は、その実際の環境に応じてビットを変更
設定マップ:
完全分散構成テーブルをHadoopの hadoop112 hadoop113 hadoop114 HDFS 名前ノード
データノード
データノード
SecondaryNameNode
データノード
糸 ノードマネージャ
このResourceManager
ノードマネージャ
ノードマネージャ
変更の労働者ファイル(スレーブファイルのバージョン2.x相当)スペースと空白行を持つことはできません
以下の操作は、Hadoopの-3.2.1の/ etc / Hadoopのフォルダで、設定ファイルを変更します
まず、労働者のファイルを変更!そうしないとデータノードのノードの後ろの起動に失敗しました
vim workers
書き込み:労働者のレコードはデータノードのアドレスであります
hadoop112
hadoop113
hadoop114
1)コアプロファイル
コア-site.xmlのノート経路問題を設定!
vimのコア-site.xmlのをSUDO
コンフィギュレーション・ファイルに次のように書きます
<!-- 指定HDFS中NameNode的地址 --> <property> <name>fs.defaultFS</name> <value>hdfs://hadoop112:9000</value> </property> <!-- 指定Hadoop运行时产生文件的存储目录 --> <property> <name>hadoop.tmp.dir</name> <value>/opt/module/hadoop-3.2.1/data/tmp</value> </property> <!-- 缓存文件大小 --> <property> <name>io.file.buffer.size</name> <value>131072</value> </property>
(2)HDFSプロファイル
2.1、コンフィギュレーションhadoop-env.sh
sudoはhadoop-env.sh来ました
Java環境変数の値を追加し、Javaのホームディレクトリは、エコー$ JAVA_HOME(前提がインストールされ、構成されたJava)によって得ることができます
ファイルの先頭に追加します
輸出JAVA_HOME =は/ opt /モジュール/ jdk1.8.0_211 /
2.2構成HDFS-site.xmlの
sudoのvimのHDFS-site.xmlの
ファイルがコピーの<configuration>タグ内に書かれていることに注意してください
<!-- 副本数设置为3 --> <property> <name>dfs.replication</name> <value>3</value> </property> <!-- 指定 hadoop 辅助名称节点的地址 --> <property> <name>dfs.namenode.secondary.http-address</name> <value>hadoop114:50090</value> </property> <!-- 指定名称结点缓存数据的路径 --> <property> <name>dfs.namenode.name.dir</name> <value>/opt/module/hadoop-3.2.1/data/tmp</value> </property> <!-- 指定数据结点缓存数据的路径 --> <property> <name>dfs.datanode.data.dir</name> <value>/opt/module/hadoop-3.2.1/data/data</value> </property>
(3)糸プロファイル
3.1、コンフィギュレーションyarn-env.sh
sudoはyarn-env.shを来ました
書き込み
輸出JAVA_HOME =は/ opt /モジュール/ jdk1.8.0_211 /
3.2、配置yarn-site.xml
sudoのvimの糸-site.xmlに
<configuration>タグの中にコピー注
<!-- Reducer获取数据的方式 --> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <!-- 指定启动YARN的ResourceManager的主机地址 --> <property> <name>yarn.resourcemanager.hostname</name> <value>hadoop113</value> </property>
(4)MapReduceのプロファイル
4.1、設定mapred-env.sh
sudoはmapred-env.sh来ました
書き込み
輸出JAVA_HOME =は/ opt /モジュール/ jdk1.8.0_211 /
4.2、配置mapred-site.xml
sudoのvimのmapred-site.xmlに
<!-- 指定以Yarn方式运行 --> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> <property> <name>yarn.app.mapreduce.am.env</name> <value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value> </property> <property> <name>mapreduce.map.env</name> <value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value> </property> <property> <name>mapreduce.reduce.env</name> <value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value> </property>
配布プロファイル===== XSYNCスクリプトは、このブログを読んで
https://blog.csdn.net/qq_41813208/article/details/102575933
XSYNCスクリプトによって分散
次のコマンド、hadoop113に変更されたHadoopプロファイル同期、hadoop114サーバーを実行します
XSYNC /opt/moudel/hadoop-3.2.1
同期として、それは、hadoop114サーバの設定ファイルがあるとhadoop112をhadoop113テスト
例えば、コア-site.xmlファイルを見て
猫/opt/module/hadoop-3.2.1/etc/hadoop/core-site.xml
そして、同じhadoop112か
集まったサーバーの一部
最後に反発し、クラスタ
のすべてのサーバデータノード、名前ノードを終了する最初の必要性、SecondaryNameNodeプロセス閉じるJPSのJPSを入力するには、以外のすべてのプロセスを表示します
注意!!!
名前ノードは、HDFSを開始する前にフォーマットする必要がありますこれがあれば、初めて実行する必要があります
hdfs namenode -format
背後にある次のような理由から、このコマンドを使用していないリンク https://blog.csdn.net/qq_41813208/article/details/100753659
(*フロントと書式設定は、その理由をフォーマットする必要はありません場合ことに注意してください、名前ノードのブログがフォーマットされた理由を見ることができません)
まず、HDFS開始
closeメソッドを入力:stop-dfs.sh
Startメソッド
start-dfs.sh
ルートディレクトリのHadoop sbinに/の下にこのスクリプトファイル
第二に、YARN開始
ノートを取るために巨大な穴の必要性を!
hadoop113にResourceManegerので、hadoop113オンにする必要があります!
実行start-yarn.sh
、結果を得るために開始し、彼女がパスワードに遭遇した場合は、configureそれは秘密ログイン
これら二つの基準ブログについての秘密ログインありません。
https://blog.csdn.net/qq_41813208/article/details/102597273
https://blog.csdn.net/qq_41813208/article/details/102575933
すべては下記起動すると、
あなたはHDFSを起動したときにHDFSは、プロセスラインを開始します
糸は、プロセス糸を開始するために1つの行を開始します
hadoop112 | hadoop113 | hadoop114 | |
HDFS | 名前ノード データノード |
データノード |
SecondaryNameNode データノード |
糸 | ノードマネージャ |
このResourceManager ノードマネージャ |
ノードマネージャ |
最後に、テストへ
注:9870ポートに50070によるポートのHadoopの-3.xバージョン
ページにアクセスすることができない場合は、サーバーのファイアウォールがオフになっています
在hadoop112上关闭,输入sudo systemctl stop firewalld.service 即可关闭防火墙,就可以访问到下面的页面
永久关闭sudo systemctl disable firewalld.service
浏览器输入hadoop112的ip+9870端口访问页面表示成功!
http://hadoop112:9870
问题解决篇
如果出现其他结点都启动起来了,但是名称结点起不来。说明namenode经过了多次格式化,解决方法是
首先先关闭集群
删除 对应文件(就是前面core-site.xml配置中hadoop.tmp.dir配置对应的路径),然后重新格式化一下。
hdfs namenode -format
原因:https://blog.csdn.net/qq_41813208/article/details/100753659
重新格式化后,启动hdfs
输入 start-dfs.sh
这时候你会发现那么node结点启动起来了。