Cloudera安装指南:打造你的大数据基础环境

news/2024/9/20 15:27:39

Cloudera Manager 是 CDH 市场领先的管理平台。它以其强大的数据管理和分析能力,帮助企业能够轻松驾驭海量数据,实现数据的实时分析与洞察。

作为业界第一的端到端 Apache Hadoop 的管理应用,Cloudera Manager 对 CDH 的每个部件都提供了细粒度的可视化和控制,从而设立了企业部署的标准。通过 Cloudera Manger,运维人员得以提高集群的性能,提升服务质量,提高合规性并降低管理成本。

 

今天,我们将带你深入探索 Cloudera 的安装规划与系统环境搭建部署,为你的企业数据之旅铺设坚实的基石。

但在此之前,我们需要精心规划、细致部署。接下来,我们将一步步引导你完成 Cloudera 的安装规划与系统环境搭建,为企业数据中心的管理变得简单直观。

系统环境准备、安装基础环境

1.选择三台已安装 Centos6 Liunx 系统的节点,分配资源

安装 CDH 节点推荐内存为 64G,大部分内存被 Cloudera Management Service 占用,因为做了大量的数据分析和整合。这里,划分三台节点如下:

针对目前学习来说:

  • 如果实际的物理机器内存为 32G,推荐 cm Server 内存为 16G,cm Agent 内存分别为 4G。

  • 如果实际的物理机器内存为 16G,推荐 cm Server 内存为 10G,cm Agent 内存分别为 2G。

  • 如果实际的物理机器内存为 12G,推荐 cm Server 内存为 8G,cm Agent 内存分别为 2G。

  • 如果实际的物理机器内存为 8G,推荐 cm Server 内存为 6G,cm Agent 内存分别为 2G。

注意:后两种情况,实际机器内存不足,需要在 VM 虚拟机中设置允许交换内存。设置方式如下:

在 VMware 中点击“编辑”->“首选项”,找到内存,预留内存是给当前真实物理 机预留的内存量。在额外内存中,如果实际物理机内存不足 10G 就设置“允许交换大部分虚拟机内存”,设置这个的意思是当虚拟机内存不足时,可以允许内存与磁盘交换数据,从而获取更多的内存执行当前运行的程序。 

 

截止到这里,以上只是准备好的三台划分好内存和核心的空节点。

注意: 实际物理机器安装 Vmware 的磁盘至少还要预留 50G 磁盘空间。

 

2.配置 IP

在每台节点上配置 ip,打开 /etc/sysconfig/network-scripts/ifcfg-eth0 编辑内容如下:

 重启网络服务使 ip 生效:

 三台节点配置的 ip 分别为:

  1. 192.168.179.201
  2. 192.168.179.202
  3. 192.168.179.203

注意:每台节点克隆后需要删除每台节点/etc/udev/rules.d/70-persistent-net.rules 文件,清除 mac 地址。重启每台节点即可。

 

3.配置每台节点的 hostname

修改每台节点/etc/sysconfig/network 中的 HOSTNAME,分别为:cm1,cm2,cm3。设置好每台节点的 hostname 之后重启每台节点即可生效。

 

4.配置节点 ip、hostname 映射

在每台节点/etc/hosts 文件后追加如下内容,配置 ip 与 hostname 之间的映射。

 

 

5.关闭防火墙

在每台节点上执行如下命令,关闭防火墙,并设置开机不启动:

 

 

6.关闭 SELinux

SELinux 就是 Security-Enhanced Linux 的简称,安全加强的 linux。传统的 linux 权限是对文件和目录的 owner, group 和 other 的 rwx 进行控制,而 SELinux 采用的是委任式访问控制,也就是控制一个进程对具体文件系统上面的 文件和目录的访问,SELinux 规定了很多的规则,来决定哪个进程可以访问哪些 文件和目录。虽然 SELinux 很好用,但是在多数情况我们还是将其关闭,因为在 不了解其机制的情况下使用 SELinux 会导致软件安装或者应用部署失败。

在每台节点/etc/selinux/config 中将 SELINUX=enforcing 改成 SELINUX=disabled 即可。

 

7.配置 yum 源

这里我们选择使用本地 yum 源。需要在 VM 中设置下连接光驱,步骤如下图:

 

 

在 cm1,cm2,cm3 节点上配置本地 yum 源: 每台节点创建/mnt/cdrom 目录:

 

 

