CDH6.3安装

安装说明

  • Centos7.5
  • MariaDB10.1
  • CDH6.3.0
  • JDK1.8

步骤说明

说明:以下操作都是在root用户下进行的

下载CDH和CM

CDH软件安装软件在CDH6文件夹内

环境准备

初始化环境

yum install -y kde-l10n-Chinese telnet reinstall glibc-common vim wget ntp net-tools unzip \
&& yum clean all

网络名称修改

修改机器名为 cdh101

sudo hostnamectl set-hostname cdh101

# 不良 : 当从 Java 进程查看时该主机的主机名称和规范名称不一致。
sudo hostnamectl set-hostname  cdh101.gla.net.cn

修改机器配置

vim /etc/hosts

192.168.26.130  cdh101.gla.net.cn  cdh101

修改主机名设置为相应名称

vim /etc/sysconfig/network

HOSTNAME=cdh101

使用uname -a && hostname命令查看主机名

关闭防火墙、禁止防火墙开机自启

systemctl stop firewalld \
&& systemctl disable firewalld \
&& systemctl status firewalld 

需要在所有的节点上执行,因为涉及到的端口太多了,临时关闭防火墙是为了安装起来更方便,安装完毕后可以根据需要设置防火墙策略,保证集群安全

关闭 SELinux mode

setenforce 0 #临时关闭
vim  /etc/sysconfig/selinux #永久关闭
# SELINUX=enforcing 改成 SELINUX=permissive

禁用透明页

vim /etc/rc.local #永久生效
echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled

修改最大文件数

永久修改

vim /etc/security/limits.conf

* soft nofile 10240
* hard nofile 10240

安装jdk

查询已安装的 java

rpm -qa | grep java

卸载

yum remove java*

上传jdk-8u191-linux-x64.tar.gz 版本到~/soft 目录下

mkdir /root/soft && mkdir /usr/java  && cd /root/soft
tar -zxf jdk-8u191-linux-x64.tar.gz \
&& mv jdk1.8.0_191 jdk1.8 \
&& mv jdk1.8 /usr/java

vim ~/.bash_profile 文件

JAVA_HOME=/usr/java/jdk1.8
PATH=$PATH:$JAVA_HOME/bin

source ~/.bash_profile

查看是否能执行,显示以下内容配置正确

[root@cdh101 soft]# java -version
openjdk version "1.8.0_191"
OpenJDK Runtime Environment (build 1.8.0_191-b14)
OpenJDK 64-Bit Server VM (build 25.161-b14, mixed mode)

安装JDK配置环境变量(这步骤需要在每台服务器执行,否则在安装服务时会找不到JDK环境!)

安装数据库

全部删除MySQL/MariaDB(新机器直接跳过此步)

MySQL 已经不再包含在 CentOS 7 的源中,而改用了 MariaDB;

查看rpm已经安装的

[root@localhost logs]# rpm -qa | grep Maria*  
MariaDB-common-10.1.38-1.el7.centos.x86_64
MariaDB-server-10.1.38-1.el7.centos.x86_64
MariaDB-shared-10.1.38-1.el7.centos.x86_64
MariaDB-client-10.1.38-1.el7.centos.x86_64

删除所有


rpm -e MariaDB-common-10.1.38-1.el7.centos.x86_64

[root@cdh-1 mysql]# rpm -e MariaDB-shared-10.1.38-1.el7.centos.x86_64
error: Failed dependencies:
	libmysqlclient.so.18()(64bit) is needed by (installed) MySQL-python-1.2.5-1.el7.x86_64
	libmysqlclient.so.18(libmysqlclient_18)(64bit) is needed by (installed) MySQL-python-1.2.5-1.el7.x86_64

#强制卸载,因为没有--nodeps
rpm -e --nodeps MariaDB-client-5.5.49-1.el7.centos.x86_64


#卸载数据库:
[root@localhost logs]# yum -y remove mari*
#删除数据库文件:
[root@localhost logs]# rm -rf /var/lib/mysql/*

增加mariaDB的yum源

