环境搭建 August 07, 2020

Ubuntu16.04安装CDH集群

Words count 14k Reading time 12 mins. Read count 0

版本说明:

ubuntu: 16.04

jdk: 1.8.0_251

mariadb: 10.0.38

cloudera manager: 6.0.0

cdh: 5.11.0-1.cdh5.11.0.p0.34

相关连接:

安装文档:https://docs.cloudera.com/documentation/enterprise/6/6.0/topics/install_cm_cdh.html#cmig_topic_6_6

JDK下载地址:https://archive.cloudera.com/cm6/6.0.0/ubuntu1604/apt/pool/contrib/e/enterprise/

ubuntu源文件下载地址:https://docs.cloudera.com/documentation/enterprise/6/release-notes/topics/rg_cm_6_version_download.html

ubuntu源安装文件下载地址:https://archive.cloudera.com/cm6/6.0.0/ubuntu1604/apt/pool/contrib/e/enterprise/

Parcels下载地址:http://archive.cloudera.com/cdh5/parcels/5.11.0.34/

1 环境准备

1.1 准备3台主机

主机列表如下:

主机名称 IP 配置
cdh-manager-1 192.168.66.113 4核8G
cdh-master-1 192.168.66.114 4核8G
cdh-worker-1 192.168.66.115 4核8G

1.2 修改主机名并添加hosts

按照主机列表,分别修改主机名:

vi /etc/hostname

将三台主机添加到hosts中

vi /etc/hosts

添加内容如下:

192.168.66.113 cdh-manager-1
192.168.66.114 cdh-master-1
192.168.66.115 cdh-worker-1

1.3 关闭防火墙

ufw disable

2 安装Cloudera Manager

2.1 安装JDK

1.2.1 官网下载jdk 1.8

https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html

下载jdk-8u251-linux-x64.tar.gz并复制到 /opt目录下

1.2.2 解压

tar -zxvf jdk-8u251-linux-x64.tar.gz

1.2.3 将安装目录软连接到/usr/java目录下

为了让cloudera找到JAVA HOME,这里可以显示的将java的安装目录软连接到/usr/java下。

创建/usr/java目录

mkdir /usr/java

创建软连接

ln -s /opt/jdk1.8.0_251/ /usr/java/jdk1.8.0_251

1.2.4 配置环境变量

vim /etc/profile

添加如下内容

#set java enviroenment
export JAVA_HOME=/usr/java/jdk1.8.0_251
export CLASSPATH=.:$JAVA_HOME/lib/rt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH

使环境变量生效

. /etc/profile

验证jdk

root@cdh-manager-1:~# java -version
java version "1.8.0_251"
Java(TM) SE Runtime Environment (build 1.8.0_251-b08)
Java HotSpot(TM) 64-Bit Server VM (build 25.251-b08, mixed mode)

1.2.4 将jdk目录发送到两台Agent主机

scp -r /opt/jdk1.8.0_251/ root@cdh-master-1:/opt/
scp -r /opt/jdk1.8.0_251/ root@cdh-worker-1:/opt/

创建软连接和配置环境变量就不要统一发送了,每台机子单独配置,方法跟cdh-manager-1主机一样。

2.2 配置仓库

这里我们需要为cloudera manager配置ubuntu的软件仓库。

  1. 下载源配置文件到/etc/apt/sources.list.d/

    wget -P /etc/apt/sources.list.d/ https://archive.cloudera.com/cm6/6.0.0/ubuntu1604/apt/cloudera-manager.list
    
  2. 导入仓库的秘钥

    wget https://archive.cloudera.com/cm6/6.0.0/ubuntu1604/apt/archive.key
    sudo apt-key add archive.key
    
  3. 更新仓库

    sudo apt-get update
    

以上操作在每一台机器上都需要执行一遍。

2.3 安装Cloudera Manager Server

这里我们可以直接使用apt命令安装cloudera-manager-daemons、cloudera-manager-agent、cloudera-manager-server这三个软件,但是由于网络的原因cloudera-manager-daemons这个软件经常会下载失败,我们可以先在网络较好的机器上下载该包,然后复制到目标主机,使用dpkg安装。

2.3.1 使用dpkg安装cloudera-manager-daemons

  1. 离线cloudera-manager-daemons

    下载地址:https://archive.cloudera.com/cm6/6.0.0/ubuntu1604/apt/pool/contrib/e/enterprise/

    下载完成之后,上传至目标主机/var/cache/apt/archives/目录下。

  2. 安装cloudera-manager-daemons

    cd /var/cache/apt/archives/
    dpkg -i cloudera-manager-daemons_6.0.0_530873.ubuntu1604_all.deb
    

以上操作再每一台机器上都必须执行一遍。

复制安装包到其它两台主机上:

scp cloudera-manager-daemons_6.0.0_530873.ubuntu1604_all.deb root@192.168.66.114:/var/cache/apt/archives/
scp cloudera-manager-daemons_6.0.0_530873.ubuntu1604_all.deb root@192.168.66.115:/var/cache/apt/archives/

2.3.2 使用apt-get安装cloudera-manager-agent cloudera-manager-server

只需要在cdh-manager-1这台机器上执行如下命令:

sudo apt-get install cloudera-manager-agent cloudera-manager-server

2.4 安装Cloudera Manager Agents

在所有机器上执行如下命令,那幢cloudera-manager-agent:

sudo apt-get install cloudera-manager-agent

