Linuxバージョン:Ubuntuの16.04 LTS Serverの
1. Linuxでは、Hadoopのに初期のユーザー名をインストールし、ホストは以下のとおりです。
Lead1、Lead2、レジスタ1、レジスタ2、Register3、Follower1、Follower2、Follower3、Follower4、Follower5
HA Lead1、Lead2名前ノードとのResourceManagerを配置するための
レジスタ1、レジスタ2、Register3はのZooKeeperクラスタサービスとqjournalを実行するために使用されます
Follower1 ,, Follower2、Follower3、Follower4は、Follower5はデータノードとノードマネージャを実行するために使用されます
2.ソフトウェアをインストール:1.8 OpenJDKの、Vimののopenssh-サーバー、
3.設定のsshのフリー密集ログイン:
A。SSH -keygen -t rsaの
B。猫の〜/ .ssh / id_rsa.pub >>の〜/ .ssh / authorized_keysに
CのSCPの〜/ .ssh / authorized_keysにxxxの(ホスト名):.の〜/ .ssh / authorized_keysファイルに含まれるすべてのauthorized_keysまで、すべてのホストがホストid_rsa.pubです
4.順次すべてのホストを変更/ etc / hostsに、そのマッピング点を除去しながら、127.0.0.1などのifconfig IPアドレスを使用してコンテンツをチェック
5. sudoは777の/ optをchmodは、すべてのホストに適用されます
ZooKeeperのバージョン:3.4.10
3つのホスト/下を選ぶRedister1、Redister2、Redister3 1. ZooKeeperの-3.4.10エキス
2. /etc/profile.d/zookeeper.shを追加し、こう述べています。
輸出ZOOKEEPER_HOME =は/ opt / Hadoopの-2.7.3
輸出PATH = $ ZOOKEEPER_HOME / binに:$ PATHに
3.次のようにコピー飼育係-3.4.10 / confに/はzoo_sample.cfg zoo.cfg、変化があります
#各目盛りのミリ秒数
tickTime = 2000
#の数は、その初期のダニ
#同期位相を取ることができます
initLimit = 10
#の間を通過することができるダニの数
#リクエストを送信して承認を取得
syncLimit = 5
#スナップショットが保存されているディレクトリ。
#/ tmpが、ここだけで、保存のために/ tmpを使用していません
#例の酒。
DATADIR =は/ opt /飼育係/データ(自己設定、必要に応じて)
dataLogDir =は/ opt /飼育係/ログ
クライアントが接続するときの#ポート
CLIENTPORT = 2181
#クライアント接続の最大数。
あなたがより多くのクライアントを処理する必要がある場合#これを増やします
#maxClientCnxns = 60
#
#のメンテナンス部を必ずお読みください
autopurgeをオンにする前に、#管理者ガイド。
#
#スナップショットの数は、DATADIRに保持します
#autopurge.snapRetainCount = 3
時間で#パージタスク間隔
自動パージ機能を無効にするには「0」に設定してください#
#Autopurge.purgeInterval = 1
server.1 =レジスタ1:3888:2888
server.2 =レジスタ2:3888:2888
server.3 = Register3:2888:3888
4.スタートのZooKeeper
sshのYRF @レジスタ1 <<機能
zkServer.sh開始
出口
関数
sshのYRF @レジスタ2 <<機能
zkServer.sh開始
出口
関数
sshのYRF @ Register3 <<機能
zkServer.sh開始
出口
関数
5.成功したスタートのZooKeeperを確認してください
sshのYRF @レジスタ1 <<機能
zkServer.sh状況
出口
関数
sshのYRF @レジスタ2 <<機能
zkServer.sh状況
出口
関数
sshのYRF @ Register3 <<機能
zkServer.sh状況
出口
関数
6.エンドのZooKeeper
sshのYRF @レジスタ1 <<機能
zkServer.sh停止
出口
関数
sshのYRF @レジスタ2 <<機能
zkServer.sh停止
出口
関数
sshのYRF @ Register3 <<機能
zkServer.sh停止
出口
関数
Hadoopのバージョン:2.7.3
1.ダウンロードしたHadoopの-2.7.3 / optディレクトリに移動しました
設定するには、いくつかの構成ファイルでの2のHadoop-2.7.3の/ etc / Hadoopの/
A。コア-site.xmlに
<設定>
<プロパティ>
<名前> fs.defaultFS </名前>
<値> HDFS://名前ノード/ </ value>の
</プロパティ>
<プロパティ>
<名前> hadoop.tmp.dir </名前>
<値>は/ opt / Hadoopの/ TEMP </ value>の
</プロパティ>
<プロパティ>
<名前> ha.zookeeper.quorum </名前>
<値>レジスタ1:2181、レジスタ2:2181、Register3:2181 </値>
</プロパティ>
<プロパティ>
<名前> io.file.buffer.size </名前>
<値> 4096 </ value>の
</プロパティ>
</設定>
B。hadoop-env.sh
見つけて、それがシステムでインストールされている場合は修正したインストールJavaのパスは、パスで、それが一般的である輸出JAVA_HOME =は/ usr
C。HDFS-site.xmlの
<設定>
<プロパティ>
<名前> dfs.nameservices </名前>
<value>は名前ノード</ value>の
</プロパティ>
<プロパティ>
<名前> dfs.ha.namenodes.NAMENODE </名前>
<値> namenode1、namenode2 </ value>の
</プロパティ>
<プロパティ>
<名前> dfs.namenode.rpc-address.NAMENODE.namenode1 </名前>
<値> Lead1:9000 </ value>の
</プロパティ>
<プロパティ>
<名前> dfs.namenode.rpc-address.NAMENODE.namenode2 </名前>
<値> Lead2:9000 </ value>の
</プロパティ>
<プロパティ>
<名前> dfs.namenode.http-address.NAMENODE.namenode1 </名前>
<値> Lead1:50070 </ value>の
</プロパティ>
<プロパティ>
<名前> dfs.namenode.http-address.NAMENODE.namenode2 </名前>
<値> Lead2:50070 </ value>の
</プロパティ>
<プロパティ>
<名前> dfs.ha.automatic-failover.enabled </名前>
<値>真</ value>の
</プロパティ>
<プロパティ>
<名前> dfs.namenode.shared.edits.dir </名前>
<値> qjournal://レジスタ1:8485;レジスタ2:8485; Register3:8485 /名前ノード</ value>の
</プロパティ>
<プロパティ>
<名前> dfs.journalnode.edits.dir </名前>
<値>は/ opt / Hadoopの/雑誌/データ</ value>の
</プロパティ>
<プロパティ>
<名前> dfs.client.failover.proxy.provider.NAMENODE </名前>
<値> org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider </ value>の
</プロパティ>
<プロパティ>
<名前> dfs.replication </名前>
<値> 3 </値>
</プロパティ>
<プロパティ>
<名前> dfs.namenode.name.dir </名前>
<値>は/ opt / Hadoopの/ HDFS /名前</ value>の
</プロパティ>
<プロパティ>
<名前> dfs.datanode.data.dir </名前>
<値>は/ opt / Hadoopの/ HDFS /データ</ value>の
</プロパティ>
<プロパティ>
<名前> dfs.ha.fencing.ssh.connectタイムアウト</名前>
<値> 10000 </ value>の
</プロパティ>
<プロパティ>
<名前> dfs.ha.fencing.methods </名前>
<値>
sshfence
シェル(/ binに/真)
</ value>の
</プロパティ>
<プロパティ>
<名前> dfs.ha.fencing.ssh.private・キー・ファイル</名前>
<値> /home/yrf/.ssh/id_rsa </ value>の
</プロパティ>
</設定>
D。mapred-site.xmlに
<設定>
<プロパティ>
<名前> mapreduce.framework.name </名前>
<値>糸</値>
</プロパティ>
</設定>
電子。奴隷
Follower1
Follower2
Follower3
Follower4
Follower5
F。糸-site.xmlに
<設定>
<プロパティ>
<名前> yarn.resourcemanager.ha.enabled </名前>
<値>真</ value>の
</プロパティ>
<プロパティ>
<名前> yarn.resourcemanager.cluster-ID </名前>
<値> YARN </ value>の
</プロパティ>
<プロパティ>
<名前> yarn.resourcemanager.ha.rm-IDS </名前>
<値> yarn1、yarn2 </ value>の
</プロパティ>
<プロパティ>
<名前> yarn.resourcemanager.hostname.yarn1 </名前>
<値> Lead1 </ value>の
</プロパティ>
<プロパティ>
<名前> yarn.resourcemanager.hostname.yarn2 </名前>
<値> Lead2 </ value>の
</プロパティ>
<プロパティ>
<名前> yarn.resourcemanager.recovery.enabled </名前>
<値>真</ value>の
</プロパティ>
<プロパティ>
<名前> yarn.resourcemanager.store.class </名前>
<値> org.apache.hadoop.yarn.server.resourcemanager.recovery.ZKRMStateStore </ value>の
</プロパティ>
<プロパティ>
<名前> yarn.resourcemanager.zkアドレス</名前>
<値>レジスタ1:2181、レジスタ2:2181、Register3:2181 </値>
</プロパティ>
<プロパティ>
<名前> yarn.nodemanager.aux-サービス</名前>
<値> mapreduce_shuffle </ value>の
</プロパティ>
</設定>
3. [スタート] Hadoopの:
。最初のスタート:
sshのYRF @レジスタ1 <<機能
hadoop-daemon.shスタートjournalnode
出口
関数
sshのYRF @レジスタ2 <<機能
hadoop-daemon.shスタートjournalnode
出口
関数
sshのYRF @ Register3 <<機能
hadoop-daemon.shスタートjournalnode
出口
関数
sshのYRF @ Lead1 <<機能
HDFS zkfc -formatZK
HDFS名前ノード-format
start-dfs.sh
start-yarn.sh
出口
関数
sshのYRF @ Lead2 <<機能
このResourceManagerを開始yarn-daemon.sh
出口
関数
。B一般的には、起動します。
sshのYRF @ Lead1 <<機能
start-dfs.sh
start-yarn.sh
このResourceManagerを開始yarn-daemon.sh
出口
関数
sshのYRF @ Lead2 <<機能
このResourceManagerを開始yarn-daemon.sh
出口
関数
4.停止のHadoop:
sshのYRF @ Lead1 <<機能
stop-yarn.sh
出口
関数
sshのYRF @ Lead2 <<機能
yarn-daemon.sh停止のResourceManager
出口
関数
sshのYRF @ Lead1 <<機能
stop-dfs.sh
出口
関数
5.グローバルに使用することができ/etc/profile.d/hadoop.sh Hadoopのコマンドを追加します。
輸出HADOOP_HOME =は/ opt / Hadoopの-2.7.3
輸出PATH = $ HADOOP_HOME / binに:$ HADOOP_HOME / sbinに:$ PATHに