大数据集群环境准备

在安装大数据集群环境之前,需要先做一些准备,比如关闭防火墙,修改主机名,设置IP地址映射,设置免密登录,设置时钟同步等操作。本文默认采用的linux系统为CentOS6.9,为以下为具体的操作:

关闭防火墙

1
2
3
4
5
6
7
8
## 查看防火墙状态
$ service iptables status
## 关闭防火墙
$ service iptables stop
## 设置开机不启动
$ chkconfig iptables off
## 查看状态
$ chkconfig --list iptables

关闭selinux

SELinux是安全增强型Linux(Security-Enhanced Linux)的简称,它是一个Linux内核模块,也是Linux的一个安全子系统,由美国国家安全局开发。SELinux比较负责,通常选择关闭它。输入以下命令,打开selinux的配置文件

1
$ vim /etc/selinux/config

将配置文件中的SELINUX属性禁用

1
2
3
4
5
6
7
8
9
10
11
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
#SELINUX=enforcing
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
# targeted - Targeted processes are protected,
# mls - Multi Level Security protection.
SELINUXTYPE=targeted

更改主机名

1
$ vim /etc/sysconfig/network

修改network文件中的HOSTNAME属性。

主机名与IP地址映射

1
$ vim /etc/hosts

格式: IP地址 主机名 别名

如:

1
192.168.146.100 node01.hadoop.com node01

重启虚拟机

1
reboot -h now

设置免密码登录

生成公钥和私钥

分别在每台机器上执行以下命令生成公钥和私钥:

1
ssh-keygen -t rsa

执行该命令后,按回车继续即可。

拷贝公钥到同一台机器

1
ssh-copy-id node02.hadoop.com

复制第一台机器的认证到其它机器

1
2
3
scp /root/.ssh/authorized_keys node02.hadoop.com:/root/.ssh
scp /root/.ssh/authorized_keys node03.hadoop.com:/root/.ssh
...

七、同步时钟

方式一:通过网络方式同步

通过该方式进行同步,需要保证虚拟机可以联网。

1
$ ntpdate us.pool.ntp.org

阿里云时钟同步

1
$ ntpdate ntp4.aliyun.com

三台机器定时任务

1
crontab -e
1
*/1 * * * * /usr/sbin/ntpdate us.pool.ntp.org

或与阿里云服务器进行同步

1
crontab -e
1
*/1 * * * * /usr/sbin/ntpdate ntp4.aliyun.com

方式二:通过某一台机器同步

以其中一台服务器的时间为准进行同步。

  1. 先确定是否安装了ntpd的服务

    1
    $ rpm -qa | grep ntpd

    如果没有安装,则进行在线安装:

    1
    2
    3
    4
    5
    $ yum -y install ntpd
    # 启动ntpd的服务
    $ service ntpd start
    # 设置ntpd的服务开机启动
    $ chkconfig ntpd on
  2. 编辑 /etc/ntp.conf

    1
    $ vim /etc/ntp.conf

    修改以下内容:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    # 添加如下内容:
    restrict 192.168.146.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 127.127.1.0 # local clock
    fudge 127.127.1.0 stratum 10

    修改完后的文件内容如下:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    # For more information about this file, see the man pages
    # ntp.conf(5), ntp_acc(5), ntp_auth(5), ntp_clock(5), ntp_misc(5), ntp_mon(5).

    driftfile /var/lib/ntp/drift

    # Permit time synchronization with our time source, but do not
    # permit the source to query or modify the service on this system.
    restrict default kod nomodify notrap nopeer noquery
    restrict -6 default kod nomodify notrap nopeer noquery

    # Permit all access over the loopback interface. This could
    # be tightened as well, but to do so would effect some of
    # the administrative functions.
    restrict 127.0.0.1
    restrict -6 ::1

    restrict 192.168.146.0 mask 255.255.255.0 nomodify notrap

    # Hosts on local network are less restricted.
    #restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap

    # Use public servers from the pool.ntp.org project.
    # Please consider joining the pool (http://www.pool.ntp.org/join.html).
    # 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 127.127.1.0 # local clock
    fudge 127.127.1.0 stratum 10

    配置BIOS与系统时间同步

    1
    $ vim /etc/sysconfig/ntpd
    1
    2
    #添加如下内容
    SYNC_HWLOCK=yes
  3. 其它机器与该机器同步

    1
    $ crontab -e
    1
    2
    # 添加如下内容
    */1 * * * * /usr/sbin/ntpdate 192.168.146.100

八、安装JDK

链接:https://pan.baidu.com/s/1jO7xbCjDhnnVHIwZfT78vA 提取码:gbgv

  1. 查看自带的openjdk

    1
    $ rpm -qa | grep java
  2. 卸载系统自带的openjdk

    1
    $ rpm -e java-1.6.0-openjdk-1.6.0.41-1.13.13.1.el6_8.x86_64 tzdata-java-2016j-1.el6.noarch java-1.7.0-openjdk-1.7.0.131-2.6.9.0.el6_8.x86_64 --nodeps
  3. 上传jdk安装包,并解压

    1
    $ tar -zxvf jdk-8u141-linux-x64.tar.gz -C ../xxx/
  4. 配置环境变量

    1
    $ /etc/profile
    1
    2
    export JAVA_HOME=/usr/local/jdk1.8.0_141
    export PATH=:$JAVA_HOME/bin:$PATH

如果使用的是Xshell,关于使用拖拽上传文件插件的安装:

1
$ yum -y install lrzsz

上传

1
$ rz

下载

1
2
3
4
5
6
#下载一个文件
$ sz filename
# 下载多个文件
$ sz filename1 filename2
# 下载dir目录下所有文件,不包含dir下的文件夹
$ sz dir/*

参考资料

  1. 一文彻底明白linux中的SELinux到底是什么
  2. 网络视频教程
-------------本文结束感谢您的阅读-------------

本文标题:大数据集群环境准备

文章作者:Mr.wj

发布时间:2019年11月28日 - 20:32

最后更新:2019年11月28日 - 20:59

原始链接:https://www.wjqixige.cn/2019/11/28/大数据集群环境准备/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

Mr.wj wechat
欢迎您扫一扫上面的微信公众号,订阅我的博客!