第一步,我们创建Linux用户:
用root用户登录
A.增加用户组命令:groupadd –g 500 hadoop //此处500是手动设置groupID
Linux保留前500 ID号 ;
B.增加用户命令:useradd –u 500 –g 500 –m hadoop // 同上-u 500也是用户ID,
-m hadoop 表示是在home下创建用户目录,hadoop是目录名,可自定义,为方便后面使用,我这里都命名为hadoop;
C.修改用户密码 passwd hadoop //接下来会提示你输入密码,按照提示操作;
修改完后,通过 vim /etc/passwd 命令查看
看到hadoop:x:500:500::/home/hadoop:/bin/bash 表示创建成功了;每一台电脑需要创建这个用户;
第二步,需要关闭防火墙
执行命令:service iptables status (查看防火墙状态)
如果防火墙开启就不是显示这个,那么我们执行下列操作
把此处的*去掉,然后用TAB键选择Ok,回车键退出来,保存
依次执行
chkconfig iptables off
chkconfig --list iptables
全部显示off表示关闭防火墙成功;
第三步修改ip
执行命令
vi /etc/sysconfig/network-scripts/ifcfg-eth0
修改完后重启网络配置,执行
service network restart
第四步,修改hostname
(注意hostname和用户不一样,是暴露给局域网中其他用户解析的)
在master节点上依次执行
hostname master
其他从节点改为 hostname slave1 (slave2、slave3……)
vi /etc/sysconfig/network
把localhost改为master;其他节点依次改为slave1,slave2…….不过必须和上面一致
输入命令 hostname
结果显示 master 表示成功
然后在
vi /etc/hosts
在里面添加你各个节点的ip和hostname;
第五步,非管理员用户配置ssh
(提示:Linux配置ssh是通过欺骗登录用户名的。所以上面创建用户的时候,我们都把3个节点的username 都设置成hadoop,,主要是用户名必须一致)
用hadoop用户登录(每一节点上执行)
执行命令
第一步:ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
意思是读取 id_dsa文件默认 全部是yes安装
和root用户一样,会发现多处2个文件,一个是公开密匙,一个是访问用户名字信息的
第二步:cat ~/.ssh/id_dsa.pub >> ~/.ssh/authoriezed_keys
是把暴露出来的公共密匙按顺序导入authoriezed_keys中保存
呵呵,别急这样还是不行的
ssh机制很严谨,对文件的权限要求非常严格
我们需要把.ssh文件夹的权限改为700 ,默认是777
authorized_keys的权限这里是对的,644
为避免出差错,这里执行
chmod 700 ~/.ssh
chmod 644 ~/.ssh/authorized_keys
喔了,试试吧。
在每一个节点执行完后,在主节点上执行下列命令(hadoop用户)
ssh slave1 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
ssh slave2 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
scp -r ~/.ssh/authorized_keys hadoop@slave1:~/.ssh/authorized_keys
scp -r ~/.ssh/authorized_keys hadoop@slave2:~/.ssh/authorized_keys
第一次会要求输入密码,完成后,
ssh slave1
ssh slave2
ssh local
不输入密码 就表示成功了;
还有什么疑问,给我留言.