设为首页 收藏本站
查看: 3548|回复: 0

[经验分享] CDH 5 安装教程,Kafka 安装,LZO 安装

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2017-9-4 13:30:24 | 显示全部楼层 |阅读模式
主机列表[td]
主机名
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.0_x86_64.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    > vim /etc/ntp.conf  server time.windows.com  prefer > service ntpd start && chkconfig ntpd on
打开硬件时钟同步保存
  首次手动同步时钟,避免首次ntpd服务因时间偏差过大导致无法同步
  添加时间同步服务器
  运行时间同步服务
配置用于 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/Downlo ... a-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. ... .12.0_x86_64.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/scm_prepare_database.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.iniserver_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 startAgent 端程序为 Python 进程,会主动到配置文件中的 server_host 节点注册信息,该 Agent 也是用于后续接受 Server 端发送的相关指令,以及心跳信息监控。
安装 CDH需要单独回到 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- ... 0.29-el6.parcel> curl -O http://fileserver.lan/CDH5/CDH5- ... 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  
60a4fcefgy1fj5s1qs927j210f0kbjtx.jpg
默认登陆用户名密码为 admin admin
同意相关条款
60a4fcefgy1fj5s2hsamwj21060odqgu.jpg
选择相关服务版本
60a4fcefgy1fj5s2xnvg3j210a0o6qb7.jpg
该版本相关服务包及信息
60a4fcefgy1fj5s3cvug2j21060o3th7.jpg
添加集群主机
60a4fcefgy1fj5saguuvbj20pa0dn417.jpg
此处有当前管理的主机(5) 表示 Agent 端注册到 Server 端正常。
如果此处只有一个选项,即 新主机 ,那么表示 Agent 注册不正常,请检查网络或服务是否正常。
60a4fcefgy1fj5s44exr5j20l50bmgo1.jpg
你亦可以选择通过指定主机名或IP的方式连接远程节点。
选择主机
60a4fcefgy1fj5satvvemj21000fbdju.jpg
选择集群安装的相关配套组件 parcel 包。
60a4fcefgy1fj5sba1wgnj20zs0ly0zw.jpg
开始集群内节点的 parcel 包部署
60a4fcefgy1fj5tf7yzsog20tx0luu0z.gif
此图最后的部署告警提示 cloudera-scm 用户未创建,确实是节点忘记创建,用户创建完毕后重新验证即可。
部署信息概览
60a4fcefgy1fj5tnxat9lg20zt0lub2d.gif
安装 Hadoop 集群及相关组件 60a4fcefgy1fj5tnk4o7ej20vs0i210h.jpg
CDH 官方有已经打包好的配套匹配方案,也可以自行搭配组件
此处暂且选择几个组件,包括 HBase、HDFS、YARN 和 Zookeeper (Kafka属于另外一个单独的parcel包提供,后面再单独安装)
60a4fcefgy1fj5tojt0saj20wl0man97.jpg
相关组件的配置参数
60a4fcefgy1fj5ts9bwh9g20zt0lue88.gif
部署中….  
60a4fcefgy1fj5u2rdaadj20xp0jiwju.jpg
其中各相关服务组件在服务器文件系统中的安装路径如下
60a4fcefgy1fj5u3fdkx5j20lu04dgpa.jpg
安装完成
60a4fcefgy1fj5u46fwibj21030m5q4o.jpg
浏览 CDH Web 端相关布局修改 NameNode 关于 Heapsize 大小的初始默认配置(推荐设置为 1-4G 大小)
60a4fcefgy1fj5ubdwp44g20zt0lue8b.gif
修改配置后,需要重启服务,重启服务后稍等片刻,等待服务的相关附属子进程启动完毕,告警即消失。
(修改 NameNode 的 Heapsize 大小,当然也需要修改 SecondaryNameNode 的 Heapsize)
安装 Kafka 组件配置 Kafka parcel 包在 Web 页面中,主机 -> Parcel  里面会列出当前集群以配置和分配的 parcel 包,目前只配置了 CDH5,Kafka 单独存在于其他 parcel 包中,所以需要单独加载 parcel ,然后分配到集群内各节点。
60a4fcefgy1fj5ujmc54vj210g0kcjxe.jpg
Cloudera官方Kafka组件的parcel包下载地址为:http://archive.cloudera.com/kafka/parcels/latest/
照旧下载 percel 文件,以及该文件的 sha1 串,然后重命名 ***.sha1 为 ***.sha 方可。
下载好以上两个文件后,放到 cm-server 节点的 /opt/cloudera/parcel-repo/ 目录下
60a4fcefgy1fj5umj4pybj210h0jadlz.jpg
无需重启 server 守护进程,在页面即可在线刷新、分配、激活。
集群内安装 Kafka 服务 60a4fcefgy1fj5uxyrxvxg20zt0luu10.gif
这里需要确认和修改 2 个默认配置
  • 复制进程,默认为1,修改为 3(视业务量而定)
  • 分区数,默认分区数为 50,这里暂且保留。
  • 删除旧topic,默认打开,不做更改。
业务端口为 9092 。
配置 HDFS LZO 压缩LZO 功能也是封装在单独的 parcel 包中,选择对应平台的包。
下载地址为:http://archive-primary.cloudera.com/gplextras/parcels/latest/
这里并没有直接的提供 sha 文件,所以需要查看 manifest.json 文件,找到对应 parcel 包的 hash 值,手动保存至本地文件即可。
下载 parcel 包及其 sha 文件,存放至 cm-server 的 /opt/cloudera/parcel-repo/ 目录下。
同安装 Kafka 捆绑包一样,在页面上即可完成刷新,注册,分配,激活操作。
60a4fcefgy1fj5vajkumvj20sf0hd42a.jpg
激活好 LZO 之后,有几个为之依赖的服务会提示重启载入新配置。
先别急重启,还有几个配置需要单独手动修改。
HDFS 相关 LZO 配置 60a4fcefgy1fj5vbb8ixcj20px0a3acu.jpg
将 io.compression.codecs 新增一行,填入 com.Hadoop.compression.lzo.LzopCodec  
保存配置。
YARN 相关 LZO 配置 60a4fcefgy1fj5vg6w6f8j20qt068407.jpg
将 mapreduce.application.classpath 的属性值新增一行,填入 /opt/cloudera/parcels/HADOOP_LZO/lib/hadoop/lib/*
60a4fcefgy1fj5vgr0dibj20q602idgo.jpg
将 mapreduce.admin.user.env 的属性值,后补入 /opt/cloudera/parcels/HADOOP_LZO/lib/hadoop/lib/native
保存,重启相关依赖的服务即可。
相关服务最后预览 60a4fcefgy1fj5vom6tkrj21030kmn4l.jpg


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-403910-1-1.html 上篇帖子: kafka原理介绍 下篇帖子: ELK + kafka + filebeat +kibana
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表