cd /etc/yum.repos.d/ \
&& cp CentOS-Base.repo CentOS-Base.repo.bak \
&& vim CentOS-Base.repo

# 添加以下内容

[mariadb]
name = MariaDB
baseurl = https://mirrors.ustc.edu.cn/mariadb/yum/10.1/centos7-amd64/
gpgkey=https://mirrors.ustc.edu.cn/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck=1

# 执行
rpm --import https://yum.mariadb.org/RPM-GPG-KEY-MariaDB

运行安装命令安装MariaDB(安装过程可能会比较漫长,使用中科大的就快了)

yum -y install MariaDB-server MariaDB-client

移除原有InnoDB log文件,如果有

cd /var/lib/mysql/ \
&& rm -rf /var/lib/mysql/ib_logfile0 \
&& rm -rf /var/lib/mysql/ib_logfile1

配置mariadb服务

# v10+
vim /etc/my.cnf.d/server.cnf

新增[mysqld]配置

[mysqld] 部分新增


lower_case_table_names=1
collation-server = utf8_general_ci
character-set-server = utf8

transaction-isolation = READ-COMMITTED
key_buffer = 16M
key_buffer_size = 32M
max_allowed_packet = 32M
thread_stack = 256K
thread_cache_size = 64
query_cache_limit = 8M
query_cache_size = 64M
query_cache_type = 1

max_connections = 550

log_bin=/var/lib/mysql/mysql_binary_log

server_id=1

binlog_format = mixed

read_buffer_size = 2M
read_rnd_buffer_size = 16M
sort_buffer_size = 8M
join_buffer_size = 8M

innodb_file_per_table = 1
innodb_flush_log_at_trx_commit  = 2
innodb_log_buffer_size = 64M
innodb_buffer_pool_size = 4G
innodb_thread_concurrency = 8
innodb_flush_method = O_DIRECT
innodb_log_file_size = 512M


配置项说明

  1. 防止死锁,设置隔离级别为READ-COMMITTED
    transaction_isolation = READ-COMMITTED
  2. 由于大量写,推荐硬盘直写,不经过系统缓存
    innodb_flush_method = O_DIRECT
  3. 设置最大连接数max_connections,原则上小于50主机,每个数据库100连接,并最后结果+50连接
    例如Cloudera Manager Server, Activity Monitor, Reports Manager, Cloudera Navigator, and Hive metastore
    5个数据库,设置最大连接550
    如果大于50主机,那么数据库应该拆分到多个主机上
    max_connections = 550
  4. 二进制日志部分不是必须的,依据数据库管理策略进行设置
systemctl enable mysql &&\
systemctl restart mysql

设置密码

/usr/bin/mysql_secure_installation

[...]
Enter current password for root (enter for none):
OK, successfully used password, moving on...
[...]
Set root password? [Y/n] Y  <– 是否设置root用户密码,输入y并回车或直接回车
New password: <– 设置root用户的密码
Re-enter new password: <– 再输入一次你设置的密码
Remove anonymous users? [Y/n] Y <– 是否删除匿名用户,生产环境建议删除,所以直接回车
[...]
Disallow root login remotely? [Y/n] N <–是否禁止root远程登录,根据自己的需求选择Y/n并回车
[...]
Remove test database and access to it [Y/n] Y <– 是否删除test数据库,直接回车
[...]
Reload privilege tables now? [Y/n] Y <– 是否重新加载权限表,直接回车
All done!

创建CDH数据库

这里面我直接进行创建

mysql -u root -p
CREATE DATABASE scm DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE amon DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE rman DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE hue DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE metastore DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE sentry DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE nav DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE navms DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE oozie DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

GRANT ALL ON *.* TO 'root'@'%' IDENTIFIED BY '123123';

flush privileges;
# 这是创建语句样例
CREATE DATABASE <database> DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON <database>.* TO '<user>'@'%' IDENTIFIED BY '<password>';

数据库列表描述

