您的位置:首页 > 运维架构

CDH 5 安装教程,Kafka 安装,LZO 安装

2017-09-03 04:34 295 查看

目 录

主机列表

基础环境

集群主机基础配置

配置 NTP 服务

配置 MySQL 服务器

安装 Cloudera Manager Server 和 AgentServer
配置 Server 端

配置 Agent 端

安装 CDH
配置并分配 CDH5 parcel 包

安装 Hadoop 集群及相关组件

浏览 CDH Web 端相关布局

安装 Kafka 组件
配置并分配 Kafka parcel 包

集群内安装 Kafka 服务

配置 HDFS LZO 压缩
配置并分配 LZO parcel 包

HDFS 相关 LZO 配置

YARN 相关 LZO 配置

主机列表

|主机名 | IP |Memory| CPU | 角色及服务 | | :------- | ----: |:---: |:--- |:--- | | test1.lan | 192.168.22.11 |9G |4核 | cm-agent, Namenode, YARN | | test2.lan | 192.168.22.12 |9G |4核 | cm-agent, SecondNameode, HBase-Master | | test3.lan |192.168.22.13 |9G |4核 | cm-agent, Datanode, zk-server, kafka-broker, Regionserver | | test4.lan |192.168.22.14 |9G |4核 | cm-agent, Datanode, zk-server, kafka-broker, Regionserver | | test5.lan | 192.168.22.15 |9G |4核 | cm-agent, Datanode, zk-server, kafka-broker, Regionserver | | test6.lan |192.168.22.16 |9G |4核 | cm-server, MySQL-Server |

基础环境

CentOS 6 x86_64

jdk-8u101-linux-x64.rpm

MySQL-5.6.x

NTPd => On

CDH-5.12.0-1.cdh5.12.0.p0.29-el6.parcel(离线parcel)

cloudera-manager-el6-cm5.12.0x8664.tar.gz

KAFKA-2.2.0-1.2.2.0.p0.68-el6.parcel

集群主机基础配置

确保
/
目录至少100G以上

SELinux 关闭

iPtables 关闭

禁用 Transparent Hugepage Compaction

设置 vm.swapiness 为 1

ntp 服务开启,时间同步(不推荐用ntpdate)

配置 NTP 服务

以下配置集群内每台主机均要做一次```vim /etc/sysconfig/ntpdate SYNC_HWCLOCK=yes // 打开硬件时钟同步保存 ntpdate time.windows.com
// 首次手动同步时钟,避免首次ntpd服务因时间偏差过大导致无法同步 vim /etc/ntp.conf server time.windows.com prefer // 添加时间同步服务器 service ntpd start && chkconfig ntpd on // 运行时间同步服务 ```

配置用于 cm-server 的 MySQL 服务器

该 MySQL 服务即可安装在 cm-server 服务器上,也可以与其他服务共用
> rpm -qa | grep -i -E "mysql-libs|mariadb-libs"
> yum remove -y mysql-libs mariadb-libs && yum install -y -q crontabs postfix

> tar  xf  MySQL-5.6.35-1.el6.x86_64.rpm-bundle.tar
> rpm -ivh MySQL-client-5.6.35-1.el6.x86_64.rpm \
MySQL-shared-* \
MySQL-server-5.6.35-1.el6.x86_64.rpm \
MySQL-devel-5.6.35-1.el6.x86_64.rpm
安装 MySQL-Server ```wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.44.tar.gz tar xf mysql-connector-java-5.1.44.zip ``` 下载 mysql-connector.jar (用于安装在 cm-server 服务器上)
> vim /etc/my.cnf [mysqld] character-set-server = utf8
// 初始密码在
~/.mysql-secret
文件之中
> mysql -p`default_secret` sql_cli > SET PASSWORD = PASSWORD("new_secret") sql_cli > exit

安装 Cloudera Manager Server 和 AgentServer

Cloudera Manager Server 安装在 test6.lan AgentServer 在集群内每台主机均需要单独安装 下载地址:http://archive-primary.cloudera.com/cm5/cm/5/cloudera-manager-el6-cm5.12.0x8664.tar.gz

配置 Server 端

cloudera-manager 下载完成后上传到
test6.lan
即可 然后解压到
/opt
目录下(只能是该目录下),因为cdh5的源会默认在
/opt/cloudera/parcel-repo
寻找
> tar xf cloudera-manager-el6-cm5.12.0_x86_64.tar.gz  -C /opt/
给集群内所有节点添加
cloudera-scm
用户 ```useradd --system --home=/opt/cm-5.12.0/run/cloudera-scm-server/ --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm ```在 cm-server 节点配置
mysql-connector-java
,并且为 Cloudera Manager 5 创建初始数据库
> cp /path/to/mysql-connector-java-5.1.44-bin.jar /opt/cm-5.12.0/share/cmf/lib/
然后,创建初始数据库(-psecret 为数据库对应账户的密码) ```/opt/cm-5.12.0/share/cmf/schema/scmpreparedatabase.sh mysql cm -hlocalhost -uroot -psecret --scm-host localhost scm scm scm ``` 见 Successfully connected to database. All done, you SCM database is configured correctly! 即库结构表结构配置成功。运行 Cloudera Manager 5 的 Server 端:
> /opt/cm-5.12.0/etc/init.d/cloudera-scm-server start
注意:首次运行 Server 端,会有大概5-10分钟的数据初始化时间(服务端进程内存占用大概1.5G左右),初始化完成后会有 java 程序监听在 7180 7182 端口之上。

配置 Agent 端

