开发环境搭建CDH

CDH安装笔记

安装CDH我们需要做的几件事:

温馨提示:不要一步一步照抄

  • 1 ,选择centos对应版本的CDH安装包(我选择的系统是: centos7,CDH版本为5.16.2)

  • 2,基础环境配置

  • 3,MySQL安装

  • 4,CDH 的配置

  • 5,启动和安装组件

服务器配置说明

node01 50G磁盘 6GiB内存
node02 50G磁盘 4GiB内存
node03 50G磁盘 4GiB内存

第一步:CDH下载地址

cloudera-manager http://archive.cloudera.com/cm5/cm/5/
CDH5包 http://archive.cloudera.com/cdh5/parcels
CDH5hashCode http://archive.cloudera.com/cdh5/parcels
CDH manifest.json manifest.json download

第二步:基础环境配置

基础环境配置需要做的事情

1,每台服务器配置JDK1.8环境
2,设置hostname
3,域名映射
4,更改网络主机名
5,关闭SeLinux
6,关闭防火墙
7,ssh免密域
8,Linux内存交换区设置
9,NTP时钟同步
10,大透明页提前解决
11,yum安装CDH需要的依赖包

1,配置JDK环境

安装JDK说明,很多人建议把JDK安装在 /usr/java/ 目录下,我在安装时发现这可能是个错误的决定,我建议安装在其他目录,通过软连接的方式应用Java环境到 /usr/java/ 目录下

我是这么做的:

[图片上传失败...(image-4f8539-1594089803899)]

我把它解压在了/opt/ 这个目录下

环境变量配置
JAVA_HOME=/local/java/jdk1.8.0_144
export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
export PATH=$PATH:${JAVA_HOME}/bin

执行此命令使配置生效: source /etc/profile

查看是否配置成功:java -version

出现以下内容表示成功

java version "1.8.0_221"
Java(TM) SE Runtime Environment (build 1.8.0_221-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.221-b11, mixed mode)

2,设置主机名

  • hostnamectl set-hostname node01

  • hostnamectl set-hostname node02

  • hostnamectl set-hostname node03

主机名 IP地址
node01 192.168.83.100
node02 192.168.83.110
node03 192.168.83.120

IP地址和主机名根据自己的需求配置即可

3,配置域名映射

vi /etc/profile

添加以下内容(三台都要执行)

192.168.83.100 node01
192.168.83.110 node02
192.168.83.120 node03

4,配置网络主机名

第一台执行:
配置添加到:/etc/sysconfig/network

vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=node01

第二台执行:

vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=node02

第三台执行:

vi /etc/sysconfig/network

NETWORKING=yes
HOSTNAME=node03

5,关闭SeLinux(三台都要执行)

vi /etc/selinux/config

#添加或修改(默认为enforcing,改为disabled)
SELINUX=disabled

6,关闭防火墙

查看状态

systemctl status firewalld.service
#关闭防火请
systemctl stop firewalld.service
#永久关闭(需要执行完关闭命令才能执行)
systemctl disable firewalld.service

7,SSH免密设置

执行生成密钥命令(一直回车即可):ssh-keygen
分发公钥(所有主机执行此命令):ssh-copy-id node01
分发公钥(所有主机执行此命令):ssh-copy-id node02
分发公钥(所有主机执行此命令):ssh-copy-id node03

8,设置Linux内存交换区

三台都要执行

echo 10 > /proc/sys/vm/swappiness

编辑 sysctl.conf 文件

vi sysctl.conf

添加或修改(三台都要执行)

vm.swappiness = 0

9,NTP时钟同步

server端

在/etc/ntp.conf 中添加以下内容

vi /etc/ntp.conf

中国这边最活跃的时间服务器 : http://www.pool.ntp.org/zone/cn

server 0.cn.pool.ntp.org
server 0.asia.pool.ntp.org
server 3.asia.pool.ntp.org

Enable public key cryptography.

crypto

允许上层时间服务器主动修改本机时间

restrict 0.cn.pool.ntp.org nomodify notrap noquery
restrict 0.asia.pool.ntp.org nomodify notrap noquery
restrict 3.asia.pool.ntp.org nomodify notrap noquery

外部时间服务器不可用时,以本地时间作为时间服务

server 127.127.1.0 # local clock
fudge 127.127.1.0 stratum 10
client:

在/etc/ntp.conf 中添加以下内容

vi /etc/ntp.conf

server 192.168.83.100 prefer

执行同步硬件和系统时间:hwclock --systohc --localtime

10,解决大透明页问题

三台都执行:

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

编辑文件:rc.local

vi /etc/rc.local

添加以下内容

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

11,安装CDH需要的依赖包

三台都要执行

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

第三步:安装MySQL

卸载centos7自带的数据库(三台都执行)

查找:rpm -qa | grep mariadb*

卸载:yum -y remove mari*

查找:rpm -qa | grep mysql*

卸载:rm -rf /var/lib/mysql/*

下载:

wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
安装MySQLyum源:

yum localinstall mysql57-community-release-el7-8.noarch.rpm

检查是否安装成功:

yum repolist enabled | grep "mysql.-community."

打印以下内容表示安装yum成功:

Mysql5.7
Mysqltools
MysqlConnetctors
安装MySQL服务

yum install mysql-community-server -y
启动MySQL:systemctl start mysqld.service

查找初始化密码:grep 'temporary password' /var/log/mysqld.log

登录到MySQL执行以下内容:

set global validate_password_policy=0;
set global validate_password_mixed_case_count=0;
set global validate_password_number_count=3;
set global validate_password_special_char_count=0;
set global validate_password_length=3;
设置密码:

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('your password');

第四步:CDH配置

解压:cloudera-manager-el6-cm5.12.1_x86_64.tar.gz

所有节点都执行

tar -zxvf cloudera-manager-el6-cm5.16.1_x86_64.tar.gz -C /opt/

创建用户cloudera-scm(所有节点)

useradd --system --home=/opt/cm-5.16.2/run/cloudera-scm-server --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
配置CM Agent(所有节点)

vi /opt/cm-5.16.2/etc/cloudera-scm-agent/config.ini

修改

server_host=node01

说明:server_host配置是CMserver的节点名称

配置CM需要的MySQL驱动包

yum install mysql-connector-java

下载完成后会在/usr/share/java目录下

cp /usr/share/java/mysql-connector-java.jar /opt/cm-5.12.2/share/cmf/lib/

初始化cm库:

cd /opt/cm-5.16.2/share/cmf/schea/
./scm_prepare_database.sh mysql -h node01 -uroot -p123456 --scm-host node01 scm scm scm
创建数据:

集群监控数据库
create database amon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
hive数据库
create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
oozie数据库
create database oozie DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
hue数据库
create database hue DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

配置parcel

Server节点
mkdir -p /opt/cloudera/parcel-repo
chown cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo
Agent节点
mkdir -p /opt/cloudera/parcels
chown cloudera-scm:cloudera-scm /opt/cloudera/parcels

把CDH安装包移到/opt/cloudera/parcel-repo 下面,并修改其中后缀为sha1的文件为sha

cp CDH* /opt/cloudera/parcel-repo
cp manifest.json /opt/cloudera/parcel-repo

第五步:启动和安装组件

server节点执行:

/opt/cm-5.16.2/etc/init.d/cloudera-scm-server start

所有agent节点执行:

/opt/cm-5.16.2/etc/init.d/cloudera-scm-agent start

查看是否启动成功:

netstat -apn|grep 7180

端口启动说明启动成功,访问页面

http://node01:7180

你可能感兴趣的:(开发环境搭建CDH)