hadoop分布式环境搭建

#hadoop伪分布式环境搭建
##1.设置服务器的主机名称
三台主机分别设置
hostnamectl set-hostname master
hostnamectl set-hostname slave1
hostnamectl set-hostname slave2
用bash刷新
##2.绑定主机名与 IP 地址
三台主机分别设置
vi /etc/hosts
加上
192.168.130.128 master
192.168.130.129 slave1
192.168.130.130 slave2
##3. 关闭防火墙
三台主机分别设置
systemctl stop firewalld
systemctl disable firewalld
##4. 创建 hadoop 用户
在master主机上
useradd hadoop
echo “1” |passwd --stdin hadoop
##5. 安装 JAVA 环境
卸载自带 OpenJDK
rpm -qa | grep java
卸载以下出现的所有软件
用以下命令来查看是否卸载完成
java –version
安装 JDK
tar -zxvf /opt/software/jdk-8u152-linux-x64.tar.gz –C /usr/local/src/
查看安装成功
ls /usr/local/src/
设置 JAVA 环境变量
vi /etc/profile
在文件的最后增加如下两行:
export JAVA_HOME=/usr/local/src/jdk1.8.0_152
export PATH= P A T H : PATH: PATH:JAVA_HOME/bin
执行 source 使设置生效:
source /etc/profile
检查 JAVA 是否可用
echo KaTeX parse error: Expected 'EOF', got '#' at position 25: … java –version #̲#6. 安装 Hadoop 软…PATH: H A D O O P H O M E / b i n : HADOOP_HOME/bin: HADOOPHOME/bin:HADOOP_HOME/sbin
source /etc/profile
检查设置是否生效:
Hadoop
修改目录所有者和所有者组
chown -R hadoop:hadoop /usr/local/src/
配置 Hadoop 配置文件
cd /usr/local/src/hadoop-2.7.1/
vi etc/hadoop/hadoop-env.sh
在文件中查找 export JAVA_HOME 这行,将其改为如下所示内容:
export JAVA_HOME=/usr/local/src/jdk1.8.0_152
测试 Hadoop 本地模式的运行
su – hadoop
创建输入数据存放目录
mkdir ~/input
创建数据输入文件
vi input/data.txt
输入如下内容,保存退出
Hello World
Hello Hadoop
Hello Husan
测试 MapReduce 运行
hadoop jar /usr/local/src/hadoop-2.7.1/share/hadoop/mapreduce/hadoop-mapreduce-e xamples-2.7.1.jar wordcount ~/input/data.txt ~/output
文件_SUCCESS 表示处理成功,处理的结果存放在 part-r-00000 文件中,查看该文件。
cat output/part-r-00000
##7.生成 SSH 密钥
三台机都切换到 hadoop 用户
su – hadoop
三台都生成密钥
ssh-keygen -t rsa
将 id_rsa.pub 追加到授权 key 文件中
三台都执行
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
ls ~/.ssh/
修改文件"authorized_keys"权限
三台都执行
chmod 600 ~/.ssh/authorized_keys
ll ~/.ssh/
配置 SSH 服务
三台都执行
su – root
vi /etc/ssh/sshd_config
PubkeyAuthentication yes #找到此行,并把#号注释删除
重启 SSH 服务
systemctl restart sshd
切换到 hadoop 用户
su – hadoop
验证 SSH 登录本机
ssh localhost
将 Master 节点的公钥 id_rsa.pub 复制到每个 Slave 点
hadoop 用户登录,通过 scp 命令实现密钥拷贝。
scp ~/.ssh/id_rsa.pub hadoop@slave1:~/
全回车,首次远程连接时系统会询问用户是否要继续连接。需要输入“yes
在每个 Slave 节点把 Master 节点复制的公钥复制到authorized_keys 文件
hadoop 用户登录 slave1 和 slave2 节点,执行命令
slave1和slave2执行
cat ~/id_rsa.pub >>~/.ssh/authorized_keys
在每个 Slave 节点删除 id_rsa.pub 文件
slave1和slave2执行
rm -rf ~/id_rsa.pub
将 Slave1 节点的公钥复制到 Master
Slave1执行
scp ~/.ssh/id_rsa.pub hadoop@master:~/
在 Master 节点把从 Slave 节点复制的公钥复制到 authorized_keys 文件
Master 执行
cat ~/id_rsa.pub >>~/.ssh/authorized_keys
rm -rf ~/id_rsa.pub
将 Slave2 节点的公钥复制到 Master
Slave2执行
scp ~/.ssh/id_rsa.pub hadoop@master:~/
在 Master 节点把从 Slave 节点复制的公钥复制到 authorized_keys 文件
Master 执行
cat ~/id_rsa.pub >>~/.ssh/authorized_keys
rm -rf ~/id_rsa.pub
验证 Master 到每个 Slave 节点无密码登录
Master 执行
ssh slave1
ssh slave2
ssh master
配置两个子节点slave1、slave2的JDK环境。
Master 执行
cd /usr/local/src/
scp -r jdk1.8.0_152 root@slave1:/usr/local/src/
scp -r jdk1.8.0_152 root@slave2:/usr/local/src/
Slave1执行
vi /etc/profile
#此文件最后添加下面两行
export JAVA_HOME=/usr/local/src/jdk1.8.0_152
export PATH= P A T H : PATH: PATH:JAVA_HOME/bin
Slave2执行
vi /etc/profile
#此文件最后添加下面两行
export JAVA_HOME=/usr/local/src/jdk1.8.0_152
export PATH= P A T H : PATH: PATH:JAVA_HOME/bin
##8. 在 Master 节点上安装 Hadoop
Master 执行
cd /usr/local/src/
mv hadoop-2.7.1 hadoop
配置 Hadoop 环境变量
yum install -y vim
vim /etc/profile
tail -n 4 /etc/profile
最后四行改为
export JAVA_HOME=/usr/local/src/jdk1.8.0_152
export PATH= P A T H : PATH: PATH:JAVA_HOME/bin
export HADOOP_HOME=/usr/local/src/hadoop
export PATH= H A D O O P H O M E / b i n : HADOOP_HOME/bin: HADOOPHOME/bin:HADOOP_HOME/sbin:$PATH
su – hadoop
source /etc/profile
exit
cd /usr/local/src/hadoop/etc/hadoop/
vim hadoop-env.sh
搜索并更改
export JAVA_HOME=/usr/local/src/jdk1.8.0_152
配置 hdfs-site.xml 文件参数
vim hdfs-site.xml


