1.进程规划
原则:
①核心进程尽量分散
②同质进程尽量分散
2.集群间复制
①scp
scp -r 源文件的用户名@主机名:源文件路径 目标文件的用户名@主机名:目标文件路径
特点: 全量复制
②rsync
rsync -rvlt 源文件路径 目标文件的用户名@主机名:目标文件路径
源文件路径是个目录,源文件路径/,只会同步源文件目录中的内容!
源文件路径,不仅会同步源文件目录中的内容,包括目录本身也会进行同步!
3.配置ssh免密登录
如果A机器的a用户,希望使用b用户的身份,免密登录到B机器!
操作步骤:①a用户在A机器生成一对密钥(私钥+公钥)
ssh-keygen -t rsa
②将公钥的内容,配置到b用户家目录/.ssh/authoxxx_keys
ssh-copy-id b@B
③a用户在A机器,就可以使用 ssh b@B
如果在配置时,省略了用户名,那么默认使用当前操作的用户名作为目标机器的用户名!
[a@A] ssh B 等价于 [a@A] ssh a@B
4.两种ssh的使用方式
①登录到目标主机,再执行命令
[a@A] ssh B
[a@B] jps
属于Login-shell,默认读取/etc/profile文件!
②在A机器,执行命令
[a@A] ssh B jps
属于non-Login-shell,不会读取/etc/profile文件!
只会读取 ~/.bashrc
解决: 在a@B的~/.bashrc中配置 source /etc/profile
注意:当前主机也要配置自己到自己的SSH免密登录!
配置SSH的作用 :
①执行scp,rsync命令时,不需要输入密码,方便
②在执行start-all.sh群起脚本时,需要输入密码
5. 执行群起
①start-dfs.sh 可以在任意一台机器执行
②start-yarn.sh 如果不在RM所配置的机器执行,那么不会启动RM
建议: 在RM所在的机器执行群起脚本!
只需要配置RM所在机器到集群其他机器的SSH免密登录!
③在执行群起时,默认读取当前机器 $HADOOP_HOME/etc/hadoop/slaves文件中,
当前集群配置的主机名
6.集群的时间同步
一个集群中,每台机器的时间必须保证是同步的!
主要借助linux的ntp服务执行和远程时间服务器的时间同步!
保证当前机器的ntp服务是开机自启动!
chkconfig --list ntpd
使用 ntpdate -u 时间服务器的地址