老刘博客laoliublog.cn
高性价比VPS推荐站!
funcdn
ucloud

UCloud优刻得一站式智能大数据平台USDP免费版操作部署指南

高防CDN
腾讯云

近日UCloud全新发布了针对私有化部署场景下的免费版USDP,免费版USDP支持HDFS、Kudu、ES 全生态,助力企业提升大数据开发、运维效率,快速构建大数据业务的分析处理能力。关于免费版USDP的部署操作如下文演示。

环境准备

用户进行如下简单步骤,即可利用 USDP 实现大数据业务、数据仓库等相关业务建设,简单有效。USDP产品页:智能大数据平台 – UCloud中立云计算服务商

UCloud优刻得一站式智能大数据平台USDP免费版操作部署指南

1.1 最低配置

在大数据生产环境中,几乎不可能使用伪分布式的单机部署模式,因此 USDP 智能大数据平台所支持的最小部署模式为 3 个节点,每个节点的配置情况,需要根据用户业务的使用情况而定,例如:每个节点上部署 10 个服务、组件与部署 20 个服务、组件所消耗的 CPU、内存资源必然不同。按照最低运行标准,USDP 给出如下最低参考配置:

节点序号 CPU 内存 系统盘 数据盘 系统
节点1 4 核+ 8 GB+ 80 GB+ 500 GB+ CentOS 7.2 – 7.6
节点2 4 核+ 8 GB+ 80 GB+ 500 GB+ CentOS 7.2 – 7.6
节点3 4 核+ 8 GB+ 80 GB+ 500 GB+ CentOS 7.2 – 7.6

注意:上述节点可以是物理节点、也可以是虚拟节点。

1.2 下载资源与系统环境准备

节点配置完成后,用户即可开始下载对应的内容,进行部署前的准备工作了。

1、资源下载地址如下:

•US3:https://s3-cn-bj.ufileos.com/jungle111111/usdp-1.0.0.0/install/usdp-free-1.0.0.tar.gz

•百度网盘

链接:https://pan.baidu.com/s/1mlic-9ZbK4are52zh1mKfw 提取码:spp9

2、资源说明

USDP 的下载内容主要分为如下 3 种类型:

类型序号 安装包名称 安装包说明 放置目录
1 usdp-01-master-privatization-free-1.0.0.0.tar.gz USDP 主程序与大数据服务资源包 /opt/usdp-srv/
2 httpd-rpms.tar.gz 、mirror.tgz USDP 离线 yum 基础源资源包 /data
3 epel.tgz USDP 离线 yum 扩展源资源包 /data

其中压缩包 usdp-01-master-privatization-free-1.0.0.0.tar.gz 解压后,得到如下目录:

序号 目录 目录说明
1 agent USDP 分布式客户端程序
2 bin USDP 程序启停脚本
3 config USDP 程序配置文件
4 jmx_exporter 进程监控指标采集程序
5 recommend 大数据服务部署预置模板
6 repair 部署前环境初始化脚本与资源包
7 repository 大数据服务资源包
8 scripts USDP 相关程序脚本
9 server USDP 分布式管理端程序
10 sql USDP 元数据信息初始化 SQL
11 templated 大数据服务配置模板
12 verify 证书存放路径
13 versions USDP 大数据资源包版本信息

部署说明

在开始部署之前,请选择在准备部署 USDP 服务端的节点上通过 root 命令执行如下操作。

2.1 环境初始化

本篇主要介绍如何通过 USDP 自动初始化脚本完成集群环境配置,如果用户想要自己完成环境初始化工作,可以参考附录中的内容,手动安装依赖。

2.1.1 首次全量修复

1. 环境初始化模块目录说明

环境初始化模块的子目录如下:

repair 初始化模块子目录 说明
bin 单个修复模块脚本所在目录,无需手动管理;
config 一键修复脚本所需配置文件目录,需要用户手动修改;
packages 修复过程中安装 USDP 所需依赖压缩包存放目录;
sbin 一键修复主脚本所在目录,无需手动管理;

2. 修改配置文件

repair 修复模块子目录 config 下存放修复脚本所需配置文件,如下所示。

