Centos6离线搭建安装配置Cloudera Manager593超详细.docx
《Centos6离线搭建安装配置Cloudera Manager593超详细.docx》由会员分享,可在线阅读,更多相关《Centos6离线搭建安装配置Cloudera Manager593超详细.docx(52页珍藏版)》请在冰豆网上搜索。
Centos6离线搭建安装配置ClouderaManager593超详细
前言
完成时间
2017-11-1410:
16:
00
从开始搭建到现在有一个月了
概述
在公司的服务器上的虚拟机上搭建了6遍,
第1遍看别人的文章自己搭,
第2遍铲了重新搭建边搭边写文章,安装完发现CM使用的是内嵌数据库
第3遍把ClouderaManager卸载重新安装,使用Mysql作为CM的数据库
第4遍虚拟机铲了重新搭建,验证之前的步骤
第5遍虚拟机铲了重新搭建,把内存增加到32G重新搭验证
第6遍部署到生产
ClouderaManager版本选择
Cloudera公司一般都是3个月发布一次版本,
但是如果发布之后发现此版本存在重大Bug,
下一个版本会提前发布
笔者写这篇文章的时候ClouderaManager已经出到了5.13.0
5.11、5.12版本可能存在Bug,不敢用,
5.13版本从发布到现在刚刚一个月,不敢用,
5.10版从5.10.0到5.10.1中间只隔了2个月
保守起见这里选择5.9.3
当然你选择5.10.x版本的应该也没有问题
系统配置
IP地址
主机名
内存
所安装的服务
192.168.60.54
20G
cloudera-scm-agent
192.168.60.55
20G
mysql
cloudera-scm-server
cloudera-scm-agent
192.168.60.56
20G
cloudera-scm-agent
后面添加大数据的服务这里不显示
安装包准备
1.ClouderaManager安装包
a)cm5.9.3-centos6.tar.gz
b)CDH-5.9.3-1.cdh5.9.3.p0.4-el6.parcel
c)CDH-5.9.3-1.cdh5.9.3.p0.4-el6.parcel.sha1
d)manifest.json
e)cloudera-manager-installer.bin
2.其他还需要准备的安装包:
a)JDK1.8安装包——我这里用的是jdk1.8.0_65,rpm包
b)Mysql5.6.x——也是rpm包
c)mysql-connector-java-5.1.44.jar
3.安装包可以先上传到Linux服务器
只需要上传到主节点(cloudera-scm-server所在的服务器)就行,上传目录随意,后面会再进行操作
一、大数据平台集群环境准备
注意
1.以下所有步骤如无特别说明都是要在所有服务器上都执行一遍
2.亲测,以下所有的准备工作都要做,没有的话的话后面出现各种问题还得再补上
1.配置静态IP
vim/etc/sysconfig/network-scripts/ifcfg-eth0
内容如下:
DEVICE=eth0
HWADDR=00:
50:
56:
93:
24:
7E
TYPE=Ethernet
UUID=8ca9d801-a91a-4365-8b08-d54c6c3050d0
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.60.56
NETMASK=255.255.255.0
GATEWAY=192.168.60.1
DNS1=202.96.209.5
DNS2=202.96.209.133
重启网卡驱动
servicenetworkrestart
2.修改主机名
3台服务器分别修改为
vim/etc/sysconfig/network
##修改为以下内容
NETWORKING=yes
HOSTNAME=
3.hosts文件主机名与IP地址映射
另外你的电脑最好也添加一下,路径是:
C:
\Windows\System32\drivers\etc\hosts
vim/etc/hosts
##添加以下内容
192.168.60.54cm01
192.168.60.55cm02
192.168.60.56cm03
4.禁用IPV6
命令行执行以下命令
##禁用IPv6
echo"">>/etc/modprobe.d/dist.conf
echo"aliasnet-pf-10off">>/etc/modprobe.d/dist.conf
echo"aliasipv6off">>/etc/modprobe.d/dist.conf
##查看是否追加成功
tail/etc/modprobe.d/dist.conf
5.关闭防火墙
#关闭防火墙
serviceiptablesstop
#永久性关闭防火墙
chkconfigiptablesoff
#查看防火墙状态:
serviceiptablesstatus
生产上根据实际情况进行设置
6.禁用Selinux
重启机器才会生效,这里先不重启
vim/etc/sysconfig/selinux
##修改配置项:
SELINUX=disabled
7.卸载系统自带的JDK
rpm-qa|grepjava
#xxxyyyzzz为你要卸载的插件,插件之间以空格隔开
rpm-e--nodepsxxxyyyzzz
8.设置文件打开数目和用户最大进程数
##查看文件打开数目
ulimit-a
##查看用户最大进程数
ulimit-u
##设置用户最大进程数
vim/etc/security/limits.conf
##结尾添加以下内容
*softnofile32768
*hardnofile1048576
*softnproc65536
*hardnprocunlimited
*softmemlockunlimited
*hardmemlockunlimited
9.统一时区为东八区(GMT+0800)
cp/usr/share/zoneinfo/Asia/Shanghai/etc/localtime
10.Linux操作系统系统语言采用英文版
#查看操作系统系统语言
echo$LANG
#修改操作系统系统语言
vim/etc/sysconfig/i18n
LANG="en_US.UTF-8"
用中文的话后面使用Oozie的时候会发生乱码
11.关闭透明大页面
#临时关闭透明大页面(立即生效)
echonever>/sys/kernel/mm/redhat_transparent_hugepage/defrag
echonever>/sys/kernel/mm/redhat_transparent_hugepage/enabled
#永久关闭透明大页面(重启生效)
echo''>>/etc/rc.local
echo'#关闭大透明页面'>>/etc/rc.local
echo'echonever>/sys/kernel/mm/redhat_transparent_hugepage/defrag'>>/etc/rc.local
echo'echonever>/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
12.修改swappiness
#临时修改
sysctl-wvm.swappiness=1
#永久修改
echo"vm.swappiness=1">>/etc/sysctl.conf
13.安装JDK1.8
#安装JDK
rpm-ivhjdk-8u65-linux-x64.rpm
1.配置JAVA_HOME
#修改环境变量
vim/etc/profile
#末尾追加以下内容
exportJAVA_HOME=/usr/java/default
exportPATH=$JAVA_HOME/bin:
$PATH
exportCLASSPATH=.:
$JAVA_HOME/lib/dt.jar:
$JAVA_HOME/lib/tools.jar
#查看是否安装成功
java-version
2.重新加载环境变量使配置生效
source/etc/profile
#查看是否配置成功
echo$JAVA_HOME
14.重启服务器
reboot
二、配置ssh无密钥访问
1.生成密钥
#生成密钥
ssh-keygen-trsa
#执行后一路回车
2.复制公钥
cd~/.ssh/
cpid_rsa.pubauthorized_keys
#下面的命令是把其他主机的公钥复制到本机
ssh-copy-id-icm01
ssh-copy-id-icm02
ssh-copy-id-icm03
3.测试连接
sshcm01
sshcm02
sshcm03
注意
此步执行完以后最好三个服务器的客户端连接全部关了重新连接,
因为sshcm0x命令执行完后如果没有返回来的话会造成不同客户端连接窗口混乱
三、开启NTP服务
Centos6默认安装ntp服务
1.所有服务器屏蔽默认server
#修改ntp配置文件
vim/etc/ntp.conf
#屏蔽默认server将配置文件里下面的内容注释掉
#server0.centos.pool.ntp.orgiburst
#server1.centos.pool.ntp.orgiburst
#server2.centos.pool.ntp.orgiburst
#server3.centos.pool.ntp.orgiburst
2.配置ntp主服务器
我这里是服务器
#修改ntp配置文件
vim/etc/ntp.conf
#添加如下内容
server127.127.1.0
fudge127.127.1.0stratum10
3.配置ntp从服务器
#修改ntp配置文件
vim/etc/ntp.conf
#同步的时间
server
4.启动所有服务器上的服务
#启动ntp服务器
servicentpdstart
#设置开机启动ntp服务器
chkconfigntpdon
5.验证ntp服务器是否开启
#验证ntp服务器是否开启
ntpq-p
主服务器:
从服务器:
-注意
NTP服务器默认是5到10分钟从主服务器更新一次时间
四、配置yum源
1.配置网络yum源为阿里云源
三台服务器都需要配置
1.备份原来的配置
mkdir-p/etc/yum.repos.d/bak
mv/etc/yum.repos.d/*.repo/etc/yum.repos.d/bak
2.下载新的CentOS-Base.repo到/etc/yum.repos.d/
wget-O/etc/yum.repos.d/CentOS-Base.repo
3.生成缓存
yummakecache
2.搭建本地yum源
只在服务器上配置就行
1.开启HTTP服务
#安装httpd服务(如果已安装跳过)
yuminstallhttpd
#启动httpd服务
servicehttpdstart
#设置开机启动
chkconfighttpdon
2.浏览器验证是否启动成功
输入地址:
httpd服务默认80端口,浏览器访问如果是80端口的话可以不输入端口号
3.将安装包放在指定的目录并解压
##所有安装包都放在/opt/software/cloudera目录下
mkdir-p/opt/software/cloudera/CDH-5.9.3
mkdir-p/opt/software/cloudera/cm
mvCDH-5.9.3-1.cdh5.9.3.p0.4-el6.parcel/opt/software/cloudera/CDH-5.9.3
mvCDH-5.9.3-1.cdh5.9.3.p0.4-el6.parcel.sha1/opt/software/cloudera/CDH-5.9.3
mvmanifest.json/opt/software/cloudera/CDH-5.9.3
tar-zxfcm5.9.3-centos6.tar.gz-C/opt/software/cloudera
##其实这个放哪儿都行
mvcloudera-manager-installer.bin/opt/software/cloudera
#http服务添加安装包的软链接
ln-s/opt/software/cloudera/cm/var/www/html/cm
ln-s/opt/software/cloudera/CDH-5.9.3//var/www/html/cdh
4.添加ClouderaManager和parcel源
vim/etc/yum.repos.d/cloudera-manager.repo
#添加如下内容
[cloudera-manager]
name=ClouderaManager,Version5.9.3
baseurl=
gpgcheck=0
vim/etc/yum.repos.d/cm.repo
#添加如下内容
[cm]
name=cm
baseurl=
enabled=1
gpgcheck=0
五、安装Mysql数据库
这里Mysql安装在服务器
Mysql版本这里是5.6.x。
5.7.x的安装与此不一样,如果你是5.7的话这部分看其他的教程
1.安装Mysql
1.解压tar包,并添加执行权限
#解压tar包
tarxvfMySQL-5.6.38-1.el6.x86_64.rpm-bundle.tar-C/opt/software/mysql/
cd/opt/software/mysql/
#添加执行权限
chmodu+x*.rpm
2.安装MySQL-shared-compat替换系统自带的mysql-libs
#先查看一下是否有系统自带的mysql插件,我这里是有的
rpm-qa|grep-imysql
#先安装MySQL-shared-compat
rpm-ivhMySQL-shared-compat-5.6.38-1.el6.x86_64.rpm
#再卸载mysql-libs
yumremovemysql-libs
3.安装mysql
#安装MySQL-server
rpm-ivhMySQL-server-5.6.38-1.el6.x86_64.rpm
#安装MySQL-client
rpm-ivhMySQL-client-5.6.38-1.el6.x86_64.rpm
2.配置Mysql
安装完以后Mysql生成一个随机密码保存在/root/.mysql_secret
#启动Mysql
servicemysqlstart
#不用再配置开机启动了,安装包已经设置Mysql开机启动
#查看Mysql密码
more~/.mysql_secret
#进行Mysql的基本配置
/usr/bin/mysql_secure_installation--user=mysql
3.开启远程登陆
#命令行登陆Mysql
mysql-uroot-p123123
#添加远程登陆权限
Grantallprivilegeson*.*to'root'@'%'identifiedby'123123'withgrantoption;
#重新加载权限
flushprivileges;
本地通过Navicat远程连接Mysql:
4.将Mysql驱动包放入Java共享目录
三台服务器都要做
#重命令Mysql驱动包,把版本号去掉
mvmysql-connector-java-5.1.44-bin.jarmysql-connector-java.jar
#将jar包移到java共享目录下
mvmysql-connector-java.jar/usr/share/java/
#将Mysql驱动包分发到另外两台服务器
scp/usr/share/java/mysql-connector-java.jarroot@cm01:
/usr/share/java
scp/usr/share/java/mysql-connector-java.jarroot@cm03:
/usr/share/java
5.创建数据库及用户并添加权限
createdatabaseifnotexistsamondefaultcharsetutf8collateutf8_general_ci;
createdatabaseifnotexistsrmandefaultcharsetutf8collateutf8_general_ci;
createdatabaseifnotexistsnavdefaultcharsetutf8collateutf8_general_ci;
createdatabaseifnotexistsnavmsdefaultcharsetutf8collateutf8_general_ci;
createdatabaseifnotexistshuedefaultcharsetutf8collateutf8_general_ci;
createdatabaseifnotexistssentrydefaultcharsetutf8collateutf8_general_ci;
createdatabaseifnotexistshive;
createdatabaseifnotexistsoozie;
grantallonhive.*to'hive'@'%'identifiedby'hive'withgrantoption;
grantallonoozie.*to'oozie'@'%'identifiedby'oozie'withgrantoption;
grantallonhue.*to'hue'@'%'identifiedby'hue'withgrantoption;
grantallonamon.*to'amon'@'%'identifiedby'amon'withgrantoption;
grantallonrman.*to'rman'@'%'identifiedby'rman'withgrantoption;
grantallonnav.*to'nav'@'%'identifiedby'nav'withgrantoption;
grantallonnavms.*to'navms'@'%'identifiedby'navms'withgrantoption;
grantallonsentry.*to'sentry'@'%'identifiedby'sentry'withgrantoption;
flushprivileges;
六、安装ClouderaManager
注意
此部分只在上执行
1.安装ClouderaManager
#cloudera-manager-installer.bin可以在任意目录下,它会去yum上查找相应的安装文件
#给cloudera-manager-installer.bin添加执行权限
chmodu+xcloudera-manager-installer.bin
#安装
./cloudera-manager-installer.bin--skip_repo_package=1
正常情况下Next、Next、Yes、Next、Yes即安装成功,会有如下提示信息表示安装成功了
其他教程里说还需要创建cloudera-scm用户这里是不用的,执行这个安装程序的时候会自动创建
安装成功界面
此时会在系统会添加两个服务:
●cloudera-scm-server
这个是ClouderaManager的服务
●cloudera-scm-server-db
这个是ClouderaManager内嵌的数据库服务
#查看添加的Cloudera服务
rpm-qa|grepcloudera
#查看服务运行状态
servicecloudera-scm-serverstatus
servicecloudera-scm-server-dbstatus
2.配置Mysql数据库
为ClouderaManager配置外部的数据库需要对此外部数据库进行一些配置
1.ClouderaManager官网对Mysql配置的翻译,
大致意思是:
a)需要配置Mysql的搜索引擎为InnoDB
b)Mysql安装好以后默认分配的缓冲区和内存比较小,ClouderaManager会非常频繁地连接Mysql需要配置一下,具体根据你集群的大小配置最大连接数
c)二进制日志对于ClouderaManager不是必须的,但是对Mysql有好处,这个你随意
然后下面给了一个f配置的例子
[mysqld]
transaction-isolation=READ-COMMITTED
#Disablingsymbolic-linksisrecommendedtopreventassortedsec