ServiceDatabaseUser
Cloudera Manager Serverscmscm
Activity Monitoramonamon
Reports Managerrmanrman
Huehuehue
Hive Metastore Servermetastorehive
Sentry Serversentrysentry
Cloudera Navigator Audit Servernavnav
Cloudera Navigator Metadata Servernavmsnavms
Oozieoozieoozie

配置CM Server数据库

注意jar包名称要重命名,切记要将版本号去除,否则你在做下一步的时候会给你带来一些不必要的烦恼哟!

初始化脚本/usr/share/cmf/schema/scm_prepare_database.sh需要/usr/share/java/mysql-connector-java.jar这个文件来执行数据库初始化

mkdir -p /usr/share/java/ && cd /usr/share/java/
上传 mysql-connector-java.jar  到/usr/share/java/ 目录下

或者wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.48.tar.gz

mkdir -p /usr/share/java/ \
&& wget -O /usr/share/java/mysql-connector-java-5.1.48.tar.gz \
https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.48.tar.gz \
&& cd /usr/share/java/;tar -zxvf mysql-connector-java-5.1.48.tar.gz \
&& cp /usr/share/java/mysql-connector-java-5.1.48/mysql-connector-java-5.1.48-bin.jar /usr/share/java/mysql-connector-java.jar \
&& rm -rf mysql-connector-java-5.1.48 mysql-connector-java-5.1.48.tar.gz \
&& ls /usr/share/java/

CDH安装

安装依赖包

yum install -y chkconfig python bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse fuse-libs redhat-lsb postgresql* portmap mod_ssl openssl-devel python-psycopg2 MySQL-python  lrzsz libxml2-python mod_ssl

配置本地yum仓库 (manager节点)

  1. 安装Httpd服务
yum -y install httpd createrepo \
&& systemctl start httpd \
&& systemctl enable httpd 
  1. 配置本地yum仓库
mkdir -p /var/www/html/cm6/
  1. 将下载的cloudera-repos-6.3.0包文件移到此目录下:
cd /var/www/html/cm6/

[root@cdh104 cm6]# ll
总用量 1378004
-rw-r--r--. 1 root root      14041 1月  10 15:08 allkeys.asc
-rw-r--r--. 1 root root   10479136 1月  10 15:08 cloudera-manager-agent-6.3.0-1281944.el7.x86_64.rpm
-rw-r--r--. 1 root root 1201341068 1月  10 15:09 cloudera-manager-daemons-6.3.0-1281944.el7.x86_64.rpm
-rw-r--r--. 1 root root      11464 1月  10 15:08 cloudera-manager-server-6.3.0-1281944.el7.x86_64.rpm
-rw-r--r--. 1 root root      10996 1月  10 15:08 cloudera-manager-server-db-2-6.3.0-1281944.el7.x86_64.rpm
-rw-r--r--. 1 root root   14209884 1月  10 15:08 enterprise-debuginfo-6.3.0-1281944.el7.x86_64.rpm
-rw-r--r--. 1 root root  184988341 1月  10 15:08 oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm

  1. 创建repodata:
createrepo .
chmod -R ugo+rX /var/www/html/cm6/
  1. 验证
http://<ip>/cm6/

访问不了检查防火墙、hostname、ip

安装Cloudera Manager

IP修改为存放cloudera-repos-6.3.0包的机器IP

(
cat <<EOF
[cloudera-manager]
name = Cloudera Manager, Version
#地址为公司yum仓库,如果没有需要搭建本地yum仓库
baseurl = http://192.168.26.134/cm6/
gpgcheck=0
enabled=1
EOF
) >> /etc/yum.repos.d/cloudera-manager.repo \
&& yum clean all \
&& yum makecache \
&& yum install -y cloudera-manager-daemons cloudera-manager-agent cloudera-manager-server \
&& yum clean all \
&& rpm -qa | grep cloudera-manager 

安装完CM后/opt/ 下会出现cloudera目录

配置parcel库

将parcel-6.3.0文件放入/opt/cloudera/parcel-repo目录下

