刚刚开始学大数据的时候Hadoop最新版还是2.5.0,现在都已经出到3.1.0了,时间好快啊
Hadoop版本:apache-hadoop3.1.0
Linux操作系统:平时工作的时候都是CentOS6,CentOS7,
这将在archLinux系列的manjaro上部署,命令啊,步骤啊什么的都是一样的。
主要是想以后以Manjaro系统作为自己的个人电脑使用,工作得越久越发现自己的工作与Windows没有差点关系
cat /etc/hosts
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
# 添加如下行
192.168.1.101 mo.don.com mo
第一列是IP地址,第二列是主机名,第三列是别名,映射过以后用哪个效果都是一样的,通过Windows远程访问的话Windows下的hosts文件也需要添加IP地址映射,Windows的hosts文件一般在:C:\Windows\System32\drivers\etc
另外记得关闭防火墙
chmod +x *.tar.gz
tar -zxf hadoop-3.1.0.tar.gz -C /opt/modules/
我习惯使用软链接指向它,为什么?方便呗
ln -s /opt/modules/hadoop-3.1.0/ /opt/shortcut/hadoop
vim /etc/profile
添加如下内容
# Hadoop Environment Available
export HADOOP_HOME=/opt/shortcut/hadoop
export PATH=$PATH:$HADOOP_HOME/sbin
export PATH=$PATH:$HADOOP_HOME/bin
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_YARN_HOME=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
使用root用户source一下使环境变量生效
source /etc/profile
hadoop-env.sh,
yarn-env.sh,
mapred-env.sh
# 修改JAVA_HOME路径
export JAVA_HOME=/usr/lib/jvm/default
创建Hadoop本地存储临时数据的目录:
mkdir -p /opt/shortcut/hadoop/data/tmp
修改配置文件
<configuration>
<property>
<name>fs.defaultFSname>
<value>hdfs://mo.don.com:9820value>
property>
<property>
<name>hadoop.http.staticuser.username>
<value>dongvalue>
property>
<property>
<name>hadoop.tmp.dirname>
<value>/opt/shortcut/hadoop/data/tmpvalue>
property>
<property>
<name>fs.trash.intervalname>
<value>7200value>
property>
configuration>
创建Hadoop本地存储namenode和datanode数据的目录
mkdir -p /opt/shortcut/hadoop/data/namenode
mkdir -p /opt/shortcut/hadoop/data/datanode
<configuration>
<property>
<name>dfs.permissions.enabledname>
<value>falsevalue>
property>
<property>
<name>dfs.replicationname>
<value>2value>
property>
<property>
<name>dfs.namenode.name.dirname>
<value>/opt/shortcut/hadoop/data/namenodevalue>
property>
<property>
<name>dfs.datanode.data.dirname>
<value>/opt/shortcut/hadoop/data/datanodevalue>
property>
configuration>
<configuration>
<property>
<name>yarn.resourcemanager.hostnamename>
<value>mo.don.comvalue>
property>
<property>
<name>yarn.nodemanager.aux-servicesname>
<value>mapreduce_shufflevalue>
property>
<property>
<name>yarn.log-aggregation-enablename>
<value>truevalue>
property>
<property>
<name>yarn.log-aggregation.retain-secondsname>
<value>604800value>
property>
configuration>
<configuration>
<property>
<name>mapreduce.framework.namename>
<value>yarnvalue>
property>
<property>
<name>yarn.app.mapreduce.am.envname>
<value>HADOOP_MAPRED_HOME=/opt/shortcut/hadoopvalue>
property>
<property>
<name>mapreduce.map.envname>
<value>HADOOP_MAPRED_HOME=/opt/shortcut/hadoopvalue>
property>
<property>
<name>mapreduce.reduce.envname>
<value>HADOOP_MAPRED_HOME=/opt/shortcut/hadoopvalue>
property>
configuration>
hdfs namenode -format
hdfs --daemon start namenode
hdfs --daemon start datanode
yarn --daemon start resourcemanager
yarn --daemon start nodemanager
yarn --daemon start timelineserver
原来的启动脚本:
sbin/hadoop-daemon.sh start namenode
sbin/hadoop-daemon.sh start datanode
sbin/yarn-daemon.sh start resourcemanager
sbin/yarn-daemon.sh start nodemanager
sbin/mr-jobhistory-daemon.sh start historyserver
使用原来的脚本也能正常运行,但是会有警告滴
查看是否正常启动:
jps
Yarn资源调度系统:
http://mo.don.com:8088
OK,至此完成。