目录
一、网络配置
1、静态网卡配置
2、网关配置
3、停止networkManager服务
4、重启网卡服务
二、配置静态网卡
1、修改网络配置
2、修改主机名
三、加载MySQL驱动包
1、准备文件
2、下载地址
3、加载MySQL驱动包
四、安装 cloudera-manager-daemons
五、保存当前快照,克隆虚拟机
六、安装 cloudera-manager-agent(离线)
七、主节点上安装 cloudera-manager-server
1、安装 cloudera-manager-server
2、主节点上配置 MySQL 数据库
3、所有节点启动agent
八、安装CDH服务
1、登录cdh安装界面
2、配置host主机名称
3、使用 httpd 服务安装 parcel
4、配置parcel存储库目录
5、配置ssh登录凭据
6、安装cloudera-manager-agent
7、在线安装cloudera-manager-agent
8、安装 CDH-6.3.2-1.cdh6.3.2.xxx.parcel
先查看原本的配置信息
cat /etc/sysconfig/network-scripts/ifcfg-ens33
防止配置失败,先备份一份
cp /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-ens33.tempalte
cat /etc/sysconfig/network-scripts/ifcfg-ens33.tempalte
vim /etc/sysconfig/network-scripts/ifcfg-ens33
修改BOOTPROTO选项为static,在文件末尾追加
IPADDR="192.168.232.131"
NETMASK="255.255.255.0"
GATEWAY="192.168.232.2"
DNS="192.168.232.2"
NM_CONTROLLED="no"
source /etc/sysconfig/network-scripts/ifcfg-ens33
cat /etc/resolv.conf
vim /etc/resolv.conf
# Generated by NetworkManager
search localdomain
nameserver 192.168.232.2
nameserver 8.8.8.8
网关IP和DNS地址一样
8.8.8.8 是Google提供的免费DNS服务器的IP地址
注意,配置是根据之前安装Linux时生成的以太网配置修改的,这里将IP地址改成了 192.168.232.129
systemctl stop NetworkManager.service
systemctl disable NetworkManager.service
systemctl restart network
ifconfig
ping hao123.com
(1)生成UUID
UUID是网络的唯一标识,不能和之前的主机重复
uuidgen
(2)修改网卡配置文件
修改UUID和IPADDR
vim /etc/sysconfig/network-scripts/ifcfg-ens33
cat /etc/sysconfig/network-scripts/ifcfg-ens33
IPADDR="192.168.0.162"
NETMASK="255.255.255.0"
GATEWAY="192.168.0.1"
DNS="192.168.0.1"
NM_CONTROLLED="no"
(3)重新启动网络并查看网卡信息
systemctl restart network
ifconfig
ping hao123.com
需要单独打开克隆虚拟机,此时虚拟机的主机名和ip地址和原来的一样,需要修改它们
source之后也没有生效,reboot 服务器
重启之后,发现hostname没有修改成功
尝试直接修改内核参数,发现参数是从其他文件读取的,Linux不允许修改
vim /proc/sys/kernel/hostname
最终通过 sysctl 命令 修改kernel.hostname 参数 才生效
sysctl kernel.hostname=cdh2
再次查看,发现 /proc/sys/kernel/hostname 已被修改为 cdh2
cat /proc/sys/kernel/hostname
重启之后,hostname还是原来的名字
经过多次反复地查阅,找到了最后 hostnamectl 命令
永久性修改host主机名命令(当前也立即生效)
hostnamectl set-hostname cdh2
修改之后,reboot 查看,终于修改成功了
cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm
cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm
cloudera-manager-server-db-2-6.3.1-1466458.el7.x86_64.rpm
oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm
CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel
CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel.sha1
manifest.json
mysql-connector-java-5.1.47.jar
https://archive.cloudera.com/cm6/6.3.1/redhat7/yum/RPMS/x86_64/
https://archive.cloudera.com/cdh6/6.3.2/parcels/
cp mysql-connector-java-5.1.47.jar /usr/share/java/mysql-connector-java.jar
(1)创建 /opt/cloudera-manager 目录,用于存放 cdh的安装文件
mkdir /opt/cloudera-manager
(2)安装 daemons(请务必先安装daemons,这可是一个大坑切记切记.....)
如果安装不成功,可能是Java版本不合适或者Java环境变量没配成功
推荐官方版本:oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm
cd /opt/cloudera-manager
rpm -ivh cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm
(3)安装完之后,会在 /opt 下生成目录cloudera目录
至此,可以重新克隆虚拟机了,克隆完之后的节点
回顾一下,在克隆机器之前,都做了哪些事情
- Java的安装和配置
- MySQL的安装和配置
- cloudera-manager-daemons的安装
(1)如果直接使用 rpm -ivh 命令安装agent,会出现报错:Linux缺少依赖
cd /opt/cloudera-manager
rpm -ivh cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm
(2)如果直接安装不成功,则使用 --nodeps --force 命令安装
--nodeps:安装时不检查依赖关系 --force:强制安装
cd /opt/cloudera-manager
rpm -ivh cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm --nodeps --force
(3)配置agent的server节点
修改 /etc/cloudera-scm-agent/config.ini 文件,将server_host=localhost 改成server_host=主机名(当前机器的hostname)
cp /etc/cloudera-scm-agent/config.ini /etc/cloudera-scm-agent/config.ini.template
vim /etc/cloudera-scm-agent/config.ini
head -n 20 /etc/cloudera-scm-agent/config.ini
执行命令: (JAVA_HOME=/usr/java/jdk1.8为Java的环境变量配置,根据自己的安装目录配置)
sudo JAVA_HOME=/usr/java/jdk1.8 /opt/cloudera/cm-agent/bin/certmanager setup --configure-services
如果使用 Oracle数据库,修改配置文件/etc/default/cloudera-scm-server 需要将 -Xmx2G 修改成 -Xmx4G
cp /etc/default/cloudera-scm-server /etc/default/cloudera-scm-server.template
vim /etc/default/cloudera-scm-server
export CMF_JAVA_OPTS="-Xmx4G -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp"
cd /opt/cloudera-manager
rpm -ivh cloudera-manager-server-6.3.1-1466458.el7.x86_64.rpm
安装完server之后,主节点的cdh安装算完成了,那么安装目录都在哪里呢?
/opt/cm /opt/agent
/etc/cloudera-scm-agent /etc/cloudera-scm-server
下载的离线安装包parcel人家已经创建好目录了,我们直接移动到 /opt/parcel-repo 下即可
官方给出的数据库有三种,分别是MySQL、Oracle和postgreSQL,这里使用的是MySQL
cd /etc/cloudera-scm-server/
cp db.properties db.properties.template
vim /etc/cloudera-scm-server/db.properties
cat /etc/cloudera-scm-server/db.properties
需要修改的配置
# 指定数据库类型为mysql
com.cloudera.cmf.db.type=mysql
# 指定数据库的地址以及端口号
com.cloudera.cmf.db.host=cdh01:3306
# 指定CM数据库的名称
com.cloudera.cmf.db.name=scm
# 指定CM用户的用户名
com.cloudera.cmf.db.user=scm
# 指定CM用户的密码
com.cloudera.cmf.db.password=scm
# 指定数据库使用为外部数据库
com.cloudera.cmf.db.setupType=EXTERNAL
db.properties
# Copyright (c) 2012 Cloudera, Inc. All rights reserved.
#
# This file describes the database connection.
#
# The database type
# Currently 'mysql', 'postgresql' and 'oracle' are valid databases.
com.cloudera.cmf.db.type=mysql
# The database host
# If a non standard port is needed, use 'hostname:port'
#com.cloudera.cmf.db.host=localhost
# The database name
#com.cloudera.cmf.db.name=cmf
# The database user
#com.cloudera.cmf.db.user=cmf
# The database user's password
#com.cloudera.cmf.db.password=
# The db setup type
# After fresh install it is set to INIT
# and will be changed post config.
# If scm-server uses Embedded DB then it is set to EMBEDDED
# If scm-server uses External DB then it is set to EXTERNAL
#com.cloudera.cmf.db.setupType=INIT
com.cloudera.cmf.db.type=mysql
com.cloudera.cmf.db.host=cdh01:3306
com.cloudera.cmf.db.name=scm
com.cloudera.cmf.db.user=scm
com.cloudera.cmf.db.password=scm
com.cloudera.cmf.db.setupType=EXTERNAL
主节点cdh01启动server服务
service cloudera-scm-server start
进入server log目录,查看日志,日志生产则代表服务已经正常启动成功
ll /var/log/cloudera-scm-server/
查看server状态
sudo systemctl status cloudera-scm-server
查看 server 日志
tail -f /var/log/cloudera-scm-server/cloudera-scm-server.log
查看7182端口是否被占用
netstat -anp | grep 7180
sudo systemctl start cloudera-scm-agent
sudo systemctl status cloudera-scm-agent
(1)浏览器访问 http://cdh01:7180,进入cdh登录界面,默认账户密码 admin admin
选择第一个免费版本
设置集群名称
将配置的主机名host输入,host之间用逗号分隔,点击搜索会弹出配置的host主机信息
安装httpd,将 /opt/cloudera/parcel-repo 下的文件复制到 /var/www/html/cdh6_parcel/
yum -y install httpd
sudo systemctl start httpd
ln -s /opt/cloudera/parcel-repo /var/www/html/cdh6_parcel
ln -s /opt/cloudera/parcel-repo /opt/cloudera/parcels
http://cdh01/cdh6_parcel/
为了防止安装失败,本地parcel和httpd的parcel都设置,注意地址是http不是https开头
method 1:
Repository Location -> 自定义存储库 -> http://cdh01/cdh6_parcel/
CDH and other software -> 选择方法 -> 使用 Parcel (建议) 更多选项
method 2:
Repository Location -> Public Cloudera Repository
CDH and other software -> 选择方法 -> 使用 Parcel (建议) 更多选项
ln -s /opt/cloudera/parcel-repo /opt/cloudera/parcels
前面没有配置ssh免密码登录就是因为在CDH安装的过程中,这里会让我们设置ssh的账户密码
这里这个agent没安装成功,原因是之前已经安装过agent了,但是这里没有跳过安装的选项
点击继续会提示安装失败,它给的提示也没有继续安装的选项
这里有一个技巧,把浏览器访问的当前网址复制,在另一个窗口重新打开,
系统默认你安装成功,继续下一个安装界面,如果不成功则需要
返回选择在线安装agent,或者快照还原克隆时的状态,再选择在线安装agent
返回选择存储库选项,重新把自定义存储库 Location换成 Repository
install Agents: http://cdh01:7180/cmf/express-wizard/wizard#step=installStep
出现了一个节点安装失败,点击重试了很多下都没反应,最后等其他节点安装完很久后
重试可以再次安装了,可能是网络原因,看日志发现下载依赖包时换了很多个mirror
安装agent有时候还要拼人品拼网速,有时候很快安装完了,有时候会卡在某一个机器完全动不了
所以,一定要有耐心,特别是在网速不好还是在线安装agent的情况下
agent安装成功之后安装parcel包到每台主机
Install Parcels:http://cdh01:7180/cmf/express-wizard/resume#step=parcelInstallStep
Inspect Cluster:http://cdh01:7180/cmf/express-wizard/wizard#step=summaryStep2
根据提示执行,禁止透明大页面压缩
echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /etc/rc.local
首次安装建议选择自定义安装zookeeper
到这里之后建议把zookeeper和cloudera service服务关闭
然后关机,虚拟机备份一份状态,防止之后出现问题恢复
shutdown -h now
为了防止cdh server服务出问题,这里装了两天server服务,
cdh的server和agent服务都是开机自启的,关闭开机自启服务执行(把备用的一台关掉就行了)
chkconfig cloudera-scm-server off
systemctl disable cloudera-scm-server.service
备份之后再把其他大数据集群服务装上
CDH 6.3.2 安装(一):https://blog.csdn.net/qq262593421/article/details/105048233
CDH 6.3.2 安装(二):https://blog.csdn.net/qq262593421/article/details/105173259