CDH版本:搭建的版本为CDH6.X系列
Linux版本:CentOS Linux release 7.6.1810
CDH搭建步骤详细一-虚拟机准备CDH搭建步骤详细二_环境准备
三、服务安装
下面所需的包我后面会打包上传,当然可以自行到官网下载
1、安装httpd服务
①下载所需rpm包
②上传此目录的rpm包到cm201 机器执行
yum -y localinstall ./*.rpm (安装httpd)
systemctl start httpd (启动httpd服务)
systemctl status httpd (查看httpd服务状态)
systemctl enable httpd (将httpd服务加入到开启启动项中)
systemctl is-enabled httpd 查看是否是自启
知识补充:yum install 和 yum localinstall 区别
1、yum install会去yum仓库查找相应的软件并安装,仓库中的软件都是解决了依赖关系的。
2、yum localinstall是用来安装本地rpm包的命令,首先rpm包要先下载到本地,然后在本地目录执行yum localinstall *.rpm。 yum会自动搜寻依赖关系并安装 rmp -i *
3、rpm不会自行解决依赖关系,缺少依赖就会报错
③打开页面
http://cm201/ 出现以下页面就显示成功
④修改默认位置,当前你不需要的话这步骤可以忽略
默认位置是/var/www/html/ 我这里需要修改成/yum路径
修改的配置文件为 /etc/httpd/conf/httpd.conf
修改处一:
# DocumentRoot: The directory out of which you will serve your
# documents. By default, all requests are taken from this directory, but
# symbolic links and aliases may be used to point to other locations.
#
DocumentRoot "/yum"
修改处二(只复制部分):
# Further relax access to the default document root:
<Directory "/yum">
#
# Possible values for the Options directive are "None", "All",
验证: 可以在/yum 下新建文件夹 如mysql 能打开地址则成功
http://cm201/mysql/ (这里我已经安装好了yum 源,安装yum源步骤下面会有说明)
2、本地yum源准备
①安装createrepo
将所需rpm包上传
yum -y localinstall ./*.rpm
②yum源准备
cd /etc/yum.repos.d
执行: rename .repo .repo.bak * 将原来的yum源重命令让其失效
这里举例说明
mysql yum源配置
新建/yum/mysql 将物理机上的包上传到此目录下,执行
createrepo .
在/etc/yum.repos.d/下新建
[root@cm201 yum.repos.d]# more mysql.repo
[mysql]
name = mysql
baseurl = http://192.168.242.201/mysql/
gpgcheck = 0
JDK 、Cloudera Manager、 CDH等一些yum源 步骤均是如此
yum源准备好之后可以直接安装JDK,注意需要1.8版本
yum -y install jdk
三、安装mysql并启动
mysql会作为cm一些服务的元数据库 ,当前你也可以选中mariadb、pg、oracle等一些数据库
yum install -y mysql-community-server
systemctl enable mysqld(将mysql服务加入开机启动)
systemctl list-unit-files |grep mysqld (查看是否将mysql服务加入到开机启动项)
启动mysql: systemctl start mysqld
修改mysql密码
获取临时登录密码:grep “password” /var/log/mysqld.log
使用临时登录密码进入mysql : mysql -uroot -p’临时密码’
[root@cm201 etc]# grep "password" /var/log/mysqld.log
2022-04-11T22:07:41.238953Z 1 [Note] A temporary password is generated for root@localhost: !9fn+e)(b>C_
mysql -uroot -p\!9fn+e\)\(b\>C\_
修改密码:
mysql> set global validate_password_policy=0; #定义复杂度
mysql> set global validate_password_length=1; #定义长度 默认是8
mysql> set password for 'root'@'localhost'=password('123456');
修改mysql的访问权限
输入:mysql -uroot -p123456
mysql> grant all privileges on *.* to 'root'@'%' identified by '123456';
mysql> flush privileges;
建表cdh相关默认库(也可以后创建)
输入命令;mysql -uroot -proot 进入mysql,执行以下sql建库语句
mysql> create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
mysql> create database reports DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
mysql> create database activity DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
mysql> create database sentry DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
create database hue DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
四、安装时间同步服务
yum install -y ntp
ntp配置,我这里选中一个作为时钟同步的机器,配置截图如下
开启并设置自启
systemctl start ntpd (启动ntpd服务)
systemctl status ntpd (查看ntpd服务状态)
systemctl enable ntpd (将ntpd服务加入开机启动)
systemctl list-unit-files |grep ntpd (查看是否将ntpd服务加入到开机启动项)
查看机器时钟是否同步
ntpq -p
当偏差出现很小的时候就可以进行CM相关的操作了,如图所示
ntp知识补充:
remote :响应这个请求的NTP服务器的名称。refid :NTP服务器使用的上一级ntp服务器。
st :remote远程服务器的级别. 由于NTP是层型结构,有顶端的服务器,多层的Relay
Server再到客户端.所以服务器从高到低级别可以设定为1-16. 为了减缓负荷和网络堵塞,原则上应该避免直接连接到级别为1的服务器的.t:类型,u: unicast(单播), b: broadcast(广播), l: local本地时钟 when:
上一次成功请求之后到现在的秒数。poll : 本地机和远程服务器多少时间进行一次同步(单位为秒).
在一开始运行NTP的时候这个poll值会比较小,那样和服务器同步的频率也就增加了,可以尽快调整到正确的时间范围,之后poll值会逐渐增大,同步的频率也就会相应减小reach: 这是一个八进制值,用来测试能否和服务器连接.每成功连接一次它的值就会增加 delay:从本地机发送同步要求到ntp服务器的round trip time(往返时间)
offset:主机通过NTP时钟同步与所同步时间源的时间偏移量,单位为毫秒(ms)。offset越接近于0,主机和ntp服务器的时间越接近jitter: 这是一个用来做统计的值. 它统计了在特定个连续的连接数里offset的分布情况. 简单地说这个数值的绝对值越小,主机的时间就越精确
五、Cloudera Manager安装
①安装CM(Cloudera Manager简称)服务
yum install -y cloudera-manager-daemons cloudera-manager-server
补充:
漏掉的准备 新建目录
mkdir -p /usr/share/java
将mysql驱动包mysql-connector-java-5.1.47.jar上传至此目录下
②初始化SCM数据库
/opt/cloudera/cm/schema/scm_prepare_database.sh mysql -h localhost -uroot -p123456 --scm-host localhost scm root 123456
③将parces包上传到/opt/cloudera/parcel-repo下并生成校验文件
sha1sum CDH-6.2.1-1.cdh6.2.1.p0.1425774-el7.parcel | awk '{print $1}' > CDH-6.2.1-1.cdh6.2.1.p0.1425774-el7.parcel.sha
④启动CM服务
systemctl start cloudera-scm-server (启动server)
systemctl status cloudera-scm-server (查看server状态)
systemctl enable cloudera-scm-server (开机启动server)
⑤待启动完成就可以页面进行验证了
http://IP:7180/cmf/login 密码默认为admin:admin
下面就是页面点点点了