每台节点执行如下命令,将光盘设备/dev/sr0 挂载到/mnt/cdrom 目录:

 

 

每台节点执行命令:df -h 查看是否挂载成功:

 

 

上面的 mount 命令挂载后在机器重启后会失效,为了可以实现开机自动挂载,可以在每台节点的/etc/fstab 文件的最后面加入下面语句:

 

 

下面可以创建本地 yum 源,在每台节点的/etc/yum.repos.d 目录下创建 local.repo 文件,内容如下:

 

 

以上内容中 baseurl 是指 Yum 源的地址,该路径下有个 repodata 目录,就是 yum 安装源目录。file://表示 yum 源为文件。

如果只想让 local.repo 生效,可以在每台节点的/etc/yum.repos.d 目录下 创建一个 backup 目录,将其他的以“.repo”结尾的文件都移动到 backup 目录中。

 

 

在每台节点上执行以下命令,更新 yum 源:

 

 

8.配置 ssh 免密钥登陆

在 CDH 中需要任意两个节点之间都可以免秘钥登录。节点两两免秘钥的根本原理如 下:假设 A 节点需要免秘钥登录 B 节点,只要 B 节点上有 A 节点的公钥,那么 A 节点就可以免密登录当前 B 节点。

第一、需要在每台节点上安装 ssh 客户端,否则,不能使用 ssh 命令(最小化安装 Liunx,默认没有安装 ssh 客户端):

 

 

第二、在每台节点执行如下命令,在每台节点的“~”目录下,创建.ssh 目录,注意:不要手动创建这个目录,因为有权限问题。

 

 

第三、在每台节点上执行如下命令,给当前节点创建公钥和私钥:

 

 

第四、将 cm1,cm2,cm3 的公钥 copy 到 cm1 上,这样,cm1,cm2,cm3 节点都能登录 cm1 节点。命令如下:

 

 

最后、将 cm1 节点上~/.ssh/authorized_keys 拷贝到 cm2 和 cm3 节点的 ~/.ssh/目录下,执行如下命令:

 

 

经过以上步骤,节点两两免密完成。

 

9.节点同步时间

在 cm1,cm2,cm3 每台节点上执行如下命令,安装 ntp 服务及配置定时任务:

复制代码
1. yum-yinstallntp#安装ntp服务#
2. rm -rf /etc/localtime #删除现有时区#
3. ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime #修改上海时区# 
4. /usr/sbin/ntpdate -u pool.ntp.org #同步时间#
5. date #查看时间#
6. #crontab -e 写入如下定时内容:#
7. */10 * * * * /usr/sbin/ntpdate -u pool.ntp.org >/dev/null 2>&1 #同步时
间定时任务#
8. service crond restart #重启定时任务#
9. crontab -l #查看定时任务#
10.
11. chkconfigntpdon#设置ntpd开机启动,不然后期安装CDH时会有警告。 12. servicentpdstart#启动ntpd服务
复制代码

 

10.安装 JDK

给每台节点安装 jdk,这里我们安装的 CDH 版本为 5.4,在官网https://www.cloudera.com/documentation/enterprise/release-n otes/topics/rn_consolidated_pcm.html 下有介绍 版本对应的 jdk 版本,可以使用 jdk7,也可使用 jdk8,但是对应的 jdk 小版本有要求,具体如下:

 

 

 

这里我们选择 jdk8 版本中的 1.8u181 版本安装。在每台节点安装 jdk,在每台节点中创建/software 目录,将 jdk8 安装包通过 ftp 工具上传到/software 目录下,每台节点执行如下命令安装 jdk:

1. [root@cm1 ~]# mkdir -p /software
2. [root@cm1 ~]# rpm -ivh /software/jdk-8u181-linux-x64.rpm

以上命令执行完成之后,会在每台节点的/usr/java 下安装 jdk。在每台节点配置 jdk 的环境变量:

1. vim /etc/profile
2. #在每台节点中配置profile文件,在最后追加内容如下:#
3. export JAVA_HOME=/usr/java/jdk1.8.0_181-amd64
4. export PATH=$JAVA_HOME/bin:$PATH
5. export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

执行完成以上命令之后,在每台节点上执行 “source /etc/profile”使配置生效。

 

11.安装 mysql 数据库

