CDH6安装文档(文末有cdh6.2.0网盘链接下载地址)

CDH6安装文档(文末有cdh6.2.0网盘链接下载地址)

[大数据](javascript:void(0)😉 2021-09-14 17:07

集群信息

集群信息
IPhostname节点类型
192.168.159.9lbmaster管理节点
192.168.160.221lbnode1数据节点
192.168.160.222lbnode2数据节点
192.168.160.198lbnode3数据节点

基础环境配置(所有主机都需要配置)

配置hosts文件

配置hosts文件,实现主机名与ip的映射

1、vi /etc/hosts

2、数据ip与主机的映射关系,如下图

图片

1、因为所有主机的hosts文件都一致,为了减少重复工作使用scp命令拷贝到所有主机,

scp /etc/hosts root@192.168.160.221:/etc/

scp /etc/hosts root@192.168.160.222:/etc/

scp /etc/hosts root@192.168.160.198:/etc/

图片

设置hostname

1、分别进入集群中的每个主机,设置hostname,需要注意的是hostname最好不好设置为大写,因为后续如果要开启kerberos的时候会报错。

2、在lbmaster主机上输入:hostnamectl set-hostname lbmaster

3、在lbnode1主机上输入:hostnamectl set-hostname lbnode1

4、在lbnode2主机上输入:hostnamectl set-hostname lbnode2

5、在lbnode3主机上输入:hostnamectl set-hostname lbnode3

6、验证 在每台主机上输入 hostname 看输出的结果是否与主机相对应

** **

关闭防火墙与selinux文件

1、每台主机都需要关闭防火墙,并且selinux也需要置为disabled

2、在所有主机分别执行以下三条命令

systemctl stop firewalld

systemctl disable firewalld.service

iptables -F

3、关闭selinux 输入vi /etc/selinux/config,将SELINUX=disabled

图片

4、其他主机一样,为了减少重复工作 使用scp拷贝到其他主机

scp /etc/selinux/config root@192.168.160.221:/etc/selinux

scp /etc/selinux/config root@192.168.160.222:/etc/selinux

scp /etc/selinux/config root@192.168.160.198:/etc/selinux

** **

配置管理节点到数据节点的SSH免密

1、在管理节点(lbmaster) 节点下 ~/.ssh文件夹下执行ssh-keygen -t rsa (如果没有.ssh文件夹,就先ssh连接下别的机器),执行过程中按三次回车即可

图片

2、执行完成后会生成以下文件

图片

3、将公钥发送给其他节点,有提示输入的yes的就输入yes,输入密码就输入主机密码即可

ssh-copy-id lbmaster

ssh-copy-id lbnode1

ssh-copy-id lbnode2

ssh-copy-id lbnode3

图片

4、测试,ssh到任意一台主机不用输入密码即可进入,这样就算是配置成功

图片

** **

配置NTP服务实现时钟同步

1、所有节点都需要安装ntp,如果没有ntp先安装ntp,一般集群无法连接外网,可以先完成配置本地源的操作

yum install -y ntp

2、在lbmaster修改ntp.conf 输入vi /etc/ntp.conf ,注释其他时间服务器,添加为本机

server 127.127.1.0

fudge 127.127.1.0 stratum8

图片

2、在其他节点(lbnode1\lbnode2\lbnode3)修改ntp.conf文件 输入vi /etc/ntp.conf 在26行添加server lbmaster iburst,注释其他时间服务器

图片

3、在所有节点启动ntp服务

systemctl start ntpd

systemctl enable ntpd

\4. 验证是否成功设置开机自启动

systemctl list-unit-files |grep enabled | grep ntpd

** **

安装JDK

JDK最好安装1.8的,因为CDH6.0以后JDK版本最低为1.8

1、所有主机卸载系统自带的openjdk(如果没有就可跳过)

2、使用 rpm -qa | grep jdk 检查系统是否有openjdk

图片

3、卸载自带openjdk 在每个主机输入 rpm -qa|grep openjdk |xargs -I {} rpm -e --nodeps {}

图片

4、将准备好的jdk上传到各个主机中

5、在所有主机中输入 rpm -ivh jdk-8u111-linux-x64.rpm 进行安装

图片

6、验证是否安装成功 输入 rpm -qa | grep jdk

图片

** **

删除虚拟网卡

1、所有主机需要安装所需的依赖

yum install -y qumu-kvm* libvirt* virt-install* bridge-utils

2、所有主机运行 virsh net-destroy default

图片

3、所有主机运行 virsh net-undefine default

图片

** **

静止透明大页

大页面(Huge Page)是内存分页管理的一种实现方式。计算机内存是通过表映射(页表)的方式进行内存寻址,目前系统内存以4KB为一个页,作为内存寻址的最小单元。随着内存不断增大,页表的大小将会不断增大。一台256G内存的机器,如果使用4KB小页,仅页表大小就要4G左右。页表是必须装在内存的,而且是在CPU内存,太大就会发生大量miss,内存寻址性能就会下降。

Huge Page就是为了解决这个问题,它使用2MB的大页代替传统小页来管理内存,这样页表大小就可以控制的很小,进而全部装在CPU内存,防止出现miss。它有两种实现方式,一是静态大页面(Static Huge Pages,SHP),二是透明大页面(Transparent Huge Pages,THP)。从它们的名字就可以看出,SHP是静态的,而THP是动态的。由于THP是在运行期做分配和管理,因此会有一定程度的延迟,对于内存密集型的应用十分不利,必须关闭它。

1、所有主机输入以下命令

echo never > /sys/kernel/mm/transparent_hugepage/enabled

echo never > /sys/kernel/mm/transparent_hugepage/defrag

2、所有主机的/etc/rc.local中也需要加入这两条命令

图片

** **

减少集群使用交换内存

swappiness设置值的区间在0~100之间,swap即交换空间,作用类似于Windows中的虚拟内存,也就是当物理内存不足时,将硬盘上的swap分区当做内存来使用。但是,由于磁盘的读写速率与内存相比差太多,一旦发生大量交换,系统延迟就会增加,甚至会造成服务长期不可用,这对于大数据集群而言是致命的。
vm.swappiness参数用于控制内核对交换空间的使用积极性,默认是60。值越高,就代表内核越多地使用交换空间。
对于内存较大的CDH集群,我们一般将这个值设为0或1。0表示只有当可用物理内存小于最小阈值vm.min_free_kbytes时才使用交换空间,1则表示最低限度地使用交换空间。

所有主机运行以下三条命令

sysctl -w vm.swappiness=0

echo ‘vm.swappiness=0’ >> /etc/sysctl.conf

sysctl -p

** **

配置本地源安装HTTP与REPO

配置Yum源用于安装HTTP等软件,最终将本地源配置为网络源,让其他主机也可以使用该源下载软件,还有一个作用就是安装agent的时候需要下载一些依赖包。

安装HTTP服务与REPO

1、安装repo

yum install -y createrepo

2、安装httpd服务

yum install -y httpd

3、开启httpd服务并设为开机自启动

systemctl start httpd

systemctl enable httpd

准备系统镜像

1、创建文件夹用于存放系统镜像

mkdir -p /var/www/html/yum

2、上传镜像到/var/www/html/yum这个目录下面

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nzlOodtw-1670335648902)(data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVQImWNgYGBgAAAABQABh6FO1AAAAABJRU5ErkJggg==)]