在 Server 端修改 Agent 配置文件中 server_host 的主机地址
> vi /opt/cm-5.12.0/etc/cloudera-scm-agent/config.ini
server_host=test6.lan
在 Server 端复制 Agent 程序到集群内所有节点 /opt/ 目录下
> for i in {1..5}; do
echo "--------- Start scp to test${i}.lan --------"
scp -r -q /opt/cm-5.12.0/  test${i}.lan:/opt/
echo "######### Done ##########"
done
等待复制成功,即可在 Agent 所有节点中启动 Agent 程序
> /opt/cm-5.12.0/etc/init.d/cloudera-scm-agent start
Agent 端程序为 Python 进程,会主动到配置文件中的 server_host 节点注册信息,该 Agent 也是用于后续接受 Server 端发送的相关指令,以及心跳信息监控。

安装 CDH

配置并分配 CDH5 parcel 包

需要单独回到 test6.lan shell终端,配置 CDH5 的
parcel
包(cloudera 采用预编译捆绑安装包的方式,以支持 Hadoop 离线安装)。 对应
CDH parcel
包下载地址为:http://archive-primary.cloudera.com/cdh5/parcels/5.12.0/ ```cd /opt/cloudera/parcel-repo curl -O http://fileserver.lan/CDH5/CDH5-5.12.0-1.cdh5.12.0.p0.29-el6.parcel curl -O http://fileserver.lan/CDH5/CDH5-5.12.0-1.cdh5.12.0.p0.29-el6.parcel.sha1 mv CDH5-5.12.0-1.cdh5.12.0.p0.29-el6.parcel.sha1 \ CDH5-5.12.0-1.cdh5.12.0.p0.29-el6.parcel.sha ``` 此处需要把对应 parcel 包的 sha1 文件改名为 CDH5-5.12.0-1.cdh5.12.0.p0.29-el6.parcel.sha,不然 cm-server 识别不了该 parcel 包。重启 cloudera-scm-server 服务端
> /opt/cm-5.12.0/etc/init.d/cloudera-scm-server restart
打开 http://test6.lan:7180/ 开始安装 CDH

默认登陆用户名密码为 admin admin同意相关条款

选择相关服务版本

该版本相关服务包及信息

添加集群主机

此处有
当前管理的主机(5)
表示 Agent 端注册到 Server 端正常。 如果此处只有一个选项,即
新主机
,那么表示 Agent 注册不正常,请检查网络或服务是否正常。

你亦可以选择通过指定主机名或IP的方式连接远程节点。选择主机

选择集群安装的相关配套组件 parcel 包。

开始集群内节点的 parcel 包部署

此图最后的部署告警提示 cloudera-scm 用户未创建,确实是节点忘记创建,用户创建完毕后重新验证即可。部署信息概览

安装 Hadoop 集群及相关组件


CDH 官方有已经打包好的配套匹配方案,也可以自行搭配组件此处暂且选择几个组件,包括 HBase、HDFS、YARN 和 Zookeeper (Kafka属于另外一个单独的parcel包提供,后面再单独安装)

相关组件的配置参数

部署中....

其中各相关服务组件在服务器文件系统中的安装路径如下

安装完成

浏览 CDH Web 端相关布局

修改 NameNode 关于 Heapsize 大小的初始默认配置(推荐设置为 1-4G 大小)

修改配置后,需要重启服务,重启服务后稍等片刻,等待服务的相关附属子进程启动完毕,告警即消失。 (修改 NameNode 的 Heapsize 大小,当然也需要修改 SecondaryNameNode 的 Heapsize)

安装 Kafka 组件

配置并分配 Kafka parcel 包

在 Web 页面中,主机 -> Parcel 里面会列出当前集群以配置和分配的 parcel 包,目前只配置了 CDH5,Kafka 单独存在于其他 parcel 包中,所以需要单独加载 parcel ,然后分配到集群内各节点。

Cloudera官方Kafka组件的parcel包下载地址为:http://archive.cloudera.com/kafka/parcels/latest/ 照旧下载 percel 文件,以及该文件的 sha1 串,然后重命名
***.sha1
***.sha
方可。下载好以上两个文件后,放到 cm-server 节点的
/opt/cloudera/parcel-repo/
目录下

无需重启 server 守护进程,在页面即可在线刷新、分配、激活。

集群内安装 Kafka 服务


这里需要确认和修改 2 个默认配置复制进程,默认为1,修改为 3(视业务量而定)

分区数,默认分区数为 50,这里暂且保留。

删除旧topic,默认打开,不做更改。

业务端口为 9092 。

配置 HDFS LZO 压缩

配置并分配 LZO parcel 包

LZO 功能也是封装在单独的 parcel 包中,选择对应平台的包。 下载地址为:http://archive-primary.cloudera.com/gplextras/parcels/latest/ 这里并没有直接的提供 sha 文件,所以需要查看
manifest.json
文件,找到对应 parcel 包的 hash 值,手动保存至本地文件即可。下载 parcel 包及其 sha 文件,存放至 cm-server 的
/opt/cloudera/parcel-repo/
目录下。 同安装 Kafka 捆绑包一样,在页面上即可完成刷新,注册,分配,激活操作。

激活好 LZO 之后,有几个为之依赖的服务会提示重启载入新配置。 先别急重启,还有几个配置需要单独手动修改。

HDFS 相关 LZO 配置


io.compression.codecs
新增一行,填入
com.Hadoop.compression.lzo.LzopCodec
保存配置。

YARN 相关 LZO 配置


mapreduce.application.classpath
的属性值新增一行,填入
/opt/cloudera/parcels/HADOOP_LZO/lib/hadoop/lib/*


mapreduce.admin.user.env
的属性值,后补入
/opt/cloudera/parcels/HADOOP_LZO/lib/hadoop/lib/native
保存,重启相关依赖的服务即可。

相关服务最后预览

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  集群 CDH hadoop