Hadoop是一个分布式计算框架,它可以处理大量的数据,并且可以在多台机器上运行。要使用Hadoop,首先需要配置环境变量。
首先,我们需要在系统中安装Java运行时环境(JRE)。然后,我们需要将Hadoop安装到本地文件夹中。最后,我们需要设置Hadoop的环境变量。
# 设置 HADOOP_HOME 环境变量 export HADOOP_HOME=/usr/local/hadoop # 设置 JAVA_HOME 环境变量 export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.252.b09-2.el7_8.x86_64 # 添加 Hadoop bin 目录到 PATH 变量 export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
上述代码将设置三个不同的环境变量:HADOOP_HOME、JAVA_HOME 和 PATH。 HADOOP_HOME 是 Hadoop 存储的位置;JAVA_HOME 是 Java 运行时所在的位置;而 PATH 是用于查找命令的位置。
此外,我们还需要设置一些其他的 Hadoop 相关的参数来使用 Hadoop 集群功能。例如:
# 这是一个核心参数,定义了hdfs文件存储位置 export HDFS_NAMENODE=hdfs://localhost:9000 # 这是一个核心参数,定义了hdfs文件根目录 export HDFS_ROOT=/user/hdfs # 这是一个核心参数,定义了yarn集群master节点 export YARN_RESOURCEMANAGER=yarn://localhost:8032 # 这是一个核心参数,定义了yarn集群worker节点 export YARN_NODEMANAGER=yarn://localhost:8041
上述代码将规定 HDFS 和 YARN 集合中 master 和 worker 节 点的位 置 ,并且把 hdfs 根目录路径规定在 /user/hdfs 中。
总之,通过上述步骤就能够正常使用 hadoop 配 置 环 境 变 量 ,并能够正常使用 hadoop 集 群功能。
1.修改主机名称,我这里创建了三个虚拟主机,分别命名node-1,node-2,node-3,进入 network 文件删掉里面的内容直接写上主机名就可以了
vi /etc/sysconfig/network
2.映射 IP 和主机名,之后 reboot 重启主机
[root@node-1 redis-cluster]# vim /etc/hosts
192.168.0.1 node-1
192.168.0.2 node-2
192.168.0.3 node-3
3.检测防火墙(要关闭防火墙),不同系统的防火墙关闭方式不一样,以下做个参考即可
1.service iptables stop 关闭
2.chkconfig iptables off 强制关闭 除非手动开启不然不会自动开启
3.chkconfig iptanles 查看
4.service iptables status 查看防火墙状态
4.ssh 免密码登录
输入命令:ssh-keygen -t rsa 然后点击四个回车键,如下图所示:
然后通过 ssh-copy-id 对应主机 IP,之后通过“ssh 主机名/IP” 便可以不输入密码即可登录相应的主机系统
上传 hadoop 安装包解压后进入 hadoop-2.7.6/etc/hadoop 目录下
以下所有的 <property> </property> 都是写在各自相应配置文件末尾的 <configuration> 标签里面
第一个 hadoop-env.sh
vi hadoop-env.sh
export JAVA_HOME=/usr/java/jdk1.8.0_171 #JAVA_HOME写上自己jdk 的安装路径
第二个 :core-site.xml
vi <strong>core-site.xml</strong>
<!-- 指定Hadoop所使用的文件系统schema(URI),HDFS的老大(NameNode)的地址 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://node-1:9000</value>
</property>
<!-- 定Hadoop运行是产生文件的存储目录。默认 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/export/data/hddata</value>
</property>
第三个: hdfs-site.xml
vi <strong>hdfs-site.xml</strong>
<!-- 指定HDFS副本的数量,不修改默认为3个 -->
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<!-- dfs的SecondaryNameNode在哪台主机上 -->
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>node-2:50090</value>
</property>
第四个: mapred-site.xml
mv mapred-site.xml.template mapred-site.xml
vi mapred-site.xml
<!-- 指定MapReduce运行是框架,这里指定在yarn上,默认是local -->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
第五个:yarn-site.xml
vi <strong>yarn-site.xml</strong>
<!-- 指定yarn的老大ResourceManager的地址 -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>node-1</value>
</property>
<!-- NodeManager上运行的附属服务。需要配置成mapreduce_shuffle,才可以运行MapReduce程序默认值 -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
第六个:slaves 文件,里面写上从节点所在的主机名字
vi slaves
node-1
node-2
node-3
第七个:将 Hadoop 添加到环境变量
vi /etc/profile
export HADOOP_HOME=/export/server/hadoop-2.7.6
export PATH=$HADOOP_HOME/bin:$PATH
然后将 hadoop 安装包远程发送给各个副计算机
scp -r /export/server/hadoop-2.7.6/ root@node-2:/export/server/
scp -r /export/server/hadoop-2.7.6/ root@node-3:/export/server/
把配置好的环境变量也要远程发送给各个副计算机
scp -r /etc/profile root@node-2:/etc/
scp -r /etc/profile root@node-3:/etc/
然后试所有的计算机环境变量生效
source /etc/profile
关于 hadoop的 配置说明
在 hadoop 官网,左下角点击 Documentation 点击相应的版本进去,拉到最左下角有 ***-default.xml
***-default.xml 是默认的配置,如果用户没有修改这些选项将会生效
***-site.xml 是用户自定义的配置
site的配置选项优先级大于 default 的,如果 site 里面有就会覆盖 default 里面的
对Map的结果进行排序并传输到Reduce进行处理 Map的结果并不是直接存放到硬盘,而是利用缓存做一些预排序处理 Map会调用Combiner,...
关键字:例化,generate,全加器,层次访问在一个模块中引用另一个模块,对其端口进行相关连接,叫做模块例化。模块例化建立了描...
icon基础库 1.0.0 开始支持,低版本需做兼容处理。图标。组件属性的长度单位默认为px,2.4.0起支持传入单位(rpx/px)。属性名类型...
关键词:testbench,仿真,文件读写Verilog代码设计完成后,还需要进行重要的步骤,即逻辑功能仿真。仿真激励文件称之为testbenc...
你需要使用三角几何来计算移动物体的距离或角速度。Arduino提供了传统的三角函数(sin,cos,tan,asin,acos,atan),可以通过...