环境初始化模块配置文件 说明
repair.properties 主要配置私有化 yum 源安装节点信息、namp 安装节点信息、mysql 数据库安装节点信息、修复机器总数,以及修复模块日志存放位置。用户根据需要自行修改相关配置项;
repair-host-info.properties 节点全量修复,需要配置此文件,具体配置所有节点内网 Ip、密码、端口号以及主机名;
repair-host-info-add.properties 集群新增节点时,需要配置此文件,具体配置新增节点内网 Ip、密码、端口号以及主机名;

首次全量初始化环境所需修改配置文件如下所示。

•repair.properties

示例如下:
# Set the YUM source host IP
yum.repo.host.ip=127.0.0.1(need to change)
#The Host information for installing the NMAP service
namp.server.ip=127.0.0.1(need to change)
namp.server.port=22
namp.server.password=your-node-root-password(need to change)
# The Host information for installing the NTP service(Master)
ntp.master.ip=127.0.0.1(need to change)
# Install MySQL machine node information
mysql.ip=127.0.0.1(need to change)
mysql.host.ssh.port=22
mysql.host.ssh.password=your-mysql-password(need to change)
# Set the MYSQL database login password
mysql.password=ucloud.cn1qaz!QAZ(need to change)
# The total number of machines needed to be repaired.
repair.host.num=n(The total number of machines needed to be repaired )
# The total number of added machines needed to be repaired.
repair.add.host.num=m(The total number of added machines needed to be repaired)
# Common Settings.
repair.log.dir=./log

上述代码解释如下:

            具体配置项             说明
            yum.repo.host.ip             填写未来即将部署 私有化yum 源 的节点的内网 IP(即执行 repair 脚本的节点 ip );
            namp.server.ip             填写未来即将部署 USDP 管理端 的节点的内网 IP;
            namp.server.port             填写未来即将部署 USDP 管理端 的节点 SSH 端口号,默认22;
            namp.server.password             填写未来即将部署 USDP 管理端 的节点的密码;
            ntp.master.ip             选择某个节点作为 NTP 时间同步master 服务器,填写内网 IP;
            mysql.ip             选择某个节点作为 MySQL 服务器,填写内网 IP;
            mysql.host.ssh.port             设置 MySQL 所在节点的 SSH 端口号,默认 22;
            mysql.host.ssh.password             设置 MySQL 的 所在节点的密码;
            mysql.password             设置数据库登录密码;
            repair.host.num             设置修复机器数量;
            repair.add.host.num             新增节点时需要配置此项,全量修复时无需修改;
            repair.log.dir             设置环境初始化日志存放位置;

•repair-host-info.properties

示例如下:
# 1.Please provide the information of hosts needed to be repaired in the format specified below
# 2.usdp.ip.i(eg:i=1,2,3.....):
# 3.usdp.password.i:
# 4.usdp.ssh.port.i:
# 5.usdp.ssh.port.hostname.i:
usdp.ip.1=127.0.0.1(need to change)
usdp.password.1=your-node-root-password(need to change)
usdp.ssh.port.1=22

usdp.ip.2=127.0.0.1(need to change)
usdp.password.2=your-node-root-password(need to change)
usdp.ssh.port.2=22
usdp.ssh.port.hostname.2=your-node-hostname(need to change)
usdp.ip.3=127.0.0.1(need to change)
usdp.password.3=your-node-root-password(need to change)
usdp.ssh.port.3=22
usdp.ssh.port.hostname.3=your-node-hostname(need to change)

上述代码解释如下:

具体配置项 说明
usdp.ip.i USDP 集群安装节点内网 Ip;(i 表示1-n 的取值,n 为集群机器总数);
usdp.password.i USDP 集群安装节点密码;
usdp.ssh.port.i USDP 集群安装节点端口号,默认 22;
usdp.ssh.port.hostname.i USDP 集群安装节点主机名;

3. 执行初始化脚本

完成上述步骤后,执行如下命令即可开始一键初始化任务。

cd /opt/usdp-srv/usdp/repair/sbin
bash repair.sh initAll
source /etc/profile

初始化过程为完全离线的方式,等待一段时间后,即可将所有对应节点的环境准备完毕。

4. 为 USDP 配置 MySQL 数据库

