2018/11/25 一次性搭建hdfs分布式集群

整体思路:

1Vmware11 安装Centos 6Minimal 教程

2使用minimal镜像 安装虚拟机

A这一步就开始克隆,克隆的机器只需要改下主机名与windows——hosts里面配置就能ping通

B:BOOTPROTO=static 改成静态的,否则当你重新启动那么虚拟机ip就会变,就连不上SecureCRT

 上面如果出现问题,可以在这里改:

VMware Workstation ——system——network connection

C:网关与ip的理解

在Vmware里面看不到网关与ip,只能在编辑——虚拟网络器编辑里面看子网ip与子网掩码

                                                  只能在虚拟机设置——网络适配器——高级——看MAC地址

因此需要在windows——cmd——ipconfig看

D:克隆时,当eth0与eth1冲突,目前来看不影响ping,不知道以后会不会影响其他

解决原理:a将当下生成的mac地址删除,并删除配置文件

                or b将当下mac地址改成新生成的,并修改配置文件,删除eth0那一段,将eth1那段指向eth0 

E:有时候,你克隆的时候网卡直接就直接是eth1,并没有eth0,这个时候需要按照eth1来配

当然下次可以尝试下面这种方法

就是上述的b+

按照以上操作,先手动生成mac,然后修改/etc/udev/rules.d/70-persistent-net.rules文件,把eth1改为eth0,修改对于mac,最后修改/etc/sysconfig/network-scripts/ifcfg-eth0文件的mac,重启网络后失败,重启服务器后,70-persistent-net.rules又会重新生成一个eth1。

解决上述问题就是,用重新生成的eth1中的mac,来替换/etc/sysconfig/network-scripts/ifcfg-eth0文件的mac,然后重启服务,问题就解决了。

F:需关闭防火墙:

关闭防火墙:service iptables stop  

关闭防火墙自启: chkconfig iptables off

 

3连接SecureCRT,配置免密登录

按照之前方法复杂度:n(n-1)

下面方法复杂度:2n

ssh免密登录

1.安装ssh.  sudo apt-get install ssh. 安装完成后会在~目录(当前用户主目录,即这里的/home/xuhui)下产生一个隐藏文件夹.ssh(ls -a 可以查看隐藏文件)。如果没有这个文件,自己新建即可(mkdir .ssh).

2.进入.ssh目录下面,在每台机器上执行:ssh-keygen -t  rsa  之后一路回车,产生密钥;

3。完成第二步后会产生两个文件:

id-rsa     #私钥
id-rsa.pub   #公钥
4.在第一台机器的目录.ssh下执行命令,cat  id-rsa.pub >> authorized_keys;此后.ssh下面会出现authorized_keys文件。

5.然后将第一台机器的.ssh目录下面的authorized_keys文件拷贝到第二台计算机的.ssh目录下,如:scp authorized_keys xuhui@cloud002:~/.ssh/

6.再转到第二台机器的.ssh目录下,会发现刚刚传输过来的文件-authorized_keys,然后执行命令,将第二台计算机的公钥也加进来,如:cat id-rsa.pub >> authorized_keys.

7.将第二台计算机新生成的authorized_keys传输第三台计算机,将第三台计算机的公钥-id-rsa.pub添加到从第二台计算机传过来的authorized_keys里面。

8.依次类推,直至最后一台计算机。

9.在最后一台计算机执行完添加后,生成的authorized_keys文件就包含所有计算机的公钥,如果以后还有机器加进来,可以直接添加到文件-authorized_keys。最后,将最后生成的authorized_keys复制到每一台计算机的.ssh目录下,覆盖掉之前的authorized_keys。

10.完沉第九步后,就可以在任意一台计算机上,免密码ssh登录到其他计算了。(转载https://www.cnblogs.com/hrx-star/p/5795765.html

按照上述方法最后出来,slave不能连接到master,可是那个authorized_keys文件含有所有文件的公钥

4linux下安装jdk

A软链接的目的:类似于windows中的快捷方式

B具体配置主要是配置版本以及环境变量

Echo是为用Java开发Web应用程序提供的一个面向对象,事件驱动的框架

Echo 命令:打开回显或关闭请求回显功能,或显示消息。如果没有任何参数,echo 命令将显示当前回显设置。

C:scp报错 -bash:scp:command not found

         查看openssh相关包: rpm -qa openssh*

   解决方式:yum 安装openssh客户端   yum install opensssh-clients

          

5搭建hdfs分布式集群

我现在的问题是子节点datanode无法显示出来

估计原因:nameNode进行format多次,导致nameNode和dataNode的版本不一致;

尝试方法:1删除tmp文件,重新格式化处理

                  2修改每个Slave的clusterID使其与Master的clusterID一致。

                  都不行

以后学会多看官方文档:                     http://hadoop.apache.org 

 

1 上面5步本来是从第2步开始就应该有多台机器,可是我现在打算从第一步直接操作到hadoop文件配置中的:5) 启动HDFS前,那么相应地也只需要更改一下主机名以及windows设置就行

2多去尝试网上hadoop安装方法

3先看文档,一定先搞懂原理,再进行操作 

4具体如何去看对应的日志,还需要解决

猜你喜欢

转载自blog.csdn.net/qq_42198024/article/details/84501788