** **

挂载镜像

1、将/etc/yum.repos.d文件夹下用不到的配置文件全部进行重命名备份

2、新建redhat.repo文件

3、修改文件内容如下

图片

4、停用redhat订阅插件(非必须)

yum.repos.d]# vim /etc/yum/pluginconf.d/subscription-manager.conf

图片

5、挂载镜像

mount /var/www/html/yum/rhel-server-7.7-x86_64-dvd.iso /var/www/html/yum

6、验证是否挂在成功,执行yum list 如果出现大量的软件列表即挂载成功

图片

** **

将本地Yum源配置为网络Yum源

1、编辑 vi /etc/yum.repos.d/ redhat.repo 内容如下

图片

2、验证 在浏览器中输入 http://192.168.159.9/yum/ 如果出现如下即为成功

图片

3、将该yum源文件scp到其他主机

scp /etc/yum.repos.d/redhat.repo root@192.168.160.221:/etc/yum.repos.d/

scp /etc/yum.repos.d/redhat.repo root@192.168.160.222:/etc/yum.repos.d/

scp /etc/yum.repos.d/redhat.repo root@192.168.160.198:/etc/yum.repos.d/

** **

外部数据库安装(在管理节点安装)

安装数据库主要存储元数据信息,比如CM监控,hive元数据等

