1.准备4台阿里云云服务器
修改/etc/hostname和/etc/hosts 重启4台机器
2.配置4台服务器ssh免密码登录
ssh-keygen -t rsa
修改authorized_keys的权限: chmod 600 ~/.ssh/authorized_keys
3.安装ntp:所有节点
yum install ntp -y
# 开机启动 chkconfig ntpd on
# 启动ntp service ntpd start
4.修改文件打开限制:所有节点
echo "* soft nofile 65536" >> /etc/security/limits.conf
echo "* hard nofile 65536" >> /etc/security/limits.conf
echo "* soft memlock unlimited" >> /etc/security/limits.conf
echo "* hard memlock unlimited" >> /etc/security/limits.conf
5.设置swap空间:所有节点
echo "vm.swappiness = 0" >> /etc/sysctl.conf
6.关闭大页面缓存:所有节点
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag
7.关闭防火墙:所有节点
systemctl stop firewalld.service
systemctl disable firewalld.service
8.安装jdk,配置好/etc/profile:所有节点
9.安装数据库
yum -y install mariadb mariadb-server
启动MariaDB数据库服务,并设置未开机自启:
systemctl start mariadb
systemctl enable mariadb
systemctl status mariadb
配置mariadb,设置密码为password
/usr/bin/mysql_secure_installation
创建集群所需的数据库:
create database metastore default character set utf8;
CREATE USER 'hive'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON metastore.* TO 'hive'@'%';
FLUSH PRIVILEGES;
create database scm default character set utf8;
CREATE USER 'scm'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON scm.* TO 'scm'@'%';
FLUSH PRIVILEGES;
create database rm default character set utf8;
CREATE USER 'rm'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON rm.* TO 'rm'@'%';
FLUSH PRIVILEGES;
create database am default character set utf8;
CREATE USER 'am'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON am.* TO 'am'@'%';
FLUSH PRIVILEGES;
create database hue default character set utf8;
CREATE USER 'hue'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON hue.* TO 'hue'@'%';
FLUSH PRIVILEGES;
create database oozie default character set utf8;
CREATE USER 'oozie'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON oozie.* TO 'oozie'@'%';
FLUSH PRIVILEGES;
create database sentry default character set utf8;
CREATE USER 'sentry'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON sentry. * TO 'sentry'@'%';
FLUSH PRIVILEGES;
create database nav_ms default character set utf8;
CREATE USER 'nav_ms'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON nav_ms. * TO 'nav_ms'@'%';
FLUSH PRIVILEGES;
create database nav_as default character set utf8;
CREATE USER 'nav_as'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON nav_as. * TO 'nav_as'@'%';
FLUSH PRIVILEGES;
安装jdbc驱动:把名字:mysql-connector-java-5.1.34.jar 改为:mysql-connector-java.jar
创建/usr/share/java/文件夹,然后将MySQL的JDBC驱动包mysql-connector-java.jar上传至该目录
10.下载依赖包:
yum -y install chkconfig bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse portmap fuse-libs redhat-lsb
11,官网下载cdh的文件:
以及:cdh需要的自带的jdk
创建cdh jdk的保存目录,cdh会到这个目录找jdk:
mkdir /usr/java
在所有机器的cdh下载目录执行:
yum install -y oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm 会把cdh需要的jdk保存到/usr/java
master继续执行:
yum install -y cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm
yum install -y cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm
yum install -y cloudera-manager-server-6.3.1-1466458.el7.x86_64.rpm
其他机器cdh下载目录下执行:
yum install -y cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm
yum install -y cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm
12.master上初始化数据库:
/opt/cloudera/cm/schema/scm_prepare_database.sh mysql scm scm password
13.启动
master:
systemctl enable cloudera-scm-agent
systemctl enable cloudera-scm-server
systemctl start cloudera-scm-server
systemctl start cloudera-scm-agent
其他机器:
systemctl enable cloudera-scm-agent
systemctl start cloudera-scm-agent
14:查看7180端口是否被监听。当出现如下所示7180端口被监听,则可以打开浏览器Web页面。
netstat -lnpt | grep 7180
15.集群安装向导
通过网页访问192.168.193:7180
输入账户:admin
密码:admin登录CM
选择60天试用,点击继续
点击继续
继续,输入集群名称,可以使用默认的“Cluster 1”。
指定集群主机机器
根据输入搜索到指定主机,点击继续
添加自定义的cm存储库URL
设置自定义的parcel存储库URL和cm存储库URL
添加自定义的Parcel存储卡URL
点击继续
选择JDK,点击继续
ssh登录
选择用户,并输入密码
安装…
安装成功
安装选定parcel…
安装成功,继续
主机正确性检查
主机正确性检查,确保全部通过后点完成
组件安装
群集设置,
选择自己要安装的组件
测试数据库连接
审核更改
首次运行命令,启动集群服务
集群设置配置成功,点击完成
done