修改agent的配置文件:

vi /etc/cloudera-scm-agent/config.ini 
# 将server_host改为cdh-manager-1
server_host=cdh-manager-1

2.5 安装Mariadb

数据库只需要在cdh-manager-1这台机上安装。

  1. 使用apt-get安装

    sudo apt-get install mariadb-server
    
  2. 启动MySQL

    service mysql start
    
  3. 执行初始化SQL,使用root用户登录,密码不需要输入,直接回车进入

    mysql -uroot -p
    SET PASSWORD FOR root@'localhost'=password('root');
    # 授权
    GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'root' WITH GRANT OPTION;
    # 授予外网访问权限
    GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
    FLUSH PRIVILEGES;
    
  4. 安装jdbc驱动

    sudo apt-get install libmysql-java
    

2.6 配置Cloudera Manager数据库

2.6.1 创建scm数据

  1. 进入mysql

    mysql -uroot -proot
    
  2. 执行如下SQL

    # 创建scm数据库
    CREATE DATABASE scm DEFAULT CHARACTER SET utf8;
    # 授权
    GRANT ALL PRIVILEGES ON *.* TO 'scm'@'localhost' IDENTIFIED BY 'scm' WITH GRANT OPTION;
    # 授予外网访问权限
    GRANT ALL PRIVILEGES ON *.* TO 'scm'@'%' IDENTIFIED BY 'scm' WITH GRANT OPTION;
    update mysql.user set authentication_string=PASSWORD('scm'), plugin='mysql_native_password' where user='scm';
    FLUSH PRIVILEGES;
    
  3. 执行初始化脚本

    sudo /opt/cloudera/cm/schema/scm_prepare_database.sh mysql scm scm scm scm
    

    image-20200713115449859

2.7 启动Server和Agents

在cdh-manager-1机器上启动cloudera-scm-server

sudo service cloudera-scm-server start

查看server状态

sudo service cloudera-scm-server status

在所有机器上启动sudo service cloudera-scm-agent

sudo service cloudera-scm-agent start

查看agent状态

sudo service cloudera-scm-agent status

等待server启动之后我们就可以访问192.168.66.113:7180。

3 安装CDH集群

3.1 上传离线Parcels

提前下载好Parcels。下载地址:http://archive.cloudera.com/cdh5/parcels/5.11.0.34/,这里需要下载xenial对应的文件,包含如下内容:

http://archive.cloudera.com/cdh5/parcels/5.11.0.34/CDH-5.11.0-1.cdh5.11.0.p0.34-xenial.parcel
http://archive.cloudera.com/cdh5/parcels/5.11.0.34/CDH-5.11.0-1.cdh5.11.0.p0.34-xenial.parcel.sha1
http://archive.cloudera.com/cdh5/parcels/5.11.0.34/manifest.json

将下载好的三个文件上传至cdh-manager-1主机的/opt/cloudera/parcel-repo下。

注意:这里需要将CDH-5.11.0-1.cdh5.11.0.p0.34-xenial.parcel.sha1重命名为CDH-5.11.0-1.cdh5.11.0.p0.34-xenial.parcel.sha,否则cloudera manager不会识别。

重启cloudar manager

 sudo service cloudera-scm-server restart

3.2 激活并选择版本

访问192.168.66.113:7180,用户名密码:admin/admin。

  1. 如下图进入欢迎页面,点解右下角【继续】按钮。

    image-20200713144205604

  2. 同意最终用户许可条款和条件,然后点击右下角【继续】按钮。

    image-20200713145443986

  3. 选择【Cloudera Express】版本,然后点击【继续】按钮。

    image-20200713145504894

3.3 集群安装

  1. 如下为集群安装的欢迎页面,直接点击【继续】按钮。

    image-20200713145549367

  2. 指定需要安装集群的主机,这里直接点击【当前管理的主机】连接,然后选择所有主机即可,然后点击【继续】按钮。

    image-20200713145627057

  3. 这里我们需要我们选择我们之前手动上传的存储库,如图所示,CDH版本选择【CDH-5.11.0.1-cdh5.11.0.p0.34】,然后点击【继续】按钮。

    image-20200713151523443

  4. 等待服务安装完成选定的Parcel,然后点击【继续】按钮。

    image-20200713152647201

  5. 等待服务检查主机完成,然后点击【继续】按钮。

    image-20200713153129102

  6. 选择自定义服务

    image-20200713153219845

    如下所示,只需要选择HBase、HDFS、YARN、ZooKeeper4个服务即可,然后点击【继续】按钮。

    image-20200713153253325

  7. 在自定义角色分配页面,我们可以决定角色安装到指定主机上,这里我们需要调整DataNode安装到所有机器,调整HBase Master角色安装到cdh-master-1主机上,NameNode安装到cdh-master-1上,等等,具体调整可以参考如下截图。

    image-20200713153515979

  8. 实际生产环境中,需要将对应的数据目录设置为/data/下,默认可以不修改,然后点击【继续】按钮。

    image-20200713153635812

  9. 等待部署命令执行完成,然后点击【继续】按钮。

    image-20200713154052843

  10. 点击【完成】按钮即可。

    image-20200713154122227

  11. 集群完成后,我们点击集群后面的三角按钮,在下拉菜单中选择【部署客户端配置】按钮。

    image-20200713154228175

  12. 集群部署完成。

    image-20200713154147845

0%