Ambari 没有简单的 .tar.gz 结尾的包(反正我找到)。apache 官网提供的安装方法,是要下载源码,自己编译成安装包安装。说明文档还不够细。编译的时候是用 maven,照理来说不应该会失败的。但是我总是失败,报找不到类的错误。maven 的仓库中明明是有的。遇到各种奇葩问题。实际生产环境,也不会是编译成安装包再安装的。还好, hortonworks 提供了 ambari 的安装方法,而且还很详细。以下是在 centos7 上的安装步骤。
在安装之前,按照官方文档,需要做如下配置(我的centos 也是新装的,需要先做一些配置和装一些工具):
1. 修改电脑的主机名
hostnamectl set-hostname centos1
2. 编辑文件 /etc/sysconfig/network,添加下面的两行
NETWORKING=yes
HOSTNAME=centos1
3. 编辑文件 /etc/sysconfig/network-scripts/ifcfg-ens33 (ens33 是网卡的名字,实际可能有所不同),把 ONBOOT 的值改成 yes。重启系统。
4. 安装软件
yum -y install gcc gcc-c++ kernel-devel
yum -y install rpm-build
yum -y install net-tools
5. 设置最大打开文件数(至少 10000)。如果第一条命令显示的结果是大于10000的,则不用执行第二条。
ulimit -Sn
ulimit -n 10000
6. 设置时间同步
yum install -y ntp
systemctl enable ntpd
systemctl start ntpd
timedatectl set-timezone Asia/Shanghai
7. 暂停防火墙
systemctl disable firewalld
service firewalld stop
8. 禁用 SELinux。编辑 /etc/selinux/config ,设置下面的值
SELINUX=disabled
9. 禁用 PackageKit。 编辑 /etc/yum/pluginconf.d/refresh-packagekit.conf,设置下面的值:
enabled=0
10. 各主机之间设置免密登陆。
ssh-keygen -t rsa
ssh-copy-id centos2
11. 确保 .ssh 和 authorized_keys 具有正确的权限控制
chmod 700 ~/.ssh chmod 600 ~/.ssh/authorized_keys
12. 使用 SSH 登陆一次其它主机。因为第一次需要输入密码。
ssh root@<remote.target.host>
13. 安装 JDK,并设置环境变量
export JAVA_HOME=/opt/programs/jdk1.8.0_171 export PATH=.:$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
另外,如果需要固定 IP的话,
1.
cd /etc/sysconfig/network-scripts/
2. 修改相应的文件
TYPE=Ethernet BOOTPROTO=static DEFROUTE=yes PEERDNS=yes PEERROUTES=yes IPADDR=192.168.137.81 BROADCAST=192.168.137.255 NETMASK=255.255.255.0 IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_PEERDNS=yes IPV6_PEERROUTES=yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=stable-privacy NAME=ens33 UUID=b4f82e2e-76c3-4329-be45-5dd6137e6084 DEVICE=ens33 ONBOOT=yes DNS1=192.168.137.1 DNS2=8.8.8.8