** **

准备Mysql rpm包

1、将Mysql所需的rpm包上传到lbmaster节点上

图片

** **

卸载系统自带的数据库

1、卸载系统自带的mariadb数据库 输入rpm -qa|grep mariadb | xargs -I {} rpm -e --nodeps {}

图片

安装Mysql数据库

1、按照以下步骤安装mysql数据库

rpm -ivh mysql-community-common-5.7.27-1.el7.x86_64.rpm

rpm -ivh mysql-community-libs-5.7.27-1.el7.x86_64.rpm

rpm -ivh mysql-community-devel-5.7.27-1.el7.x86_64.rpm

rpm -ivh mysql-community-client-5.7.27-1.el7.x86_64.rpm

rpm -ivh mysql-community-server-5.7.27-1.el7.x86_64.rpm

rpm -ivh mysql-community-libs-compat-5.7.26-1.el7.x86_64.rpm

2、开启数据库服务

systemctl start mysqld

systemctl enable mysqld

图片

3、获取mysql初始化密码

grep ‘temporary password’ /var/log/mysqld.log

图片

4、修改Mysql密码

mysql -uroot -p 输入上面获取到的密码

alter user root@localhost identified by ‘2wsx#EDC’;

flush privileges;

** **

创建所需的数据库并授权

1、输入以下命令 创建集群所需的数据库(一起复制)

mysql -uroot -p2wsx#EDC -e ‘create database metastore default character set utf8;’

mysql -u root --password=‘2wsx#EDC’ -e “create user ‘hive’@‘%’ identified by ‘2wsx#EDC’”;

mysql -u root --password=‘2wsx#EDC’ -e ‘create database hive default character set utf8’;

mysql -u root --password=‘2wsx#EDC’ -e “grant all privileges on hive.* to ‘hive’@‘%’”;

mysql -u root --password=‘2wsx#EDC’ -e “grant all privileges on metastore.* to ‘hive’@‘%’”;

mysql -u root --password=‘2wsx#EDC’ -e “create user ‘amon’@‘%’ identified by ‘2wsx#EDC’”;

mysql -u root --password=‘2wsx#EDC’ -e ‘create database amon default character set utf8’;

mysql -u root --password=‘2wsx#EDC’ -e “grant all privileges on amon.* to ‘amon’@‘%’”;

mysql -u root --password=‘2wsx#EDC’ -e “create user ‘rman’@‘%’ identified by ‘2wsx#EDC’”;

mysql -u root --password=‘2wsx#EDC’ -e ‘create database rman default character set utf8’;

mysql -u root --password=‘2wsx#EDC’ -e “grant all privileges on rman.* to ‘rman’@‘%’”;

mysql -u root --password=‘2wsx#EDC’ -e “create user ‘sentry’@‘%’ identified by ‘2wsx#EDC’”;

mysql -u root --password=‘2wsx#EDC’ -e ‘create database sentry default character set utf8’;

mysql -u root --password=‘2wsx#EDC’ -e “grant all privileges on sentry.* to ‘sentry’@‘%’”;

mysql -u root --password=‘2wsx#EDC’ -e “create user ‘nav’@‘%’ identified by ‘2wsx#EDC’”;

mysql -u root --password=‘2wsx#EDC’ -e ‘create database nav default character set utf8’;

mysql -u root --password=‘2wsx#EDC’ -e “grant all privileges on nav.* to ‘nav’@‘%’”;

mysql -u root --password=‘2wsx#EDC’ -e “create user ‘navms’@‘%’ identified by ‘2wsx#EDC’”;

mysql -u root --password=‘2wsx#EDC’ -e ‘create database navms default character set utf8’;

mysql -u root --password=‘2wsx#EDC’ -e “grant all privileges on navms.* to ‘navms’@‘%’”;

mysql -u root --password=‘2wsx#EDC’ -e “create user ‘cm’@‘%’ identified by ‘2wsx#EDC’”;

