1.安装SSH server、免密码ssh设置
sudo apt-get install openssh-server
现在确认能否不输入口令就用ssh登录localhost:
ssh localhost
如果不输入口令就无法用ssh登陆localhost,执行下面的命令:
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys chmod 0600 ~/.ssh/authorized_keys
2.Hadoop的安装
http://hadoop.apache.org/releases.html 选择 binary
tar zxvf hadoop-2.8.1.tar.gz
sudo mv hadoop-2.8.1 /opt/hadoop
cd /etc/profile.d
sudo vim hdfs-env.sh
export HADOOP_HOME=/opt/hadoop
export HADOOP_CONF_DIR=/etc/hadoop/
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_YARN_HOME=$HADOOP_HOME
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
echo $HADOOP_HOME
echo $PATH
source hdfs-env.sh
echo $HADOOP_HOME
echo $PATH
hadoop version
3.伪分布式配置
cd /opt/hadoop/etc
sudo mv hadoop /etc
sudo mkdir -p /data/hadoop/tmp
sudo mkdir -p /data/hadoop/dfs/name
sudo mkdir -p /data/hadoop/dfs/data
sudo chown -R donny:donny /data
hdfs配置:
vim etc/hadoop/hdoop-env.sh
export JAVA_HOME=/opt/jdk
core-site.xml文件中包含如读/写缓冲器用于Hadoop的实例的端口号的信息,分配给文件系统存储,用于存储所述数据存储器的限制和大小。
vim etc/hadoop/core-site.xml
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/data/hadoop/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>io.file.buffer.size</name>
<value>131072</value>
</property>
</configuration>
hdfs-site.xml 文件中包含如复制数据的值,NameNode路径的信息,,本地文件系统的数据节点的路径。这意味着是存储Hadoop基础工具的地方。
vim etc/hadoop/hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/data/hadoop/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/data/hadoop/dfs/data</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
</configuration>
mapred-site.xml用于指定正在使用MapReduce框架。缺省情况下,包含Hadoop的模板yarn-site.xml。首先,它需要从mapred-site.xml复制。获得mapred-site.xml模板文件使用以下命令。
mapreduce配置:
cp etc/hadoop/mapred-site.xml.template etc/hadoop/mapred-site.xml
vim etc/hadoop/mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>localhost:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>localhost:19888</value>
</property>
</configuration>
yarn-site.xml配置成yarn在Hadoop中
vim etc/hadoop/yarn-site.xml
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>localhost</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
格式化 hdfs namenode -format
-
第一种方式
启动:分别启动HDFS和MapReduce
命令如下:start-dfs.sh start-yarn.sh
命令如下:stop-dfs.sh stop-yarn.sh
-
第二种方式
全部启动或者全部停止
启动:
命令:start-all.sh
启动顺序:NameNode,DateNode,SecondaryNameNode,JobTracker,TaskTracker
停止:
命令:stop-all.sh
关闭顺序性:JobTracker,TaskTracker,NameNode,DateNode,SecondaryNameNode
-
第三种方式
hadoop-daemon.sh start namenode
如果namenode还做datanode则执行hadoop-daemon.sh start datanode
yarn-daemon.sh start nodemanager
mr-jobhistory-daemon.sh start historyserver
yarn-daemon.sh start resourcemanager
访问http://localhost:50070 查看节点信息。
不启用 YARN 时,是 “mapred.LocalJobRunner” 在跑任务,启用 YARN 之后,是 “mapred.YARNRunner” 在跑任务。启动 YARN 有个好处是可以通过 Web 界面查看任务的运行情况:http://localhost:8088/cluster 。