摘要:注意這里目錄是每臺機器上的,不要去使用資源共享卷三臺機器同時做,配置使用框架執行處理程序更多參考更多配置信息,請參考。
準備hadoop2(master), Hadoop3,hadoop4,三臺機器
vi /etc/profile.d/hadoop.sh
export JAVA_HOME=/usr/local/src/jdk1.8.0_92 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin export PATH=$PATH:${JAVA_PATH} export HADOOP_HOME=/usr/local/src/hadoop-2.7.7 export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin export HDFS_DATANODE_USER=root export HDFS_DATANODE_SECURE_USER=root export HDFS_SECONDARYNAMENODE_USER=root export HDFS_NAMENODE_USER=root export YARN_RESOURCEMANAGER_USER=root export YARN_NODEMANAGER_USER=root
mapred-env.sh hadoop-env.xml yarn-env.sh 至少有一個設置JAVA_HOME
core-site.xml,配置hdfs端口和地址,臨時文件存放地址
更多參考core-site.xml
fs.default.name hdfs://hadoop2:9091 hadoop.tmp.dir /data/docker/hadoop/tmp
hdfs-site.xml, 配置HDFS組件屬性,副本個數以及數據存放的路徑
更多參考hdfs-site.xml
dfs.namenode.name.dir和dfs.datanode.data.dir不再多帶帶配置,官網給出的配置是針對規模較大的集群的較高配置。
注意:這里目錄是每臺機器上的,不要去使用volumes-from data_docker資源共享卷
三臺機器同時做
mkdir -p /opt/hadoop/tmp && mkdir -p /opt/hadoop/dfs/data && mkdir -p /opt/hadoop/dfs/name
dfs.namenode.http-address hadoop2:9092 dfs.replication 2 dfs.namenode.name.dir file:/opt/hadoop/dfs/name dfs.datanode.data.dir file:/opt/hadoop/dfs/data dfs.namenode.handler.count 100
mapred-site.xml,配置使用yarn框架執行mapreduce處理程序
更多參考mapred-site.xml
mapreduce.framework.name yarn mapreduce.jobhistory.address hadoop2:9094 mapreduce.jobhistory.webapp.address hadoop2:9095 mapreduce.application.classpath /usr/local/src/hadoop-3.1.2/etc/hadoop, /usr/local/src/hadoop-3.1.2/share/hadoop/common/*, /usr/local/src/hadoop-3.1.2/share/hadoop/common/lib/*, /usr/local/src/hadoop-3.1.2/share/hadoop/hdfs/*, /usr/local/src/hadoop-3.1.2/share/hadoop/hdfs/lib/*, /usr/local/src/hadoop-3.1.2/share/hadoop/mapreduce/*, /usr/local/src/hadoop-3.1.2/share/hadoop/mapreduce/lib/*, /usr/local/src/hadoop-3.1.2/share/hadoop/yarn/*, /usr/local/src/hadoop-3.1.2/share/share/hadoop/yarn/lib/*
yarn-site.xml
更多配置信息,請參考yarn-site.xml。
yarn.resourcemanager.hostname bdfb9324ff7d yarn.nodemanager.aux-services mapreduce_shuffle yarn.resourcemanager.webapp.address hadoop2:9093 yarn.nodemanager.aux-services.mapreduce.shuffle.class org.apache.hadoop.mapred.ShuffleHandler
配置ssh免密登錄
yum -y install openssh-server openssh-clients ssh-keygen -q -t rsa -b 2048 -f /etc/ssh/ssh_host_rsa_key -N "" ssh-keygen -q -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N "" ssh-keygen -t dsa -f /etc/ssh/ssh_host_ed25519_key -N "" ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa #這樣可以沒有交互 #進入~/.ssh cp id_rsa.pub authorized_keys cp authorized_keys /data/docker/hadoop/ #拷貝到共享磁盤 #在其他docker #1. 依次完成上述操作(1-4) #2. hadoop3 ,hadoop4操作如下 cp /data/docker/hadoop/authorized_keys ~/.ssh cat id_rsa.pub >> authorized_keys cp authorized_keys /data/docker/hadoop/authorized_keys #覆蓋 #再回到hadoop2容器 cp /data/docker/hadoop/authorized_keys authorized_keys #覆蓋,這樣 #測試 #啟動hadoop3,hadoop4的ssh /usr/sbin/sshd ssh root@hadoop3 ssh root@hadoop4
配置hosts
172.17.0.9 hadoop2 172.17.0.10 hadoop3 172.17.0.11 hadoop4
配置works定義工作節點
vi /usr/local/src/hadoop-3.1.2/etc/hadoop/workers ,2.7版本中應該是slave
hadoop2 #這臺以既可以是namenode,也可以是datanode,不要浪費機器 hadoop3 #只做datanode hadoop4 #只做datanode
停止docker容器并創建鏡像
172.17.0.0/24 可用ip: 1-255 ip總數256, 子網掩碼:255.255.255.0
172.17.0.0/16 可用ip: 可用地址就是172.16.0.1-172.16.255.254. ip總數:65536 子網掩碼:255.255.0.0
docker commit hadoop2 image_c docker run --privileged -tdi --volumes-from data_docker --name hadoop2 --hostname hadoop2 --add-host hadoop2:172.17.0.8 --add-host hadoop3:172.17.0.9 --add-host hadoop4:172.17.0.10 --link mysqlcontainer:mysqlcontainer -p 5002:22 -p 8088:8088 -p 9090:9090 -p 9091:9091 -p 9092:9092 -p 9093:9093 -p 9094:9094 -p 9095:9095 -p 9096:9096 -p 9097:9097 -p 9098:9098 -p 9099:9099 centos:hadoop /bin/bash docker run --privileged -tdi --volumes-from data_docker --name hadoop3 --hostname hadoop3 --add-host hadoop2:172.17.0.8 --add-host hadoop3:172.17.0.9 --add-host hadoop4:172.17.0.10 --link mysqlcontainer:mysqlcontainer -p 5003:22 centos:hadoop /bin/bash docker run --privileged -tdi --volumes-from data_docker --name hadoop4 --hostname hadoop4 --add-host hadoop2:172.17.0.8 --add-host hadoop3:172.17.0.9 --add-host hadoop4:172.17.0.10 --link mysqlcontainer:mysqlcontainer -p 5004:22 centos:hadoop /bin/bash
啟動
首次hdfs namenode -format
你會看到最后倒數: util.ExitUtil: Exiting with status 0
start-all.sh This script is Deprecated. Instead use start-dfs.sh and start-yarn.sh
#start-dfs.sh---------------------- # jps 可以在Master上看到如下進程: 5252 DataNode 5126 NameNode 5547 Jps 5423 SecondaryNameNode # jps slave可以看到 1131 Jps 1052 DataNode
# start-yarn.sh------------------ # jps 可以在Master上看到如下進程: 5890 NodeManager 5252 DataNode 5126 NameNode 6009 Jps 5423 SecondaryNameNode 5615 ResourceManager # jps slave可以看到 1177 NodeManager 1052 DataNode 1309 Jps
訪問
http://hadoop2:9093
http://hadoop2:9092
試用hadoop準備test
cat test.txt hadoop mapreduce hive hbase spark storm sqoop hadoop hive spark hadoop #hdfs dfs 看一下幫助 #創建hadoop下的目錄 hadoop fs -mkdir /input hadoop fs -ls / #上傳 hadoop fs -put test.txt /input hadoop fs -ls /input #運行hadoop自帶workcount程序 #/hadoop-mapreduce-examples-2.7.7.jar里面有很多小程序 yarn jar /usr/local/src/hadoop-2.7.7/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.7.jar wordcount /input/test.txt /output hadoop fs -ls /output -rw-r--r-- 2 root supergroup 0 2019-06-03 01:28 /output/_SUCCESS -rw-r--r-- 2 root supergroup 60 2019-06-03 01:28 /output/part-r-00000 #查看結果 hadoop fs -cat /output/part-r-00000 #查看其他內置程序 hadoop jar /usr/local/src/hadoop-2.7.7/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.7.jar #可以看到grep的用法 hadoop jar /usr/local/src/hadoop-2.7.7/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.7.jar grep
http://hadoop2:9093 看到任務信息
其他hadoop命令#查看容量 hadoop fs -df -h Filesystem Size Used Available Use% hdfs://hadoop2:9091 150.1 G 412 K 129.9 G 0% #查看各個機器狀態 hdfs dfsadmin -report
文章內容由海暢智慧http://www.hichannel.net原創出品,轉載請注明!
更多技術文檔和海暢產品,請關注海暢智慧官方網站。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/27882.html
摘要:節點管理器將利用該聲明該集群服務。在本示例當中,我們將部署一項服務。此標記用于告知公布端口作為該服務的可用端口。將此稱為入口負載均衡。當外部系統調用某項服務時,接收節點會接受流量并利用提供的內部服務對其進行負載均衡。 最新版本Docker Engine v1.12中,包含了多項與Docker Swarm緊密相關的功能變更。在今天的文章中,數人云將和大家探討如何利用Docker的Swar...
摘要:的設計模式的設計模式以持續集成持續測試持續交付和持續部署為中心,自動化協作和持續監控是中使用的一些其他設計模式。持續集成持續集成是不斷地將源代碼集成到一個新的構建或發布的過程,源代碼可以在本地存儲中,也可以在或中。 showImg(https://segmentfault.com/img/remote/1460000010452455); 識別二維碼報名活動 8月19日,來自微軟、數人...
摘要:這相當于在原始安裝程序中調整文件。警告我并沒有告訴這件事,因為這可能會嚇到他或任何其他專家。在創建應用商店條目的過程中,還有兩個問題需要解決變量需要設置為確切值,這樣用戶就可以通過它連接到該實例。 Harbor Registry是VMware公司的Docker鏡像管理產品。相較于其他鏡像倉庫,Harbor提供身份管理功能,安全性更高,支持單個主機上的多個registry,這些功能正是很...
閱讀 1472·2021-10-18 13:29
閱讀 2715·2021-10-12 10:18
閱讀 3588·2021-09-22 15:06
閱讀 2605·2019-08-29 17:09
閱讀 2794·2019-08-29 16:41
閱讀 1500·2019-08-29 13:48
閱讀 3234·2019-08-26 13:49
閱讀 3332·2019-08-26 13:34