安装指导文档:
https://blog.csdn.net/sinat_33384251/article/details/91404617
https://blog.csdn.net/weixin_36939535/article/details/82914103
https://blog.csdn.net/weixin_36939535/article/details/82914558
https://blog.csdn.net/weixin_36939535/article/details/82914560
https://blog.csdn.net/weixin_36939535/article/details/82927578
https://blog.csdn.net/weixin_36939535/article/details/82927673
还可以参考:
这个安装的是5.14,楼上的安装有借鉴。
https://blog.csdn.net/daerzei/article/details/80636424
安装环境:
服务器系统:centos6.6
Cloudera Manager安装包
1、cm5.15.1-centos6.tar.gz
wget http://archive.cloudera.com/cm5/repo-as-tarball/5.15.1/cm5.15.1-centos6.tar.gz
https://archive.cloudera.com/cdh5/parcels/5.15/
2、CDH-5.15.2-1.cdh5.15.2.p0.3-el6.parcel.sha1
wget https://archive.cloudera.com/cdh5/parcels/5.15/CDH-5.15.2-1.cdh5.15.2.p0.3-el6.parcel/
3、CDH-5.15.2-1.cdh5.15.2.p0.3-el6.parcel
wget https://archive.cloudera.com/cdh5/parcels/5.15/CDH-5.15.2-1.cdh5.15.2.p0.3-el6.parcel/
wget https://archive.cloudera.com/cdh5/parcels/5.15/manifest.json
这个好像没用:
5、GPLEXTRAS-5.15.2-1.cdh5.15.2.p0.3-el6.parcel
http://archive.cloudera.com/gplextras5/parcels/5.15.2/
其他安装包
jdk安装包 (采用的是预编译安装):
jdk-8u181-linux-x64.tar.gz
官网下载(我下载超慢):
csdn下载(本来想设置2积分的,但是csdn自动设置成5积分了。)
https://download.csdn.net/download/ly8951677/11616945
mysql-5.6.45
https://cdn.mysql.com//Downloads/MySQL-5.6/MySQL-5.6.45-1.el6.x86_64.rpm-bundle.tar
为自动化脚本按照必要的软件(安装有十来台机子,所以采用脚本自动化部署,不需要的伙伴可以忽略)
yum -y install vim*
yum -y install wget*
yum -y install gcc
yum -y install tcl(依赖gcc)
yum -y install expect (依赖tcl)
ntp安装包
下载地址
官方下载地址:http://support.ntp.org/bin/view/Main/SoftwareDownloads
参考地址:https://www.cnblogs.com/bethal/p/6212164.html
https://www.cnblogs.com/Dev0ps/p/10662588.html
官网安装步骤:
https://blog.csdn.net/weixin_38200154/article/details/89175237
下载最新稳定版本
开始步骤:
1、配置静态IP
这需要查看自己的网卡,以下是通用网卡配置
vi /etc/sysconfig/network-scripts/ifcfg-eth0
2、禁用IPv6
【注:CDH 要求使用 IPv4,不支持IPv6,如不禁用,通信可能产生问题,进而各个进程可能挂掉,以及出现超时等问题】
echo "alias net-pf-10 off" >> /etc/modprobe.d/dist.conf
echo "alias ipv6 off" >> /etc/modprobe.d/dist.conf
3、#关闭防火墙
# 查看防火墙状态:
service iptables status
关闭防火墙
service iptables stop
# 永久性关闭防火墙
chkconfig iptables off
4、配置免密登陆脚本 (此脚本在主服务器运行就好。确认从主服务器可以ssh到各个从服务器)
前提是需要安装expect软件
#!/bin/bash
echo "`date "+%Y-%m-%d %H:%M:%S"`"
SERVERS=( 192.168.1.10 192.168.1.11 )
PASSWORD=123456
auto_ssh_copy_id(){
echo "auto_ssh_copy_id method"
echo "copy_id param=$1"
/usr/expect/bin/expect -c "set timeout -1;
spawn ssh-copy-id $1;
expect (
*(yes/no)* {send -- yes\r;exp_continue;}
*assword:* {send -- $2\r;exp_continue;}
eof {exit 0;}
)
"
}
for server in ${SERVERS[@]}
do
echo "for $server"
auto_ssh_copy_id $server $PASSWORD
done
2、关闭Selinux 需要重启服务器(应该是修改一个文件就好)
想要了解Selinux文档https://blog.csdn.net/yanjun821126/article/details/80828908
1、vim /etc/sysconfig/selinux (修改这个文件没有修改下面的文件,重启服务器还是显示未修改)
2、vim /etc/selinux/config (这个配置文件也要改,这个才是永久生效的)
统一修改:SELINUX=disabled
查看修改是否成功:
#getenforce Enforcing
<==就显示出目前的模式为 Enforcing
或
/usr/sbin/sestatus
显示disabled证明就成功了
3、修改主机名(备注:强烈要求小写不需要大写,要不CDH装起来会提示一些软件由于主机域名为大写而导致不可用,我是没注意到,以下是我改失败的)相关网址:https://blog.csdn.net/qq_22310551/article/details/84966044
1.永久性更改:vim /etc/sysconfig/network下的HOSTNAME后,把HOSTNAME值改成TEST。修改完之后需要reboot重启服务器永久生效。(我可以重启机器,所以使用永久性修改。)
HOSTNAME=bdatamaster01
2.临时性更改 echo bdatamaster01 >/proc/sys/kernel/hostname
4、设置用户最大进程数
查看当前系统最大进程数
ulimit -n
vim /etc/security/limits.conf
* soft nofile 32768
* hard nofile 1028576
* soft nproc 65536
* hard nproc unlimited
* soft memlock unlimited
* hard memlock unlimited
备注:
* 代表针对所有用户
nproc 是代表最大进程数
nofile 是代表最大文件打开数
尖叫提示:nofile最大 1048576 并且不支持英文,没有特殊需求不建议修改
5、统一时区为东八区
#查看当前时区
date -R;cat /etc/sysconfig/clock
修改时区命令
vim /etc/sysconfig/i18n
LANG="zh_CN.UTF-8"
6、关闭透明大页面
临时关闭透明大页面(立即生效)
echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag
echo never > /sys/kernel/mm/redhat_transparent_hugepage/enabled
# 永久关闭透明大页面(重启生效)
echo ' ' >> /etc/rc.local
echo '# 关闭大透明页面' >> /etc/rc.local
echo 'echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag' >> /etc/rc.local
echo 'echo never > /sys/kernel/mm/redhat_transparent_hugepage/enabled' >> /etc/rc.local
# 查看是否已经关闭
cat /sys/kernel/mm/redhat_transparent_hugepage/defrag
cat /sys/kernel/mm/redhat_transparent_hugepage/enabled
原文链接:https://blog.csdn.net/weixin_36939535/article/details/82914103
我使用的是使用永久关闭
7、修改swap与内存交换
查看命令:
cat /proc/sys/vm/swappiness
系统默认60
建议修改到0
# 临时修改
sysctl -w vm.swappiness=0
# 永久修改
echo "vm.swappiness=0" >> /etc/sysctl.conf
等于0表示:最大限度使用物理内存。
8、重启服务器
reboot
9、jdk安装(源码安装)
先下载jdk包,下载链接已在上方写明。
(由于我的服务器下载这jdk速度太慢,所以是先在本地本地下载下来,然后再传到服务器)
10、查看是否安装过jdk
java -version
或者
rpm -qa|grep java
11、上传jdk压缩包到/home/data/software/
12、解压到对应的目录。
tar -zxvf jdk-8u181-linux-x64.tar.gz -C /usr/local/
cd /usr/local && mv jdk1.8.0_181 jdk
13、配置环境变量
vim /etc/profile
export JAVA_HOME=/usr/local/jdk1.8.0_181
export PATH=$PATH:$JAVA_HOME/bin
14、建立软链接 (真实存在路径: /usr/local/jdk1.8.0_181)
ln -s /usr/local/jdk1.8.0_181 /usr/java/jdk1.8
(cloudera 使用的jdk路径是 /usr/java/,所以我在这里建立的软链接。到时界面安装会自动帮你安装jdk1.7的。我们完成后把/usr/java/目录下的jdk1.7版本的删除了就好。)
创建数据库及用户并添加权限
其他的数据库实例使用uft8编码,hive和oozie使用默认的编码方式
如下,可直接复制,后面会用到。
create database if not exists amon default charset utf8 collate utf8_general_ci;
create database if not exists rman default charset utf8 collate utf8_general_ci;
create database if not exists nav default charset utf8 collate utf8_general_ci;
create database if not exists navms default charset utf8 collate utf8_general_ci;
create database if not exists hue default charset utf8 collate utf8_general_ci;
create database if not exists sentry default charset utf8 collate utf8_general_ci;
create database if not exists hive;
create database if not exists oozie;
grant all on hive.* to 'hive'@'%' identified by 'hive' with grant option;
grant all on oozie.* to 'oozie'@'%' identified by 'oozie' with grant option;
grant all on hue.* to 'hue'@'%' identified by 'hue' with grant option;
grant all on amon.* to 'amon'@'%' identified by 'amon' with grant option;
grant all on rman.* to 'rman'@'%' identified by 'rman' with grant option;
grant all on nav.* to 'nav'@'%' identified by 'nav' with grant option;
grant all on navms.* to 'navms'@'%' identified by 'navms' with grant option;
grant all on sentry.* to 'sentry'@'%' identified by 'sentry' with grant option;
flush privileges;
15、安装ntp(预编译安装)
(1)、下载并上传ntp安装包到服务器目录:/data/software/(楼上有官网下载路径)
(2)、解压
cd /data/software/ && tar -zxvf ntp-4.2.8p13.tar.gz -C /data/software
(3)#安装老版本(因为预编译安装缺少一些文件,所以先要安装老版本)
yum -y install ntp
(4)#备份必要文件
cp -ar /etc/ntp /etc/ntp.bak
cp /etc/ntp.conf /etc/ntp.conf.bak
cp /etc/init.d/ntpd /etc/init.d/ntpd.bak
cp /etc/sysconfig/ntpd /etc/sysconfig/ntpd.bak
cp /etc/sysconfig/ntpdate /etc/sysconfig/ntpdate.bak
(5)#卸载刚安装好的ntp老版本
yum erase ntp ntpdate
(6)#建立ntp资源包
install -v -m710 -o ntp -g ntp -d /var/lib/ntp
(7)配置
cd /data/software/ntp-4.2.8p13
./configure --prefix=/usr --bindir=/usr/sbin --sysconfdir=/etc --enable-linuxcaps --with-lineeditlibs=readline --docdir=/usr/share/doc/ntp-4.2.8p13 --enable-all
-clocks --enable-parse-clocks --enable-clockctl
(8)#编译安装
make && make install
(9)#还原之前备份的配置文件
cp /etc/init.d/ntpd.bak /etc/init.d/ntpd
cp /etc/sysconfig/ntpd.bak /etc/sysconfig/ntpd
cp /etc/sysconfig/ntpdate.bak /etc/sysconfig/ntpdate
mv /etc/ntp.bak /etc/ntp
cp /etc/ntp.conf.bak /etc/ntp.conf
(11)配置ntp主服务器
vim /etc/ntp.conf
#添加如下内容
server 127.127.1.0
fudge 127.127.1.0 stratum 10
(10)配置ntp从服务器
vim /etc/ntp.conf
添加以下:
# 同步BdataMaster01 的时间,添加如下内容
server BdataMaster01
(11)# 启动ntp服务器
service ntpd start
(12)# 设置开机启动ntp服务器
chkconfig ntpd on
查看ntp服务:
chkconfig --list ntpd
(2:启用 表示随机启动已打开)
(13)查看是否同步主机成功
ntpq -p
查看ntp主服务器
注意
NTP服务器默认是5到10分钟从主服务器更新一次时间,配置好以后不会立即更新
14、安装mysql 5.6.45版本
官网下载好:
下载本地上传到服务器
cd /home/data/software/
tar -xvf MySQL-5.6.45-1.el6.x86_64.rpm-bundle.tar -C /home/data/software/mysql-5.6.45/
赋予*.rpm文件权限
chmod u+x *.rpm
yum install numactl
# 先查看一下是否有系统自带的mysql插件,我这里是有的
rpm -qa | grep -i mysql
# 先安装MySQL-shared-compat
rpm -ivh MySQL-shared-compat-5.6.45-1.el6.x86_64.rpm --force --nodeps
# 再卸载mysql-libs
yum remove mysql-libs
# 安装MySQL-server rpm -ivh MySQL-server-5.6.45-1.el6.x86_64.rpm --force --nodeps
# 安装MySQL-client rpm -ivh MySQL-client-5.6.45-1.el6.x86_64.rpm --force --nodeps
安装完以后Mysql生成一个随机密码保存在/root/.mysql_secret
查看随机密码
more ~/.mysql_secret
修改登录密码,在已知随机密码的条件下。
第一步:先检查mysql服务器是否开启:
service mysql status
经验,一般安装好后没开启,我这里执行命令,启动mysql
service mysql start
第二步:登录
mysql -uroot -p
输入随机密码:6KNSFPUjDdWxSGP
第三步:修改密码
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');
# 进行Mysql的基本配置 /usr/bin/mysql_secure_installation --user=mysql
# 命令行登陆Mysql
mysql -uroot -proot
# 添加远程登陆权限
Grant all privileges on *.* to 'root'@'%' identified by ‘123456' with grant option;
GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "123456";
grant all privileges on *.* to 'root'@'localhost' identified by 'root' with grant option;
# 重新加载权限
flush privileges;
查看端口
show global variables like 'port';
修改端口:
vim /usr/my.cnf
port=3506
修改数据库存储位置:
1. 停止mysql服务
service mysql stop
修改数据库存储位置:
1. 停止mysql服务
service mysql stop
2.创建文件夹
cd /home
mkdir data
3. 将mysql默认存放数据的文件夹拷贝到目标目录,目标目录以/home/data为例
cp -a /var/lib/mysql /home/data
4. 修改mysql启动脚本中datadir的值
vi /etc/init.d/mysql
将datadir的值设置为/home/data/mysql
5. 创建软连接
ln -s /home/data/mysql/mysql.sock /var/lib/mysql/mysql.sock
验证是否成功
6、登陆mysql
mysql -uroot -p123456
创建库:
create databases ll_test
cd /home/data/mysql/ &ll
mysql 更改端口还有数据存储位置成功。
配置网络yum源为阿里云源
17、 备份原来的配置
mkdir -p /etc/yum.repos.d/bak
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak
18、下载新的CentOS-Base.repo 到/etc/yum.repos.d/
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
19、生成缓存
yum makecache
完全离线的话可以不做
十来台服务器都需要配置
20、cloudear页面操作安装配置(只在master主机安装操作)
mkdir -p /home/data/software/cloudera/
解压:tar -xvf cm5.15.1-centos6.tar.gz -C /home/data/software
ln -s /home/data/software/cloudera/cm/ /data/httpd/htdocs/cm ln -s /home/data/software/cloudera/CDH-5.15.1/ /data/httpd/htdocs/cdh
/cloudera-manager-installer.bine 文件在哪里都可以安装
cd /data/software
# 给cloudera-manager-installer.bin添加执行权限
chmod u+x cloudera-manager-installer.bin
# 安装
./cloudera-manager-installer.bin --skip_repo_package=1
mv /etc/cloudera-scm-server/db.properties /data/back/
/usr/share/cmf/schema/scm_prepare_database.sh mysql -uroot -pGDsnm@2019 -P3506 scm scm
scm
报异常的话:查看日志:
cd /var/log/cloudera-scm-server/
org.postgresql.util.PSQLException: Connection to localhost:7432 refused. Check that the hostname and port are correct and that the postmaster is accepting TCP/IP connections.
异常
Caused by: java.lang.UnsupportedClassVersionError: com/mysql/jdbc/Driver : Unsupported major.minor version 52.0
停止ClouderaManager服务
service cloudera-scm-server stop service cloudera-scm-server-db stop
mkdir -p /data/back/cloudera-scm-server/
mv /etc/cloudera-scm-server/db.mgmt.properties /data/back/cloudera-scm-server/
启动ClouderaManager服务
service cloudera-scm-server start
cloudera-scm-server-db这个服务就是ClouderaManager内嵌的数据库,就不用再启动了
scm数据库是执行scm_prepare_database.sh脚本时创建的,一同创建的还有scm的用户
这个数据库里的表是重启cloudera-scm-server服务时创建的
jdk自编译安装导致cloudera用的还是之前jdk7版本的。
解决方法:
1、迁移到其他地方
mv /usr/java/jdk1.7.0_67-cloudera /data/back
2、建立自编译的jdk 真实存在路径: /usr/local/jdk1.8.0_181
ln -s /usr/local/jdk1.8.0_181 /usr/java/jdk1.8
到这一步,恭喜完成了全部服务器配置,现在就开始安装Cloudera Manager页面操作一步一步安装就好
开始页面安装。登陆。
ip填写自己的机子ip 。端口都是默认的:7180
提示登陆,默认账号:admin 密码:admin
http://192.168.1.100:7180/cmf/
指定的主机(输入ip逗号分割,也可点击模式看提示)192.168.1.101,192.168.1.102,192.168.1.103
原来的
改为:
指定CM版本及存储地址
之前在httpd服务里配过的,把http://192.168.201.82/cm/5.15.1/配置进去,如下保存,继续。
Agents已安装成功。
完成。
更改日志路径
默认是:/var/log/
[root@BdataMaster01 ~]# mkdir -p /data/hadoop/log/hbase
[root@BdataMaster01 ~]# mkdir -p /data/hadoop/log/hadoop-hdfs
[root@BdataMaster01 ~]# mkdir -p /data/hadoop/log/hive
[root@BdataMaster01 ~]# mkdir -p /data/hadoop/log/hcatalog
[root@BdataMaster01 ~]# mkdir -p /data/hadoop/log/hue
[root@BdataMaster01 ~]# mkdir -p /data/hadoop/log/hue-httpd
[root@BdataMaster01 ~]# mkdir -p /data/hadoop/log/catalogd
[root@BdataMaster01 ~]# mkdir -p /data/hadoop/log/impalad
[root@BdataMaster01 ~]# mkdir -p /data/hadoop/log/impala-llama
[root@BdataMaster01 ~]# mkdir -p /data/hadoop/log/statestore
[root@BdataMaster01 ~]# mkdir -p /data/hadoop/log/cloudera-scm-firehose
[root@BdataMaster01 ~]# mkdir -p /data/hadoop/log/cloudera-scm-alertpublisher
[root@BdataMaster01 ~]# mkdir -p /data/hadoop/log/cloudera-scm-eventserver
[root@BdataMaster01 ~]# mkdir -p /data/hadoop/log/cloudera-scm-navigator
[root@BdataMaster01 ~]# mkdir -p /data/hadoop/log/cloudera-scm-headlamp
[root@BdataMaster01 ~]# mkdir -p /data/hadoop/log/cloudera-scm-telemetrypublisher
[root@BdataMaster01 ~]# mkdir -p /data/hadoop/log/oozie
[root@BdataMaster01 ~]# mkdir -p /data/hadoop/log/spark2
[root@BdataMaster01 ~]# mkdir -p /data/hadoop/log/hadoop-mapreduce
[root@BdataMaster01 ~]# mkdir -p /data/hadoop/log/hadoop-yarn
[root@BdataMaster01 ~]# mkdir -p /data/hadoop/log/zookeeper
备注,服务器重启后需要做一下这些:
1、配置/etc/hosts
2、关闭iptables服务 service iptables stop
3、启动http服务 apachectl start
4、yum makecache
5、重启ntp服务:service ntpd restart