修改/opt/usdp-srv/usdp/config/application-server.yml文件,找到 datasource 配置片段,修改前如下:

datasource:
    type: com.zaxxer.hikari.HikariDataSource
    #    driver-class-name: org.gjt.mm.mysql.Driver
    driver-class-name: com.p6spy.engine.spy.P6SpyDriver
    url: jdbc:p6spy:mysql://udp01:3306/db_udp?useUnicode=true&characterEncoding=utf-8&useSSL=false
    username: root
    password: 1qaz!QAZ

根据之前设置的 mysql 的安装所在节点主机名以及数据库登录密码,修改url 中的对应udp01及 password 的值,修改后如下:

datasource:
    type: com.zaxxer.hikari.HikariDataSource
    #    driver-class-name: org.gjt.mm.mysql.Driver
    driver-class-name: com.p6spy.engine.spy.P6SpyDriver
    url: jdbc:p6spy:mysql://pusdp_master1:3306/db_udp?useUnicode=true&characterEncoding=utf-8&useSSL=false
    username: root
    password: ucloud.cn

2.1.2 集群新增节点初始化步骤

当集群部署完毕后,如需要新增节点,同样需要准备好部署环境,对于新增节点环境初始化, USDP 也提供一键式修复,需要做如下步骤:

•配置 repair-host-info-add.properties 文件

与4.1节中的全量修复类似, 修改 repair-host-info-add.properties 文件,具体示例如下:

# 1.Please provide the information of added hosts needed to be repaired in the format specified below
# 2.usdp.ip.i(eg:i=1,2,3.....):
# 3.usdp.password.i:
# 4.usdp.ssh.port.i:
# 5.usdp.ssh.port.hostname.i:
usdp.ip.1=127.0.0.1(need to change)
usdp.password.1=your-node-root-password(need to change)
usdp.ssh.port.1=22
usdp.ssh.port.hostname.1=your-node-hostname(need to change)

usdp.ip.2=127.0.0.1(need to change)
usdp.password.2=your-node-root-password(need to change)
usdp.ssh.port.2=22
usdp.ssh.port.hostname.2=your-node-hostname(need to change)


usdp.ip.3=127.0.0.1(need to change)
usdp.password.3=your-node-root-password(need to change)
usdp.ssh.port.3=22
usdp.ssh.port.hostname.3=your-node-hostname(need to change)

•执行新增节点初始化脚本

修改完上述配置文件,即可进入 sbin 目录执行如下修复命令

 cd /opt/usdp-srv/usdp/repair/sbin
  bash repair.sh  initSingle

2.1.3 新增集群前的修复步骤

当集群部署完毕后,如需要新增集群,同样需要准备好部署环境,对于新增集群环境初始化, USDP 也提供一键式修复,需要做如下步骤:

•重新配置repair-host-info.properties文件

其中 ,USDP 需要把 udp-server 所在节点信息添加到新增集群节点一起,具体实列及解释如下

# 1.Please provide the information of hosts needed to be repaired in the format specified below
# 2.usdp.ip.i(eg:i=1,2,3.....):
# 3.usdp.password.i:
# 4.usdp.ssh.port.i:
# 5.usdp.ssh.port.hostname.i:
usdp.ip.1=127.0.0.1(need to change)
usdp.password.1=your-node-root-password(need to change)
usdp.ssh.port.1=22
usdp.ssh.port.hostname.1=your-node-hostname(need to change)

usdp.ip.2=127.0.0.1(need to change)
usdp.password.2=your-node-root-password(need to change)
usdp.ssh.port.2=22
usdp.ssh.port.hostname.2=your-node-hostname(need to change)


usdp.ip.3=127.0.0.1(need to change)
usdp.password.3=your-node-root-password(need to change)
usdp.ssh.port.3=22
usdp.ssh.port.hostname.3=your-node-hostname(need to change)

上述代码解释如下:

udp-server 所在机器配置项 说明
usdp.ip.1 udp-server 所在机器内网 Ip ;
usdp.password.1 udp-server 所在机器 登录密码;
usdp.ssh.port.1 udp-server 所在机器端口号,默认为 22;
usdp.ssh.port.hostname.1 udp-server 集群安装节点主机名;

•重新配置 repair.properties 文件

