HDFS节点搭建(非HA的)、免密码登录

来源:互联网 发布:网络直播 法国VS德国 编辑:程序博客网 时间:2024/06/15 01:42

Linux命令:date 查看系统时间,要求集群中各台时间相差在30S之内。

start-dfs.sh启动所有节点,需要远程登录。


一、设置免密码登录

生成秘钥:ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

在~/.ssh/路径下生成 id_dsa和id_dsa.pub文件

将公钥追加到本地的认证文件authorized_keys中去:

cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

即可本机的免密码登录了。

若要本机免密码登录到B机器,则需要将本机的公钥追加到B机器上的认证文件authorized_keys中去。

scp ./id_dsa.put root@node4:/opt/

cat /opt/id_dsa.put >> ~/.ssh/authorized_keys

那为什么要在在B机器上生成公钥呢?

其实若只是想让本机登录到B机器上,B机器上是不用生成公钥的。在B机器上生成公钥只是不想在本机登录B机器时出现警告字样而已。

若出现Warning:your password will expire in 5 days。这个5days是在 /etc/shadow文件中设置的。则使用chage -M 999 root就不会出现这个警告了。

若遇见/root/.ssh.authorized_keys:No such file or directory时,不能自己创建这个文件。

通过ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa命令生成这个目录。


二、HDFS集群搭建(非HA的)

1.修改 etc/hadoop/hadoop-env.sh配置文件

export JAVA_HOME=自己Java安装目录即可


2.修改core-site.sh配置文件

<property>

  <name>fs.defaultFS</name>

  <value>hdfs://node1:9000</value>

</property>

配置NameNode数据上传和下载的端口(RPC协议)。

<property>

  <name>hadoop.tmp.dir</name>

  <value>/opt/hadoop-2.5</value>

</property>

如果不配置这个则临时文件放在Linux的/tmp/的临时文件夹下,一旦重启,则没有了。


3.修改hdfs-site.sh配置文件(配置SNN的主机)

<configuration>

<property>

  <name>dfs.namesecondary.http-address</name>

  <value>node3:50090</value>

</property>

<property>

  <name>dfs.namesecondary.https-address</name>

  <value>node3:50091</value>

</property>

</configuration>


4.修改slaves文件

node3

node4

node5


5.修改masters(配置SNN的主机名)

node3


其他的几台机器同样配置:

ssh -r hadoop-2.5.1/ root@node3:/home/

ssh -r hadoop-2.5.1/ root@node4:/home/

ssh -r hadoop-2.5.1/ root@node5:/home/


三、Hadoop环境变量配置

vim ~/.bash_profile

export HADOOP_HOME=/home/hadoop-2.5.1

export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin


source ~/.bash_profile


四、启动HDFS

(在namenode机器上)格式化:hdfs namenode -format

这个命令后,它创建了/opt/hadoop-2.5/目录

并初始化了fsimage文件


start-dfs.sh


五、UI监控页面

namenode的

node1:50070


关闭防火墙

service iptables stop

原创粉丝点击