1 设置ssh免密码登陆
由于每次启动服务都要输入密码,为了避免以后麻烦,这里首先设置ssh免密码登陆
首先关闭防火墙
setup调出防火墙配置工具,enter进入filewall configuration 按空格关闭。出来service iptables status,如果显示service is not runing 表明配置正确。
(service iptables start/service iptables stop)
设置DNS解析
gedit /etc/hosts 在文末添加“ip 域名”例如:192.168.139.122 hadoop0
接下来真正设置ssh免密码登陆
vi /etc/selinux/config 设置selinux=disabled
然后ssh-keygen -t dsa 生成密钥
一直回车,然后:
cd ~/.ssh
cat id_dsa.pub >>authorized_keys
设置完成。
测试:ssh localhost 不让输密码表明设置成功。
2 安装Hadoop
- 本地模式
- 伪分布模式
- 集群模式
这里先实现伪分布模式
步骤:
- 关闭防火墙
- 修改ip
- 修改hostname
- 设置ssh免密码登陆
- 安装jdk
- 安装hadoop
2.1解压安装包到/usr/local/hadoop
2.2配置环境变量
vi /etc/profile
alias cdha='cd /usr/local/hadoop' #设置别名
export HADOOP_HOME=/usr/local/hadoop
export PATH =.:$HADOOP_HOME/bin
2.3修改hadoop配置文件
/usr/local/hadoop/etc/hadoop
ls
vi hadoop-env.sh 修改JAVA_HOME为实际的JDK路径
vi core-site.xml
<configuration>
#内部加入
<property>
<name>fs.default.name</name>
<value>hdfs://futurehauHadoop:9000</value> #换为自己的hostname
</property>
<property>
<name>hadoop.tmp.dir</name> #hadoop临时目录
<value>/usr/local/hadoop/tmp</value>
</property>
</configuration>
2.4HDFS设置存储份数和权限检查(生产环境下应该为默认的三份,要求权限检查)
vi hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.premissions</name>
<value>false</value>
</property>
</configuration>
2.5 Map-Reduce 配置
vi mapred-site.xml
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>futurehauHadoop:9001</value> #自己的hostname,端口号是9001
</property>
</configuration>
3 启动Hadoop
hadoop namenode -format #目录服务器格式化
cd sbin
./start-all.sh
jps # show java progressor
#(jps namenode jobtracker tasktracker datanode secondarynamenode)
#(hdfs :namenode datanode secondarynamenode)
#(map_red:jobtracker tasktracker)
hostname:50070 #browser
hostname:50030 #browser