如果需要重新指定新集群安装数据库,仅需要修改以下配置项,其他可保持不变

# Install MySQL machine node information
mysql.ip=127.0.0.1(need to change)
mysql.host.ssh.port=22
mysql.host.ssh.password=your-mysql-password(need to change)

# Set the MYSQL database login password
mysql.password=ucloud.cn1qaz!QAZ(need to change)

上述配置项如下所示:

具体配置项 说明
mysql.ip 新增集群指定新的 MySQL 安装节点 IP;
mysql.host.ssh.port 新增集群指定新的 MySQL 安装节点 SSH 端口号,默认22;
mysql.host.ssh.password 新增集群指定新的 MySQL 安装节点的登录密码;
mysql.password 新增集群指定新的 MySQL 数据库密码;

•执行新增集群初始化脚本

修改完上述配置文件,即可进入 sbin 目录执行如下修复命令

cd /opt/usdp-srv/usdp/repair/sbin
bash repair.sh  initAddCluster

注意:
1.在repair-host-info-add.properties文件中,仅需配置每次新增的节点信息即可,若存在已修复过的节点信息时,在下次运行“repair.sh initSingle”指令前,请清除。2.jdk 安装在 /opt/module 下面,不允许随意删除,否则 java 环境失效。3.数据库密码中不得包含 “@” 。4.主机名设置不得包含 “_”,”-” 。

2.2 启动 USDP 服务端程序

节点修复完成后,进入 USDP 管理端所在节点后,并进入 USDP 安装根目录,通过 root 用户执行如下命令,以启动 USDP 管理端服务:

bin/start-udp-server.sh

2.3 访问 USDP Web 页面

通过浏览器访问如下地址即可打开 USDP Web 页面:http://:80

2.4 设置初始化密码

第一次访问 USDP Web 页面需要设置管理员密码,设置完毕后,即可进行下一步操作。

2.5 下载免费版证书

使用 USDP 免费版,用户需要登录如下地址,生成免费版证书:http://117.50.84.208:8002/licenseManagement/generate下载得到证书后,无需解压,直接在 USDP 页面中上传证书即可。完成后,即可使用开始使用 USDP 部署、管理、运维集群节点以及大数据相关服务。

附录

如果不采用上述自动环境初始化,则需要手动修复节点环境时,需要通过 root 用户在每个节点中进行如下操作。

•01、安装 yum 依赖

yum -y install ssh sshpass expect nmap ntp libxslt-devel psmisc PerlJSON MySQL-python xdg-utils redhat-lsb python2-rpm-macros python-rpm-macros python-devel cyrus-sasl python36-devel gcc-c++ Cython Six websocket-client ecdsa pytest-runner krb5-devel

•02、安装 MySQL 5.7

–安装 MySQL 主程序(略)

–配置 my.cnf 修改 /etc/my.cnf :

修改 /etc/my.cnf :

echo "max_connections=3600" >> /etc/my.cnf; \
echo "explicit_defaults_for_timestamp=true" >> /etc/my.cnf;

–进入 MySQL 控制台执行如下 SQL 语句

SELECT host,user,authentication_string,Grant_priv,Super_priv FROM mysql.user;
UPDATE mysql.user SET Grant_priv='Y', Super_priv='Y' WHERE User='root';
FLUSH PRIVILEGES;

UPDATE mysql.user SET Host = '%' where User = 'root';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '${num1}' WITH GRANT OPTION;
FLUSH PRIVILEGES;

CREATE DATABASE if not exists db_udp CHARACTER SET utf8 COLLATE utf8_general_ci;
use db_udp;
source ${UDP_SQL_PATH}/init_db_udp.sql;

•03、安装 JDK

–设置 Java 环境变量到 /etc/profile、~/.bash_profile 中

–配置 security.provider

JAVA_SECURITY_DIR="${JAVA_HOME}/jre/lib/security/java.security"

