• 集群基础环境部署参考


    X86硬件配置

    硬件名称

    规格参数

    备注

    设备型号

    Dell PowerEdge R730

    3台

    CPU

    2 * 8核Intel Xeon E5-2630v3@2.40GHz

     

    内存

    8 * 16GB DDR4@2133MHz

     

    磁盘1

    6 * 600GB HDD

    操作系统安装到其中1块硬盘,其余硬盘做数据存储

    网卡1

    1 * 4口千兆以太网卡

    管理网络使用1个

    网卡2

    1 * 2口万兆以太网卡

    数据内部通信网络

    网络环境

    服务器架构

    主机名

    角色

    BMC IP

    OS IP

    数据通信IP

    备注

    X86

    hadoop1

    NN、SNN、DN、RM、NM、JH、ZK、…

    192.168.13.25

    192.168.13.45

    10.5.1.1

    CM Server &Agent

     

    hadoop2

    DN、NM、ZK

    192.168.13.26

    192.168.13.46

    10.5.1.2

    CM Agent

     

    hadoop3

    DN、NM、ZK

    192.168.13.27

    192.168.13.47

    10.5.1.3

    CM Agent

     

    主机网络配置

    通过操作系统自带的nmtui网络配置工具配置主机IP、主机名。此处以hadoop1为例,其他节点参照网络规划进行配置。

    # nmtui

    进入配置界面,选择编辑连接

     

    在以太网列表中选择操作系统管理网络接口进行配置:

    选择数据通信网络接口配置Hadoop内部通信网络:

     

    选择配置系统主机名,修改主机名:

    关闭防火墙与SELinux

    开启防火墙和SELinux功能影响后续服务的部署,所有节点关闭这些服务。

    1、设置开机时禁用防火墙

    # systemctl disable firewalld

    2、禁用SELinux

    # sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config

    3、执行完以上操作后重启系统。

     

    配置hosts

    配置主机别名与数据内部通信IP进行映射,以下操作在hadoop1上进行:

    # vi /etc/hosts

     

    在hadoop1上将/etc/hosts拷贝到其他节点:

    # scp /etc/hosts root@hadoop2:/etc/hosts

    # scp /etc/hosts root@hadoop3:/etc/hosts

     

    配置SSH免密登录

    集群间通信需要所有节点配置SSH免密登录,这里需要创建密钥并拷贝公钥到其他节点。

    在所有节点上进行操作:

    1、创建密钥

    # ssh-keygen

    (根据提示一路回车)

    2、拷贝公钥到其他节点

    # ssh-copy-id hadoop1

    # ssh-copy-id hadoop2

    # ssh-copy-id hadoop3

     

    安装并行分布式shell工具

    pdsh是一个并行分布式shell,能够对多节点并行命令操作,它由epel软件仓库提供。这里在hadoop1上安装即可,需要访问互联网:

    # yum -y install epel-release

    # yum -y install pdsh-rcmd-ssh

    查看多个节点的系统日期检测功能是否正常,-w为指定操作的主机IP或主机别名,支持缩写,如hadoop[1-3]表示“hadoop1,hadoop2,hadoop3”

    # pdsh -w hadoop[1-3] date

    配置yum本地源

    一些基础的软件包可以使用操作系统镜像iso文件中提供的而不需要访问互联网。

    在hadoop1上执行以下操作:

    1、在所有节点上创建存放iso镜像文件的目录

    # pdsh -w hadoop[1-3] "mkdir /root/tools"

    2、将iso镜像文件从hadoop1传到其他节点(事先已将该镜像文件上传到hadoop1)

    # pdsh -w hadoop[2-3] "scp root@hadoop1:~/tools/CentOS-7-x86_64-DVD-1611.iso /root/tools/"

    3、挂载iso镜像并将目录下所有文件拷贝到yum本地源目录

    # pdsh -w hadoop[1-3] "mkdir /media/CentOS"

    # pdsh -w hadoop[1-3] "mount -o loop /root/tools/CentOS-7-x86_64-DVD-1611.iso /mnt/"

    # pdsh -w hadoop[1-3] "cp -av /mnt/* /media/CentOS/"

    4、创建本地源文件

    # vi /etc/yum.repos.d/CentOS-Media.repo

     

    # pdsh -w hadoop[2-3] "scp root@hadoop1:/etc/yum.repos.d/CentOS-Media.repo /etc/yum.repos.d/CentOS-Media.repo"

    5、建立yum本地源cache

    # pdsh -w hadoop[1-3] "yum --disablerepo=* --enablerepo=c7-media clean all"

    # pdsh -w hadoop[1-3] "yum --disablerepo=* --enablerepo=c7-media makecache"

     

    配置NTP时间同步

    集群内节点间通信需要确保所有节点的系统时间不会相差太大,否则将影响服务正常运行。

    这里在hadoop1上执行操作:

    1、安装ntp软件包

    # pdsh -w hadoop[1-3] "yum --disablerepo=* --enablerepo=c7-media -y install ntp"

    2、配置NTP Server,选择hadoop1作为集群中NTP本地时间同步服务端:

    # cp /etc/ntp.conf /etc/ntp.conf_orig

    # vi /etc/ntp.conf

    restrict 192.168.13.0 mask 255.255.255.0 nomodify notrap

    #server 0.centos.pool.ntp.org iburst

    #server 1.centos.pool.ntp.org iburst

    #server 2.centos.pool.ntp.org iburst

    #server 3.centos.pool.ntp.org iburst

    server cn.ntp.org.cn iburst

    server 127.127.1.0

    fudge  127.127.1.0 stratum 2

     

    3、配置NTP Client,除hadoop1以外其他节点均作为客户端向hadoop1请求时间同步

    # cp /etc/ntp.conf_orig /etc/ntp.conf_client

    # vi /etc/ntp.conf_client

    #server 0.centos.pool.ntp.org iburst

    #server 1.centos.pool.ntp.org iburst

    #server 2.centos.pool.ntp.org iburst

    #server 3.centos.pool.ntp.org iburst

    server 192.168.13.45 iburst

    将Client端配置文件上传到其他节点

    # pdsh -w hadoop[2-3] "scp root@hadoop1:/etc/ntp.conf_client /etc/ntp.conf"

    4、重启NTP服务,等待一段时间后查看是否同步成功

    # pdsh -w hadoop[1-3] "systemctl restart ntpd"

    # pdsh -w hadoop[1-3] "ntpstat | grep sync"

     

    如果长时间未同步,可尝试重启所有client节点NTP服务:

    # pdsh -w hadoop[2-3] 'systemctl restart ntpd'

     

    # pdsh -w hadoop[1-3] date

     

    5、将系统时间写入硬件时钟

    # pdsh -w hadoop[1-3] "hwclock -w"

    6、设置NTP服务开机自启动

    # pdsh -w hadoop[1-3] "systemctl enable ntpd"

  • 相关阅读:
    Visual Studio 2012 中的ASP.NET Web API
    CentOS配置RPMForge软件源
    CentOS设置Mono环境变量
    使用 MEF 轻松实现云部署
    WiX 3.6——强大的.NET部署工具
    Redis应用场景
    How does it work in Mono's C# compiler?
    .NET程序员应该关注开源社区
    ASP.NET Web API和依赖注入
    [招聘帖]IT应用开发工程师
  • 原文地址:https://www.cnblogs.com/lilin-77/p/8583352.html
Copyright © 2020-2023  润新知