dfs.namenode.name.dir
file:/usr/local/src/hadoop/dfs/name


dfs.datanode.data.dir
file:/usr/local/src/hadoop/dfs/data


dfs.replication
3


配置 core-site.xml 文件参数
vim core-site.xml


fs.defaultFS
hdfs://192.168.130.128:9000


io.file.buffer.size
131072


hadoop.tmp.dir
file:/usr/local/src/hadoop/tmp


配置 mapred-site.xml
Pwd
cp mapred-site.xml.template mapred-site.xml
vim mapred-site.xml


mapreduce.framework.name
yarn


mapreduce.jobhistory.address
master:10020


mapreduce.jobhistory.webapp.address
master:19888


配置 yarn-site.xml
vim yarn-site.xml

yarn.resourcemanager.address master:8032 yarn.resourcemanager.scheduler.address master:8030 yarn.resourcemanager.resource-tracker.address master:8031 yarn.resourcemanager.admin.address master:8033 yarn.resourcemanager.webapp.address master:8088 yarn.nodemanager.aux-services mapreduce_shuffle yarn.nodemanager.auxservices.mapreduce.shuffle.class org.apache.hadoop.mapred.ShuffleHandler 配置 masters 文件 Master执行 vim masters 192.168.130.128 Slave1和slave2执行 vim slaves 192.168.130.129 192.168.130.130 Master执行 新建目录 mkdir /usr/local/src/hadoop/tmp mkdir /usr/local/src/hadoop/dfs/name –p mkdir /usr/local/src/hadoop/dfs/data –p 修改目录权限 chown -R hadoop:hadoop /usr/local/src/hadoop/ 同步配置文件到 Slave 节点 scp -r /usr/local/src/hadoop/ root@slave1:/usr/local/src/ scp -r /usr/local/src/hadoop/ root@slave2:/usr/local/src/ slave1 和 slave2执行 vim /etc/profile 最后四行改为 export JAVA_HOME=/usr/local/src/jdk1.8.0_152 export PATH=$PATH:$JAVA_HOME/bin export HADOOP_HOME=/usr/local/src/hadoop export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH chown -R hadoop:hadoop /usr/local/src/hadoop/ su - hadoop source /etc/profile 配置 Hadoop 格式化 Master执行 su – hadoop cd /usr/local/src/hadoop/ bin/hdfs namenode –format 执行如下命令,启动 NameNode: hadoop-daemon.sh start namenode jps slave节点 启动 DataNode slvae1和slave2执行 hadoop-daemon.sh start datanode jps master执行 启动 SecondaryNameNode hadoop-daemon.sh start secondarynamenode jps 验证 http://master:50070 http://master:50090 master执行 stop-dfs.sh start-dfs.sh start-yarn.sh jps hdfs dfs -mkdir /input hdfs dfs -ls / cat ~/input/data.txt hdfs dfs -put ~/input/data.txt /input hdfs dfs -ls /input hdfs dfs -mkdir /output hdfs dfs -ls / hdfs dfs -rm -r -f /output 用补全路径 hadoop jar share/hadoop/mapreduce/hadomapreduce op-- -examples-2.7.1.jar wordcount /input/data.txt /output http://master:8088 http://master:50070 hdfs dfs -cat /output/part-r-00000 停止 Hadoop Master执行 stop-yarn.sh slave1和slave2执行 hadoop-daemon.sh stop datanode Master执行 hadoop-daemon.sh stop namenode hadoop-daemon.sh stop secondarynamenode jps
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值