分布式安装:
(hadoop,hadoop2,hadoop2......等都是机器名)(一个机器就代表一个节点)
1.清楚分布结构:
主节点:NameNode,JobTracker,secondaryNameNode(hadoop0)
从节点:DataNode,Tracker(hadoop1,hadoop2)
2.关闭防火墙:service iptables stop
k验证:service iptables status
3.设置ip地址
点击右上角的电脑图标,edit..,修改ip地址
验证:ifconfig(不是ipconfig)
4.设置主机名:
hostname zyy(当前会话管用)
vi /etc/sysconfig/network(修改配置文件)
5.ip与主机名绑定
vi /etc/hosts
验证:ping zyy
6.ssh免密码登录
ssh-keygen -t -rsa(什么意思我也不明白)(作用是生产密钥)
cp ~/.ssh/id-rsa.pub ~/.ssh/authorized_keys (将密钥放置密钥文件)
验证:ssh 主机名
7.安装jdk
1.cd /usr/local(进入到jdk的上级目录)
2.chmod u+x jdk-6u24-linux-i586 (赋予当前使用者,执行的权限)
3../jdk-6u24-linux-i586 执行
4.修改环境变量
5)vi /etc/profile 增加内容如下:
export JAVA_HOME=/usr/local/jdk
export PATH=.:$JAVA_HOME/bin:$PATH
6source /etc/profile(让配置信息生效)
8.安装hadoop
(1)tar -zxvf hadoop-1.1.2.tar.gz 解压
(2)mv hadoop-1.1.2 hadoop 重命名为:hadoop
(3)vi /etc/profile 增加内容如下:
export JAVA_HOME=/usr/local/jdk
export HADOOP_HOME=/usr/local/hadoop
export PATH=.:$HADOOP_HOME/bin:$JAVA_HOME/bin:$PATH
(4)source /etc/profile
(5)修改conf目录下的配置文件hadoop-env.sh、core-site.xml、hdfs-site.xml、mapred-site.xml
(6)hadoop namenode -format 格式化namdenode
(7)start-all.sh启动hadoop服务
9两两节点之间的SSH免密码登陆
ssh-copy-id -i hadoop1
scp /root/.ssh/authorized_keys hadoop1:/root/.ssh/
10 把hadoop0的hadoop目录下的logs和tmp删除
11 把hadoop0中的jdk、hadoop文件夹复制到hadoop1和hadoop2节点
scp -r /usr/local/jdk hadoop1:/usr/local/
12 把hadoop0的/etc/profile复制到hadoop1和hadoop2节点,在目标节点中执行source /etc/profile
13 编辑hadoop0的配置文件conf/slaves,改为从节点的hostname,分别是hadoop1和hadoop2
14 格式化,在hadoop0节点执行hadoop namenode -format
15 启动,在hadoop0节点执行start-all.sh
16如要将secondaryNameNode放在单独的机器上:conf/masters ,添加secondaryNameNode的主机名
17如要修改:jobTracker,需要修改mapred_site.xml里面的URL配置,并且要单独起机器,建议在刚开始搭建环境时想好!