使用虚拟机,搭建CDH,因为下载包特别慢,所以需要提前下载。本文所使用到的包下载链接下面给出
所有需要下载的包,统一放到了/data目录下面:
1.JDK,这里用的是1.8版本
2.mysql
https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.17.tar.gz
https://cdn.mysql.com/archives/mysql-5.7/mysql-boost-5.7.17.tar.gz
http://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz
3.cms
wget http://archive.cloudera.com/cm5/cm/5/cloudera-manager-centos7-cm5.14.2_x86_64.tar.gz
wget http://archive.cloudera.com/cdh5/parcels/5.14.2/CDH-5.14.2-1.cdh5.14.2.p0.8-el7.parcel
wget http://archive.cloudera.com/cdh5/parcels/5.14.2/CDH-5.14.2-1.cdh5.14.2.p0.8-el7.parcels.sha1
wget http://archive.cloudera.com/cdh5/parcels/5.14.2/manifest.json
本文只是在一台 2c4g 的 centos7 机器安装部署,机器信息如下
hostname:data02.test.sa
ip:192.168.1.13
开始步骤:
1.修改机器环境配置
修改hostname、关闭防火墙、selinux、安装依赖包
yum -y remove mariadb-libs
yum -y install psmisc ntp ntpdate gcc gcc-c++ automake autoconf make cmake libtool
yum install -y bison bison-devel ncurses ncurses-devel libaio-devel
hostnamectl set-hostname data02.test.sa
systemctl stop firewalld
systemctl restart ntpd
ntpd -g -q
ntptime
ntpstatus
setenforce 0
echo "192.168.1.13 data02.test.sa data02" >> /etc/hosts
2.配置java及环境变量
mkdir /usr/share/java
cp -rp /data/mysql-connector-java-5.1.38-bin.jar /usr/share/java/mysql-connector-java.jar
cd /data
tar zxf jdk1.8.0_161.tar.gz -C /usr/local/
mv /usr/local/jdk1.8.0_161 /usr/local/java
vim /etc/profile
#追加如下三行
export JAVA_HOME=/usr/local/java
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:/usr/share/java
#保存之后
source /etc/profile
3.安装mysql
可以使用rpm包安装,也可以使用源码包编译安装,这里用的源码编译安装,方便规划配置路径、数据存储路径
groupadd mysql
useradd -r -g mysql -s /bin/false mysql #创建不可登陆用户
mkdir -p /usr/local/mysql
mkdir -p /data/3306mysql/data
mkdir -p /data/3306mysql/tmp
chown -R mysql.mysql /data/3306mysql/
cd /data
tar -zxf boost_1_59_0.tar.gz -C /usr/local/
mv /usr/local/boost_1_59_0/ /usr/local/boost
解压并预编译配置mysql
tar -zxf mysql-5.7.17.tar.gz #解压缩
cd mysql-5.7.17
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/data/3306mysql/data -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3306 -DWITH_BOOST=/usr/local/boost
**详细解释如下:**
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ #安装目录
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \ #sock目录
-DDEFAULT_CHARSET=utf8 \ #默认编码
-DDEFAULT_COLLATION=utf8_general_ci \ #默认效验规则
-DWITH_MYISAM_STORAGE_ENGINE=1 \ #激活myisame
-DWITH_INNOBASE_STORAGE_ENGINE=1 \ #激活innodb
-DWITH_MEMORY_STORAGE_ENGINE=1 \ #激活memory
-DWITH_READLINE=1 \ #快捷键功能
-DENABLED_LOCAL_INFILE=1 \ #允许导入数据
-DMYSQL_DATADIR=/data/3306mysql/data \ #数据目录
-DMYSQL_USER=mysql \ #用户名
-DMYSQL_TCP_PORT=3306 \ #端口
-DWITH_BOOST=/usr/local/boost #增强插件
执行完毕后,再继续
make && make install
安装完之后,对配置文件进行配置
mv /etc/my.cnf /etc/my.cnf.bak
cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
修改配置信息如下,或者自己配置
[mysqld]
basedir=/usr/local/mysql
datadir=/data/3306mysql/data
socket=/usr/local/mysql/mysql.sock
user=mysql
symbolic-links=0
[mysqld_safe]
log-error=/usr/local/mysql/logs/mysqld.log
pid-file=/usr/local/mysql/mysqld.pid
创建logs目录,修改mysql目录所有者
mkdir /usr/local/mysql/logs
touch /usr/local/mysql/logs/mysqld.log
chown -R mysql:mysql /usr/local/mysql
初始化数据库
cd /usr/local/mysq/
bin/mysqld \
--initialize --user=mysql \
--basedir=/usr/local/mysql \
--datadir=/data/3306mysql/data
记录临时密码:KGvF:v<qT2gS
拷贝启动脚本
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod 755 /etc/init.d/mysqld
chown -R mysql. /usr/local/mysql/
chown -R mysql. /data/3306mysql
启动mysql
service mysqld start
登陆mysql
/usr/local/mysql/bin/mysql -uroot -p
临时密码:KGvF:v<qT2gS
修改密码,设置永不过期,刷新生效
SET PASSWORD = PASSWORD('AA!!ss22dd33');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
flush privileges;
#创建ClouderaManager需要用到的几个数据库
create database cmf default character set ='utf8';
create database amon default character set ='utf8';
create database hive default character set ='utf8';
quit;
添加mysql的环境变量
echo 'export PATH=/usr/local/mysql/bin:$PATH' >> /etc/profile
source /etc/profile
至此,mysql部分安装完毕。
4.ClouderaManager准备工作
mkdir -p /opt/cloudera/parcel-repo
mkdir /opt/cloudera/parcel-cache
mkdir /opt/cloudera/parcels
mkdir /opt/cloudera/csd
mkdir /opt/cloudera-manager
mkdir /usr/share/java -p
cp -rp /data/mysql-connector-java-5.1.38-bin.jar /usr/share/java/mysql-connector-java.jar
5.安装ClouderaManager
tar zxf cloudera-manager-centos7-cm5.14.2_x86_64.tar.gz -C /opt/cloudera-manager/
#修改agent配置文件
vi /opt/cloudera-manager/cm-5.14.2/etc/cloudera-scm-agent/config.ini
#第三行 ,也可以保留localhost
server_host=data02.test.sa
#修改server配置文件
vi /opt/cloudera-manager/cm-5.14.2/etc/cloudera-scm-server/db.properties
12行去掉注释改成 data02.test.sa,这是MySQL服务开启的节点,也可以用localhost
15行去掉注释,数据库名字为cmf,已经在MySQL上建立了这个数据库了
18行去掉注释,把MySQL的登陆名改为root
21行去掉注释,填写MySQL的密码,MySQL的密码是AA!!ss22dd33
27行选择EXTERNAL
#创建用户和用户组
useradd --system --home=/opt/cloudera-manager/cm-5.14.2/run/cloudera-scm-server --no-create-home --shell=/bin/false cloudera-scm
chown -R cloudera-scm. /opt/cloudera*
设置一些参数
sysctl vm.swappiness=10
echo 'vm.swappiness=10' >> /etc/sysctl.conf
echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled
将parcel放到指定目录/opt/cloudera/parcel-repo
mv /data/parcels/* /opt/cloudera/parcel-repo/
将sha1文件名,全部修改为sha文件
启动ClouderaManager
/opt/cloudera-manager/cm-5.14.2/etc/init.d/cloudera-scm-server start
#监听日志命令
tail -2000f /opt/cloudera-manager/cm-5.14.2/log/cloudera-scm-server/cloudera-scm-server.log
#在日志中看到这个错误可以忽略不计的
ParcelUpdateService:com.cloudera.parcel.components.ParcelDownloaderImpl: Unable to retrieve remote parcel repository manifest
启动全部节点上的Agent服务
/opt/cloudera-manager/cm-5.14.2/etc/init.d/cloudera-scm-agent start
#查看状态
/opt/cloudera-manager/cm-5.14.2/etc/init.d/cloudera-scm-agent status
登陆到浏览器上输入192.168.1.13:7180访问cdh,账户密码:admin,admin
在管理Agent时全选,此时Server和Agent会通信,如果Agent没启动成功则在此页面检测不到
我们需要确保所有节点上的Agent启动成功
然后根据页面提示,操作即可
提示:
如果未提前将parcel放到指定目录,需要做如下操作
来到安装页面,我们选择的CDH版本是5.14.2,但是页面上可能没有我们需要修改一个东西即可
点击更多选项,把版本修改为自己当前安装的版本,需要重启server服务