JAVA_SECURITY_ARGS_ARR[0]="security.provider.1=sun.security.provider.Sun"
JAVA_SECURITY_ARGS_ARR[1]="security.provider.2=sun.security.rsa.SunRsaSign"
JAVA_SECURITY_ARGS_ARR[2]="security.provider.3=com.sun.net.ssl.internal.ssl.Provider"
JAVA_SECURITY_ARGS_ARR[3]="security.provider.4=com.sun.crypto.provider.SunJCE"
JAVA_SECURITY_ARGS_ARR[4]="security.provider.5=sun.security.jgss.SunProvider"
JAVA_SECURITY_ARGS_ARR[5]="security.provider.6=com.sun.security.sasl.Provider"
JAVA_SECURITY_ARGS_ARR[6]="security.provider.7=org.jcp.xml.dsig.internal.dom.XMLDSigRI"
JAVA_SECURITY_ARGS_ARR[7]="security.provider.8=sun.security.smartcardio.SunPCSC"
JAVA_SECURITY_ARGS_ARR[8]="security.provider.9=org.bouncycastle.jce.provider.BouncyCastleProvider"

for element in ${JAVA_SECURITY_ARGS_ARR[@]}
do
  JAVA_SECURITY_ARGS="${JAVA_SECURITY_ARGS}${element}\n"
done

echo -e ${JAVA_SECURITY_ARGS} >> ${JAVA_SECURITY_DIR}

–配置 bcprov-jdk15on-1.56.jar

JAVA_BCPROV_JAR="${JDK_FOLDER_PATH}/bcprov-jdk15on-1.56.jar"
JAVA_BCPROV_DIR="${JAVA_HOME}/jre/lib/ext/"
cp -a ${JAVA_BCPROV_JAR} ${JAVA_BCPROV_DIR}

•04、修改 tmp.conf 

在 /usr/lib/tmpfiles.d/tmp.conf 中添加如下内容:

x /tmp/*.pid
      x /tmp/hsperfdata*/*
       X /tmp/hsperfdata*

•05、关闭 SELINUX
•06、配置 root 与 hadoop 用户的 SSH 免密登录
•07、关闭 Firewalls
•08、关闭 Swap
•09、修改 system.conf

修改 /etc/systemd/system.conf 文件:

sed -i '/DefaultLimitNOFILE=/d' /etc/systemd/system.conf
sed -i '/DefaultLimitNPROC=/d' /etc/systemd/system.conf

cat > /etc/systemd/system.conf
DefaultLimitNOFILE=1024000
DefaultLimitNPROC=1024000
EOF

•10、修改 limits.conf 文件

修改 /etc/security/limits.conf 文件:

sed -i '/*            soft    fsize/d' /etc/security/limits.conf
sed -i '/*            hard    fsize/d' /etc/security/limits.conf
sed -i '/*            soft    cpu/d' /etc/security/limits.conf
sed -i '/*            hard    cpu/d' /etc/security/limits.conf
sed -i '/*            soft    as/d' /etc/security/limits.conf
sed -i '/*            hard    as/d' /etc/security/limits.conf
sed -i '/*            soft    nofile/d' /etc/security/limits.conf
sed -i '/*            hard    nofile/d' /etc/security/limits.conf
sed -i '/*            soft    nproc/d' /etc/security/limits.conf
sed -i '/*            hard    nproc/d' /etc/security/limits.conf
cat > /etc/security/limits.conf
*            soft    fsize           unlimited
*            hard    fsize           unlimited
*            soft    cpu             unlimited
*            hard    cpu             unlimited
*            soft    as              unlimited
*            hard    as              unlimited
*            soft    nofile          1024000
*            hard    nofile          1024000
*            soft    nproc           1024000
*            hard    nproc           1024000
EOF

•11、修改 20-nproc.conf 文件

修改 /etc/security/limits.d/20-nproc.conf 文件内容如下:

cat  /etc/security/limits.d/20-nproc.conf
# Default limit for number of user's processes to prevent
# accidental fork bombs.
# See rhbz #432903 for reasoning.

*          soft    nproc     1024000
root       soft    nproc     unlimited
EOF

•12、配置主机名
•13、配置主机名与 IP 映射关系
•14、配置 ntp 时间同步
•15、关闭 THP

关于 USDP 更多操作功能,可参见UCloud官网文档:https://docs.ucloud.cn/usdpdc/1.0.x/

未经允许不得转载:老刘博客 » UCloud优刻得一站式智能大数据平台USDP免费版操作部署指南

评论 抢沙发

评论前必须登录!