害虫
hi,bug....

环境准备

当需要将一台主机加入到 Ambari 管理的Hadoop集群时,需要对主机进行以下相关设置。

设置hostname并分发hosts文件

每台机器都需要设置唯一的hostname。集群内所有机器的IP和hostname对应关系应全部写入每台机器的hosts文件中。

设置系统语言

Ambari管理下的各节点主机请设置为英文,否则会无法加入集群。

centos7

localectl set-locale LANG=en_US.UTF-8  # 重新登录后生效

centos6,修改/etc/sysconfig/i18n内容

LANG="en_US.UTF-8"

立刻生效:

source /etc/sysconfig/i18n

禁用selinux

  • 查看状态:
sestatus
  • 临时关闭:
setenforce 0    # 设置SELinux 成为permissive模式
                # setenforce 1 设置SELinux 成为enforcing模式
  • 永久禁用
修改 /etc/selinux/config 文件
将 SELINUX=enforcing(或SELINUX=permissive) 改为 SELINUX=disabled
重启机器即可

关闭防火墙

centos6

service iptable status  # 查看状态
servcie iptables stop   # 停止
chkconfig iptables off  # 禁止开机启动

centos7

systemctl status firewalld  # 查看状态
systemctl stop firewalld    # 停止
systemctl disable firewalld # 禁止开机启动

开启ntp

centos6

yum install ntp     # 安装
service ntpd start  # 启动
chkconfig ntpd on   # 设置为开机启动

centos7

yum install ntp         # 安装
systemctl start ntpd    # 启动
systemctl enable ntpd   # 设置为开机启动

安装jdk

centos6/7

yum install java-1.8.0-openjdk  # JAVA_HOME 为 /usr/lib/jvm/jre

安装Ambari Server过程中如果选择自定义JDK的话,需要填写JAVA_HOME,请注意该JAVA_HOME的值在Ambari Agent上面也要可用。请安装JDK1.8,避免不必要的麻烦。因为部分组件可能使用JDK1.8编译,用JDK1.7无法运行。

关闭Transparent Huge Pages

  • centos6

修改/etc/grub.conf,在kernel参数后添加 transparent_hugepage=never,如下:

title CentOS (2.6.32-431.el6.x86_64)
        root (hd0,0)
        kernel /vmlinuz-2.6.32-431.el6.x86_64 ro root=/dev/mapper/VolGroup-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD
rd_LVM_LV=VolGroup/lv_swap SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=VolGroup/lv_root  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet transparent_hugepage=never
        initrd /initramfs-2.6.32-431.el6.x86_64.img

保存后重启即可。

  • centos7

首先检查THP的启用状态:

cat /sys/kernel/mm/transparent_hugepage/defrag /sys/kernel/mm/transparent_hugepage/enabled
[always] madvise never
[always] madvise never

上面的输出就说明都是启用的。

编辑/etc/rc.d/rc.local,增加下列内容:

if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
  echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
  echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi

保存退出,然后赋予rc.local文件执行权限:

chmod +x /etc/rc.d/rc.local

重启系统,再检查THP应该就是被禁用了

cat /sys/kernel/mm/transparent_hugepage/enabled /sys/kernel/mm/transparent_hugepage/defrag 
always madvise [never]
always madvise [never]

自定义资源库

安装Ambari Server时如果使用了自定义资源库,即使用/etc/yum.repos.d/ambari.repo文件配置了自定义资源库地址,那么安装Ambari Agent时也会使用该资源库地址。

配置SSH免密码登录

  1. 生成密钥对
ssh-keygen  # 执行成功后,在 ~/.ssh/ 目录生成密钥对,id_rsa 是私钥,id_rsa.pub 是公钥
  1. 配置免密码登录

设登录服务器地址为hostname,登录用户名为username

ssh-copy-id -i ~/.ssh/id_rsa.pub username@hostname

以后就可以使用私钥(~/.ssh/id_rsa)进行免密码登录了

离线安装可能需要的依赖包

在离线环境采用本地Ambari+HDP资源库安装时,还会遇到部分依赖包需要单独安装的情况,这些包应该都在操作系统默认的资源库中,可以使用操作系统安装盘挂载形成资源库的方式安装,或手工下载rpm包安装。目前已知此类包有:

包名称 资源库名称 备注
postgresql,postgresql-server,postgresql-libs CentOS Update
libtirpc-devel CentOS Base
python-argparse CentOS7中该模块包含在python中,无需单独安装
posted on 2019-01-16 10:21  Hi,虫  阅读(316)  评论(0编辑  收藏  举报