在 cm1 中安装 mysql 数据库,执行命令:yum install –y mysql-server 执行完成之后,启动 mysql:service mysql start。登录 mysql 执行如下语句: 

 
复制代码
1. [root@cm1 java]# mysql
2. mysql> use mysql;
3. mysql> select user,password from user;
4. mysql> delete from user;
5. mysql>GRANTALLPRIVILEGESON*.*TO'root'@'%'IDENTIFIEDBY'123456'WITHGRANT OPTION;
6. mysql> flush privileges;
复制代码

执行如下命令,将 mysql 设置成开机启动,如果不设置开机启动,后期每次启动 ClouderaManager 时,需要手动启动 MySQL。

1. [root@cm1 ~]# chkconfig --add mysqld
2. [root@cm1 ~]# chkconfig --level 345 mysqld on 3. [root@cm1 ~]# chkconfig --list

 

12.安装第三方依赖包

在每台几点上安装第三方依赖包,每台节点执行如下命令:

1. yum install -y chkconfig python bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse fuse-libs redhat-lsb

至此,安装 Cloudera Manager 的基础环境准备完成。


以上就是今天分享的全部内容。

如果你想了解更多关于:Cloudera 系统环境准备、基础环境安装、集群部署以及应用组件安装等全方位的技术的问题,可以联系我:

 感谢你的阅读,如果喜欢我的文字,可以持续关注我,会陆续为你更新更多干货小知识。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/62566.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

uni-app上架ios语言设置

客户反馈了一个问题,日文的应用上架后在商店中,却显示了其他语言,解决方案如下 1.添加要设置的语言2.最重要的一步,在 app-plus 中添加下述代码 name 是app名称"app-plus" : {"locales" : {"ja" : {"name" : "xxx","…

【算法】topk之字节题

1. 合并两个有序列表 🔗 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1:输入:l1 = [1,2,4], l2 = [1,3,4] 输出:[1,1,2,3,4,4] 示例 2: 输入:l1 = [], l2 = [] 输出:[] 示例 3: 输入:l1 = [], l2 = [0] …

flink 启动Job加载外部jar都有哪些方法?

flink 启动Job加载外部jar都有哪些方法 在 Apache Flink 版本中,启动 Job 时加载外部 Jar 包有几种不同的方法。这些方法允许用户引入自定义的 UDF(用户定义函数)或其他依赖项。以下是几种常见的方法: 1.使用 flink run 命令直接启动 你可以通过命令行工具 flink run 来指定…

切片器110-112

透视表切片器抓照片场景描述 针对产品汇总分析数据透视表,制做数据看板,样例如下所示:具体操作制作产品汇总分析数据透视表插入选项卡——勾选雇员——确定——插入选项卡——插入二维柱状图——将数据透视表右侧雇员拖拽到筛选字段——在空白单元格输入INDIRECT函数和MATCH…

探索未来智能:Moonshot AI 引领AI新纪元——M1超级模型

在人工智能的快速演进中,Moonshot AI再次站在了技术创新的前沿。推出M1超级模型,这是一款旨在突破现有AI能力极限的革命性产品。M1超级模型的诞生背景 随着数据量的爆炸性增长和计算能力的提升,AI模型正变得越来越复杂和强大。M1超级模型的诞生是对这一趋势的直接响应,它代…

VSCode配置STM32HAL库开发环境

经常用MDK Keil进行STM32程序开发,但用过jetbrain全家桶等现代IDE后,对keil复古的开发界面以及代码提示不是很喜欢,因此参照网络方法配置了stm32cubemx+vscode+cmake+ninja+gcc的开发环境1. 开发工具下载下载STM32CubeMX:https://www.st.com.cn/zh/development-tools/stm32…

Kubernetes-POD生成 java dump文件

目录背景配置钩子函数验证 背景 在今天的线上业务中,某服务频繁重启。经过排查日志和事件信息,确认是由于 OOM(Out of Memory)导致服务重启。为了方便研发团队定位 OOM 的具体原因,我们决定在 OOM 发生时自动生成内存快照(heap dump),供后续分析使用。 关于 OOM 的详细…

php8:开启opcache和JIT(php 8.3.9)

一,配置文件中的项: opcache.enable=1 opcache.enable_cli=0 opcache.memory_consumption=128 opcache.max_accelerated_files=10000 opcache.revalidate_freq=240 opcache.save_comments=0 opcache.error_log=/data/logs/phplogs/opache_error.log opcache.enable=1 # …