2(伪分布式搭建)
https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/SingleCluster.html
1、安装jdk:
cd software (安装包放这里)
rpm -i jdk文件名 (安装)
whereis java (查看路径)
cd /usr/java/jdk1.7... (实际在这里)
pwd (复制路径,配环境变量用)
vi + /etc/profile (配环境变量 +表示直接到末尾)
export JAVA_HOME=上面copy的路径
PATH=$PATH:$JAVA_HOME/bin
:wq! (保存退出)
. /etc/profile 或 source /etc/profile (使配置文件生效)
jps (查看是否安装好)
2、配置免密匙登陆
ssh localhost (测试是是否需要密码登陆)
cd
ll -a (查看文件包括隐藏文件)
cd .ssh/ (在这里配)
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa (生成密钥文件)
ll (出现id_dsa.pub 公钥文件,分享给别人)
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys (配置完成 ssh localhost 验证没问题 exit)
3、安装hadoop
上传hadoop-2.6.5.tar.gz 到sofware
mkdir -p /opt/sxt (安装目录)
tar xf hadoop-2.6.5.tar.gz -C /opt/sxt/ (解压)
cd /opt/sxt/hadoop-2.6.5/
pwd (复制路径配置环境变量)
vi + /etc/profile (配环境变量 +表示直接到末尾)
export HADOOP_HOME=上面复制的 (在java_home 后面)
PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
:wq! (保存退出)
. /etc/profile 或 source /etc/profile (使配置文件生效)
cd etc/hadoop (修改这个下面的配置文件)
echo $JAVA_HOME (copy)
vi hadoop-env.sh (找到export JAVA_HOME=刚才复制)
vi mapred-env.sh (找到export JAVA_HOME=刚才复制,注释的要放开)
vi yarn-env.sh (找到export JAVA_HOME=刚才复制,注释的要放开)
vi core-site.xml (/var/sxt/hadoop/pseude 默认到tmp文件夹容易丢失,所以指定一下)
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://node0001:9000</value> </property>
<property> <name>hadoop.tmp.dir</name> <value>/var/sxt/hadoop/pseude</value> </property>
</configuration>
vi hdfs-site.xml (副本数量和secondarynamenode)
<configuration> <property> <name>dfs.replication</name> <value>1</value> </property>
<property> <name>dfs.namenode.secondary.http-address</name> <value>node0001:50090</value> </property>
</configuration>
vi slaves (从节点配置信息,主从都是当前 ,改成node0001)
4、格式化
hdfs namenode -format (只能格式化一次,再次启动集群不要执行,格式化多次会导致不同角色集群id不同,服务起不来)
cd /var/sxt/hadoop/pseude (元数据信息都会在这里)
5、启动集群
start-dfs.sh (三个进程)
jps 出现dataname,secondarynamenode,jps,namenode 三个进程都起来,
cd /var/sxt/hadoop/pseude/dfs
ll
data:dataname
name:namenode
namesecondary:secondarynamenode
cd data/current
cat V* (查看集群id :clusterID 三个应该都是一样)
6、浏览器访问
ss -nal (查看端口)
node0001:50070