useradd hadoop
passwd hadoop
2.配置 sudochmod +w /etc/sudoersvi /etc/sudoershadoop ALL=(root)NOPASSWD:ALLchmod -w /etc/sudoers3.配置JAVA(hadoop用户运行)将下载好的安装包解压到 /usr/java/jdk1.7,然后设置环境变量,命令如下:
sudo vi /etc/profile然后编辑配置,内容如下:
export JAVA_HOME=/usr/java/jdk1.7 export PATH=$PATH:$JAVA_HOME/bin然后使环境变量立即生效,命令如下:
source /etc/profile然后验证JDK是否配置成功,命令如下:
4.配置/etc/hosts(3台机器保持一致)java -version
192.168.182.133 qxy1 192.168.182.134 qxy2 192.168.182.135 qxy35.配置SSH(HADOOP用户)输入如下命令:
ssh-keygen –t rsa然后一路按回车键,最后在将id_rsa.pub写到authorized_keys,命令如下:
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys在hadoop用户下,需要给authorized_keys赋予600的权限,不然免密码登陆无效。在其他节点只需要使用 ssh-keygen –t rsa 命令,生产对应的公钥,然后将各个节点的id_rsa.pub追加到nna节点的authorized_keys中。最后,将nna节点下的authorized_keys文件通过scp命令,分发到各个节点的 ~/.ssh/ 目录下。目录如下:
# 这里以NNS节点为例子 scp ~/.ssh/authorized_keys hadoop@qxy2:~/.ssh/然后使用ssh命令相互登录,看是否实现了免密码登录,登录命令如下:
# 这里以nns节点为例子 ssh qxy2若登录过程中木有提示需要输入密码,即表示密码配置成功。
6.关闭防火墙(3台用户均执行 root)
systemctl disable firewalld
同时,也需要关闭SELinux,可修改 /etc/selinux/config 文件,将其中的 SELINUX=enforcing 改为 SELINUX=disabled即可。
7.配置zookeeper (可省略)将下载好的安装包,解压到指定位置,这里为直接解压到当前位置,命令如下:
tar -zxvf zk-{version}.tar.gz修改zk配置,将zk安装目录下conf/zoo_sample.cfg重命名zoo.cfg,修改其中的内容:
# The number of milliseconds of each tick # 服务器与客户端之间交互的基本时间单元(ms) tickTime=2000 # The number of ticks that the initial # synchronization phase can take # zookeeper所能接受的客户端数量 initLimit=10 # The number of ticks that can pass between # sending a request and getting an acknowledgement # 服务器和客户端之间请求和应答之间的时间间隔 syncLimit=5 # the directory where the snapshot is stored. # do not use /tmp for storage, /tmp here is just # example sakes. # 保存zookeeper数据,日志的路径 dataDir=/home/hadoop/data/zookeeper # the port at which the clients will connect # 客户端与zookeeper相互交互的端口 clientPort=2181 server.1= dn1:2888:3888 server.2= dn2:2888:3888 server.3= dn3:2888:3888 #server.A=B:C:D 其中A是一个数字,代表这是第几号服务器;B是服务器的IP地址;C表示服务器与群集中的“领导者”交换信息的端口;当领导者失效后,D表示用来执行选举时服务器相互通信的端口。接下来,在配置的dataDir目录下创建一个myid文件,里面写入一个0-255之间的一个随意数字,每个zk上这个文件的数字要是不一样的,这些数字应该是从1开始,依次写每个服务器。文件中序号要与dn节点下的zk配置序号一直,如:server.1=dn1:2888:3888,那么dn1节点下的myid配置文件应该写上1。
8.启动zookeeper分别在各个节点启动zk进程,命令如下:
bin/zkServer.sh start
输入zk的状态命令查看,命令如下:
bin/zkServer.sh status会出现一个leader和两个follower。
9.下载hadoop-2.6.2.tar.gz,并将其解压/home/hadoop
tar -zxvf hadoop-2.6.2.tar.gz
10.
【3台机器上均要执行,一般先在一台机器上配置完成,再用scp复制到其它机器】
(1)hadoop_env.sh
export JAVA_HOME=/usr/java/jdk1.7.0_51
(2)修改core-site.xml
(3)hdfs-site.xml点击(此处)折叠或打开
- <configuration>
- <property>
- <name>hadoop.tmp.dir</name>
- <value>/home/hadoop/tmp</value>
- <description>Abase for other temporary directories.</description>
- </property>
- <property>
- <name>fs.defaultFS</name>
- <value>hdfs://qxy1:9000</value>
- </property>
- <property>
- <name>io.file.buffer.size</name>
- <value>4096</value>
- </property>
- </configuration>
(4) mapred-site.xml点击(此处)折叠或打开
- <configuration>
- <property>
- <name>dfs.replication</name>
- <value>2</value>
- </property>
- </configuration>
点击(此处)折叠或打开
- <configuration>
- <property>
- <name>mapreduce.framework.name</name>
- <value>yarn</value>
- <final>true</final>
- </property>
- <property>
- <name>mapreduce.jobtracker.http.address</name>
- <value>qxy1:50030</value>
- </property>
- <property>
- <name>mapreduce.jobhistory.address</name>
- <value>qxy1:10020</value>
- </property>
- <property>
- <name>mapreduce.jobhistory.webapp.address</name>
- <value>qxy1:19888</value>
- </property>
- <property>
- <name>mapred.job.tracker</name>
- <value>http://qxy1:9001</value>
- </property>
- </configuration>
(5)yarn_site.xml
(6) 修改slaves点击(此处)折叠或打开
- <property>
- <name>yarn.resourcemanager.hostname</name>
- <value>qxy1</value>
- </property>
- <property>
- <name>yarn.nodemanager.aux-services</name>
- <value>mapreduce_shuffle</value>
- </property>
- <property>
- <name>yarn.resourcemanager.address</name>
- <value>qxy1:8032</value>
- </property>
- <property>
- <name>yarn.resourcemanager.scheduler.address</name>
- <value>qxy1:8030</value>
- </property>
- <property>
- <name>yarn.resourcemanager.resource-tracker.address</name>
- <value>qxy1:8031</value>
- </property>
- <property>
- <name>yarn.resourcemanager.admin.address</name>
- <value>qxy1:8033</value>
- </property>
- <property>
- <name>yarn.resourcemanager.webapp.address</name>
- <value>qxy1:8088</value>
- </property>
qxy2 qxy3 (7) 将配置好的hadoop文件SCP到其他两个节点
$ scp -r /home/hadoop/hadoop-2.6.2 hadoop@qxy2:/home/hadoop/
$ scp -r /home/hadoop/hadoop-2.6.2 hadoop@qxy3:/home/hadoop/
(8) 验证
1、格式 化namenode (3个节点都需要验证) $ bin/hadoop namenode -format 2、启动hadoop【此步骤只需要在master上执行】 [jediael@master hadoop-1.2.1]$ bin/start-all.sh 3、验证1:向hdfs中写入内容 节点1 $ bin/hadoop fs -ls / $ bin/hadoop fs -mkdir /test ]$ bin/hadoop fs -ls / Found 1 items drwxr-xr-x - jediael supergroup 0 2015-04-19 23:41 /test 4、验证:登录页面 NameNode http://主节点:50070
http://192.168.182.133:8088 集群状态查看。与yarn-site.xml配置文件有关系。 5、查看各个主机的java进程 (1)master: $ jps 3694 NameNode 3882 SecondaryNameNode 7216 Jps 4024 ResourceManager
(2)slave1:
$ jps
1913 NodeManager
2673 Jps
1801 DataNode
(3)slave3:
$ jps
1942 NodeManager
2252 Jps
1840 DataNode
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/22569416/viewspace-1961175/ ,如需转载,请注明出处,否则将追究法律责任。