mysql -u root --password=‘2wsx#EDC’ -e ‘create database cm default character set utf8’;

mysql -u root --password=‘2wsx#EDC’ -e “grant all privileges on cm.* to ‘cm’@‘%’”;

mysql -u root --password=‘2wsx#EDC’ -e “create user ‘oos’@‘%’ identified by ‘2wsx#EDC’”;

mysql -u root --password=‘2wsx#EDC’ -e ‘create database oos default character set utf8’;

mysql -u root --password=‘2wsx#EDC’ -e “grant all privileges on oos.* to ‘oos’@‘%’”;

mysql -u root --password=‘2wsx#EDC’ -e “create user ‘hue’@‘%’ identified by ‘2wsx#EDC’”;

mysql -u root --password=‘2wsx#EDC’ -e ‘create database hue default character set utf8’;

mysql -u root --password=‘2wsx#EDC’ -e “grant all privileges on hue.* to ‘hue’@‘%’”;

** **

验证

1、进入数据库验证是否创建成功

图片

** **

CDH软件下载及配置

** **

** **

所需文件

1、CM需要下载以下文件

图片

2、CDH需要以下文件

图片

上传文件

1、创建文件夹

mkdir /var/www/html/cdh6/

mkdir /var/www/html/cm6/

2、将CM文件和CDH文件上传到各自文件夹中

** **

配置CM本地Yum源

1、进入 /var/www/html/cm6/ 文件夹

2、运行以下命令,用于执行本地yum操作

createrepo .

图片

3、新建cm repo源并修改为以下内容(下图中的cm5.14有问题,应该是cm6,名称和上面文件夹名称一样)

touch /etc/yum.repos.d/cm.repo

图片

4、将该cm源scp到其他节点

scp cm.repo root@lbnode1:/etc/yum.repos.d/

scp cm.repo root@lbnode2:/etc/yum.repos.d/

scp cm.repo root@lbnode3:/etc/yum.repos.d/

** **

安装Cloudera Manager

1、在管理节点上安装Cloudera Manager

yum install cloudera-manager-daemons cloudera-manager-server

2、复制mysql-connect到/usr/share/java/,如果没有该文件夹可以自行创建

cp /opt/software/mysql/mysql-connector-java.jar /usr/share/java/

3、初始化数据库

CDH6: /opt/cloudera/cm/schema/scm_prepare_database.sh mysql cm cm 2wsx#EDC

CDH5: /usr/share/cmf/schema/scm_prepare_database.sh mysql cm cm 2wsx#EDC

Mysql不在本机:

/opt/cloudera/cm/schema/scm_prepare_database.sh mysql cm -h192.168.159.9 cm 2wsx#EDC

图片

4、启动CM

systemctl start cloudera-scm-server.service

图片

1、进入CM管理界面

http://192.168.159.9:7180/cmf/login

2、输入账号密码 默认 admin/admin

图片

3、选择继续即可

图片

4、同意协议,继续

图片

5、选择企业版试用60天,继续

图片

6、继续

图片

7、继续

图片

8、输入192.168.159.9~12,点击搜索

图片

9、成功搜索后会出现可安装的主机 点击继续

图片

10、配置CM库,输入http://192.168.159.9/cm6/

图片

11、配置parcel自定义库,点击更多配置,在第一行输入http://192.168.159.9/cdh6/

图片

图片

12、已经安装过JDK所以取消,点击下一步

图片

13、输入root密码,点击继续

图片

14、等待安装

图片

15、agent安装完成

图片

16、开始安装大数据组件

图片

17、安装成功 点继续

图片

18、检查主机正确性 点继续

图片

19、选择要添加的服务

图片

图片

20、角色分配,管理节点安装NameNode等管理角色,数据节点安装DataNode等角色,按照下图分配,然后点继续

图片

图片

图片

21、设置各组件的数据库,点击测试

图片

22、审核 默认即可

图片

23、集群启动成功

图片

24、至此集群安装完成

图片

CDH6.2.0版本网盘链接

链接:https://pan.baidu.com/s/1ncwnXAlqlZ82h3s1cD24qA?pwd=yyds
提取码:yyds

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值