[root@cdh101 parcel-repo]# cd /opt/cloudera/parcel-repo
[root@cdh101 parcel-repo]# ll
总用量 2038864
-rw-r--r-- 1 root         root         2087665645 12月 31 12:51 CDH-6.2.0-1.cdh6.2.0.p0.967373-el7.parcel
-rw-r--r-- 1 root         root                 41 12月 31 12:52 CDH-6.2.0-1.cdh6.2.0.p0.967373-el7.parcel.sha
-rw-r--r-- 1 root         root                 40 12月 31 12:51 CDH-6.2.0-1.cdh6.2.0.p0.967373-el7.parcel.sha1
-rw-r--r-- 1 root         root                 64 12月 31 12:51 CDH-6.2.0-1.cdh6.2.0.p0.967373-el7.parcel.sha256
-rw-r----- 1 root         root      79809 12月 31 13:41 CDH-6.2.0-1.cdh6.2.0.p0.967373-el7.parcel.torrent
-rw-r--r-- 1 root         root              34635 12月 31 12:51 manifest.json

然后执行命令生成 sha 文件:

sha1sum CDH-6.3.0-1.cdh6.3.0.p0.1279813-el7.parcel | awk '{ print $1 }' > CDH-6.3.0-1.cdh6.3.0.p0.1279813-el7.parcel.sha

在/opt/cloudera/parcel-repo执行以下命令(授予权限给cloudera-scm用户):

chown -R cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo/*

初始化cm本机数据库

cd /opt/cloudera/cm/schema/ \
&& ./scm_prepare_database.sh mysql scm root

输入数据库密码

显示以下内容成功!!

JAVA_HOME=/usr/java/jdk1.8.0_191
Verifying that we can write to /etc/cloudera-scm-server
Creating SCM configuration file in /etc/cloudera-scm-server
Executing:  /usr/java/jdk1.8.0_191/bin/java -cp /usr/share/java/mysql-connector-java.jar:/usr/share/java/oracle-connector-java.jar:/usr/share/java/postgresql-connector-java.jar:/opt/cloudera/cm/schema/../lib/* com.cloudera.enterprise.dbutil.DbCommandExecutor /etc/cloudera-scm-server/db.properties com.cloudera.cmf.db.
[                          main] DbCommandExecutor              INFO  Successfully connected to database.
All done, your SCM database is configured correctly!

启动服务

systemctl start cloudera-scm-server.service

看日志
tail -f /var/log/cloudera-scm-server/cloudera-scm-server.log

这里要稍微等一下,别心急,看日志

浏览器访问端口http://<server_host>:7180 ,如果启用了auto-tls 就用7183端口
用户密码admin /admin

初始化Cloudera Manager

  1. 同意协议
  2. 点选Express版本
  3. 填写集群名称:hadoop
  4. 输入主机名称或者IP 搜索选中
  5. 集群安装:选择存储库
    • 自定义存储库:http://192.168.26.133/cm6/
    • CDH and other software选择parcel安装
    • 远程 Parcel 存储库 URL:http:///cloudera-repos
    • CDH 版本 对应版本挑勾
  6. JDK不安装
  7. 输入SSH密码
  8. 系统建立临时yum源,等待Install Parcels…
  9. 选择:I understand the risks, let me continue with cluster creation.

如果8显示无法检测到cloudera-manager-server 安装节点执行 mv /usr/bin/host /usr/bin/host.bak
显示service cloudera-scm-agent找不到检查cm6路径是否访问不了

系统检查主机后会给出些建议,可以按照修改

群集设置

  1. 选择服务:Essentials
  2. 自定义角色分配修改以下内容并执行下一步
    • HDFS:httpFS选择当前主机挑勾
    • HDFS:NFS Gateway选择当前主机挑勾
    • HIVE:WebHCat Server选择当前主机挑勾
    • Cloudera Management Service:Activity Monitor选择当前主机挑勾
  3. 选择数据库,依次填写数据库名、用户名、密码
  4. 点击测试连接显示Successful执行下一步
  5. 审核更改,继续
  6. 等待自动部署完成

完成以上内容CDH6.3安装完成

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值