一、环境准备与规划
在部署集群管理工具前,需完成服务器环境的基础配置。建议采用3台物理服务器或虚拟机组成最小集群,每台服务器需满足以下硬件要求:
- CPU:4核及以上
- 内存:16GB及以上
- 磁盘:至少200GB可用空间
- 网络:千兆以太网适配器
操作系统建议选择CentOS 7.x或RHEL 7.x系列,这些版本对大数据生态支持完善且稳定性经过验证。部署前需确保所有节点时间同步,可通过NTP服务实现:
yum install -y ntpsystemctl enable ntpdsystemctl start ntpd
二、服务器基础配置
1. 主机名设置
统一的主机名命名规范有助于集群管理,推荐采用server-<功能>-<序号>格式。修改主机名可通过以下两种方式:
临时修改(重启失效)
hostnamectl set-hostname server-master1
永久修改
编辑/etc/hostname文件,写入目标主机名后重启系统:
echo "server-master1" > /etc/hostnamereboot
2. 网络配置
采用静态IP地址可确保集群稳定性,需修改网卡配置文件(路径可能因发行版不同有所差异):
vi /etc/sysconfig/network-scripts/ifcfg-ens33
关键参数说明:
BOOTPROTO=none # 禁用DHCPONBOOT=yes # 开机自启IPADDR=192.168.0.101 # 静态IP地址NETMASK=255.255.255.0 # 子网掩码GATEWAY=192.168.0.1 # 默认网关DNS1=8.8.8.8 # 主DNSDNS2=8.8.4.4 # 备DNS
配置完成后重启网络服务:
systemctl restart network
3. 主机名解析
编辑/etc/hosts文件实现集群内部快速解析,示例配置:
127.0.0.1 localhost localhost.localdomain::1 localhost6 localhost6.localdomain6# 集群节点映射192.168.0.101 server-master1192.168.0.102 server-worker1192.168.0.103 server-worker2
验证解析是否生效:
ping server-worker1
三、安全配置优化
1. 防火墙设置
建议采用firewalld进行精细管控,开放必要端口:
systemctl start firewalldsystemctl enable firewalld# 开放HDFS默认端口firewall-cmd --zone=public --add-port=8020/tcp --permanentfirewall-cmd --zone=public --add-port=50070/tcp --permanentfirewall-cmd --reload
2. SELinux策略
生产环境建议保持enabled状态,开发测试环境可临时禁用:
setenforce 0 # 临时关闭vi /etc/selinux/config # 永久修改需重启
3. 用户权限管理
创建专用运维用户并配置sudo权限:
useradd -m hadooppasswd hadoopvisudo /etc/sudoers.d/hadoop
添加以下内容:
hadoop ALL=(ALL) NOPASSWD:ALL
四、依赖环境安装
1. Java环境配置
推荐使用OpenJDK 1.8版本,安装命令:
yum install -y java-1.8.0-openjdk-devel
配置环境变量:
echo 'export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk' >> /etc/profileecho 'export PATH=$JAVA_HOME/bin:$PATH' >> /etc/profilesource /etc/profile
2. 时间同步服务
确保所有节点时间偏差小于500ms:
yum install -y chronysystemctl enable chronydsystemctl start chronyd
3. 免密登录配置
在管理节点生成密钥对并分发:
ssh-keygen -t rsassh-copy-id server-worker1ssh-copy-id server-worker2
验证免密登录:
ssh server-worker1 date
五、集群管理工具部署
1. 软件包准备
从官方托管仓库获取安装包,建议选择稳定版本:
wget https://archive.apache.org/dist/ambari/2.7.5/apache-ambari-2.7.5-bin.tar.gztar -xzvf apache-ambari-2.7.5-bin.tar.gz -C /opt/
2. 数据库配置
使用MySQL作为元数据库时需创建专用用户和库:
CREATE DATABASE ambari DEFAULT CHARACTER SET utf8;GRANT ALL PRIVILEGES ON ambari.* TO 'ambari'@'%' IDENTIFIED BY 'password';FLUSH PRIVILEGES;
3. 配置文件修改
编辑/opt/ambari-server/conf/ambari.properties,关键参数:
server.jdbc.driver.path=/usr/share/java/mysql-connector-java.jarserver.jdbc.url=jdbc:mysql://server-master1:3306/ambariserver.jdbc.user.name=ambariserver.jdbc.user.passwd=password
4. 服务初始化
执行安装向导完成基础配置:
ambari-server setup# 按提示选择JDK路径、数据库类型等参数ambari-server start
六、集群部署验证
通过Web界面访问管理控制台(默认端口8080),完成以下验证步骤:
- 登录控制台(默认用户名/密码:admin/admin)
- 创建新集群并选择服务组件
- 配置各节点服务角色
- 执行部署计划并监控状态
- 验证服务健康状态(所有组件显示绿色)
七、常见问题处理
1. 端口冲突
使用netstat -tulnp检查端口占用,常见冲突端口:
- 8080(与Tomcat冲突)
- 50070(与旧版HDFS冲突)
- 8042(与YARN NodeManager冲突)
2. 数据库连接失败
检查以下内容:
- MySQL服务是否运行
- 防火墙是否放行3306端口
- 用户权限是否正确配置
- JDBC驱动版本是否匹配
3. 节点通信异常
验证:
/etc/hosts配置是否正确- 网络连通性(
ping测试) - 防火墙规则是否放行必要端口
- SELinux是否处于permissive模式
通过完成上述步骤,您已成功搭建起完整的集群管理环境。建议定期进行健康检查,重点关注磁盘空间、内存使用率和网络延迟等关键指标。对于生产环境,建议配置监控告警系统,及时发现并处理潜在问题。