安装前准备
a) 虚拟机3-4台(有条件可以用物理机)
最低配置:2核心 4GB内存 40G硬盘
建议配置:2核心 8GB内存 100G硬盘
操作系统:CentOS 7.6
系统镜像:http://isoredirect.centos.org/centos/7/isos/x86_64/
b) Oracle JDK 1.8.0
下载地址:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html(需登录Oracle账号)
c) MySQL 5.7 + 版本及驱动
下载地址:https://dev.mysql.com/downloads/mysql/5.7.html (MySQL,方便起见可以下载RPM安装包
驱动地址:https://mvnrepository.com/artifact/mysql/mysql-connector-java
d) Cloudera Manager 6.3.1 安装包
下载地址:https://archive.cloudera.com/cm6/6.3.1/redhat7/yum/RPMS/x86_64/
e) Cloud Distribution Hadoop 6.3.2 安装包
下载地址:https://archive.cloudera.com/cdh6/6.3.2/parcels/
相关安装包已上传百度云,可按需下载:
链接:https://pan.baidu.com/s/1Xgavwp6GE-doeqwCAYbE0g
提取码:ziib
1、创建虚拟机,并安装CentOS 7.6
可选择在Windows Hyper – V 或 VMware 中安装虚拟机,也可使用其他VMM软件,土豪可直接租云主机。
每台虚拟机至少需分配 2核心 4GB内存 40GB硬盘。
如需跑多节点的Zookeeper,Hbase,HDFS,需为每台虚拟机至少分配8GB内存,如需进行一定程度的测试,建议硬盘≥100GB,按需扩容。
本着对开源软件支持的态度,楼主找了台闲置主机安装了PVE裸金属系统,并在上面创建了多台CentOS主机。
安装完毕后, 为方(you)便(qiang)起(po)见(zheng)设置各虚拟机主机名为cdh01-cdh04
hostnamectl set-hostname cdh01
![](http://www.weiwei.wang/wp-content/uploads/2020/11/image-1024x372.png)
2、设置各虚拟机网卡并重启网络服务
a) 关闭各虚拟机防火墙
关闭防火墙 systemctl stop firewalld.service 禁止开机启动 systemctl disable firewalld.service 查看防火墙状态 firewall-cmd --state 开启防火墙命令 systemctl start firewalld.service
b) 服务器改为静态IP,四台服务器设置为固定的IP。
如在安装虚拟机时已按该方式进行配置,可忽略此步骤
本次实验路由网关为192.168.8.1,各虚机IP依次设为192.168.8.21-192.168.8.24
需改动的配置项:
修改
BOOTPROTO=static
ONBOOT=yes
增加
IPADDR=192.168.8.21
NETMASK=255.255.255.0
GATEWAY=192.168.8.1
DNS1=114.114.114.114
DNS2=8.8.8.8
编辑网卡配置 vi /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=static DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=stable-privacy NAME=eth0 UUID=79078afc-d796-494f-8e1b-d6ef28e12535 DEVICE=eth0 ONBOOT=yes IPADDR=192.168.8.21 NETMASK=255.255.255.0 GATEWAY=192.168.8.1 DNS1=114.114.114.114 DNS2=8.8.8.8
c) 重启网络服务
service network restart
3、在各服务器配置Hosts,并设置免密登录
a) 在各虚拟机中编辑hosts文件,加入各服务器的IP地址和主机名
vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.8.21 cdh01 192.168.8.22 cdh02 192.168.8.23 cdh03 192.168.8.24 cdh04
b) 在各主机上执行ssh-keygen -t rsa生成公私钥,一路回车即可
ssh-keygen -t rsa
c) 通过ssh-copy-id -i 设置免密登录
ssh-copy-id -i .ssh/id_rsa.pub root@cdh01 ssh-copy-id -i .ssh/id_rsa.pub root@cdh02 ssh-copy-id -i .ssh/id_rsa.pub root@cdh03 ssh-copy-id -i .ssh/id_rsa.pub root@cdh04
4、安装jdk,配置环境变量
在各主机上安装JAVA,方便起见本次实验通过RPM方式进行安装,如使用RPM包安装包进行安装,将会自动添加环境变量
rpm -ivh jdk-8u271-linux-x64.rpm
5、安装并配置MySQL,初始化数据库
a) 安装MySQL
本次实验安装MySQL 5.7,单节点即可,方便起见,安装在主节点(cdh01)
通过rpm -ivh 指令依次安装mysql-community-common、mysql-community-libs、mysql-community-libs-compat、mysql-community-client、mysql-community-server。
b) 修改配置文件my.cnf
[mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock transaction-isolation = READ-COMMITTED # Disabling symbolic-links is recommended to prevent assorted security risks; # to do so, uncomment this line: symbolic-links = 0 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 #expire_logs_days = 10 #max_binlog_size = 100M #log_bin should be on a disk with enough free space. #Replace '/var/lib/mysql/mysql_binary_log' with an appropriate path for your #system and chown the specified folder to the mysql user. log_bin=/var/lib/mysql/mysql_binary_log #In later versions of MySQL, if you enable the binary log and do not set #a server_id, MySQL will not start. The server_id must be unique within #the replicating group. server_id=1 binlog_format = mixed read_buffer_size = 2M read_rnd_buffer_size = 16M sort_buffer_size = 8M join_buffer_size = 8M # InnoDB settings 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 [mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid sql_mode=STRICT_ALL_TABLES
c) 重启MySQL
service mysqld restart
d) 创建初始化数据库
# scm CREATE DATABASE scm DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; GRANT ALL ON scm.* TO 'scm'@'%' IDENTIFIED BY '123456'; # amon CREATE DATABASE amon DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; GRANT ALL ON amon.* TO 'amon'@'%' IDENTIFIED BY '123456'; # rman CREATE DATABASE rman DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; GRANT ALL ON rman.* TO 'rman'@'%' IDENTIFIED BY '123456'; # hue CREATE DATABASE hue DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; GRANT ALL ON hue.* TO 'hue'@'%' IDENTIFIED BY '123456'; # hive CREATE DATABASE metastore DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; GRANT ALL ON metastore.* TO 'hive'@'%' IDENTIFIED BY '123456'; # sentry CREATE DATABASE sentry DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; GRANT ALL ON sentry.* TO 'sentry'@'%' IDENTIFIED BY '123456'; # nav CREATE DATABASE nav DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; GRANT ALL ON nav.* TO 'nav'@'%' IDENTIFIED BY '123456'; # navms CREATE DATABASE navms DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; GRANT ALL ON navms.* TO 'navms'@'%' IDENTIFIED BY '123456'; # oozie CREATE DATABASE oozie DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; GRANT ALL ON oozie.* TO 'oozie'@'%' IDENTIFIED BY '123456'; # flush FLUSH PRIVILEGES;
6、安装CreateRepo,配置CM6本地yum源
a) 在主节点安装Apache Httpd和CreateRepo
yum -y install httpd createrepo
b) 在主节点Apache网站文件夹下创建CM6本地yum源目录cdh6
mkdir /var/www/html/cm6
c) 在本地通过windows powershell上传CDH安装包
也可通过SSH 客户端自带SFTP工具或WinSCP等工具进行快速上传
文件清单:
allkeys.asc
cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm
cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm
cloudera-manager-server-6.3.1-1466458.el7.x86_64.rpm
cloudera-manager-server-db-2-6.3.1-1466458.el7.x86_64.rpm
enterprise-debuginfo-6.3.1-1466458.el7.x86_64.rpm
oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm
scp d:\download\cm6 root@cdh01:/var/www/html/cm6
d) 通过createrepo创建yum安装源
createrepo /var/www/html/cm6/
成功后,cdh6目录下会多出一个repodata文件夹
![](http://www.weiwei.wang/wp-content/uploads/2020/11/image-5.png)
e) 新增Cloud Manager 6.3.1本地Repo
vi /etc/yum.repos.d/cloudera-repo.repo 输入 [cloudera-repo] name=cloudera-repo baseurl=http://192.168.8.21/cm6/ enabled=1 gpgcheck=0
f) 刷新yum源
yum clean all & yum makecache
7、上传MySQL连接驱动到主节点/usr/share/java/目录并重命名为mysql-connector-java.jar
scp d:\download\mysql-connector-java-5.1.49.jar root@cdh01:/usr/share/java mv /usr/share/java/mysql-connector-java-5.1.49.jar /usr/share/java/mysql-connector-java.jar
8、修改系统参数信息
a) 根据官方建议将/proc/sys/vm/swappiness 设置为 10
echo 'vm.swappiness=10' >> /etc/sysctl.conf
b) 启用透明页面压缩设置
vi /etc/rc.local 在末尾加上: echo never > /sys/kernel/mm/transparent_hugepage/defrag echo never > /sys/kernel/mm/transparent_hugepage/enabled
9、CDH Server主节点(cdh01)安装和配置
yum install -y cloudera-manager-daemons cloudera-manager-agent cloudera-manager-server
完成后,主节点/opt文件夹下会出现cloudera文件夹
10、创建 CDH 6.3.2 安装包缓存
上传 CDH 6.3.2 的parcel文件到主节点/opt/cloudera/parcel-repo文件夹
上传文件清单 CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel.sha1 CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel.sha256 manifest.json
11、初始化 Cloudera Manager 数据库
执行 scm_prepare_database.sh 初始化数据库
/opt/cloudera/cm/schema/scm_prepare_database.sh mysql -h<主机名> -u<用户名> -p'<密码>' --scm-host <主机名> <库名> <用户名> <密码>
例:
/opt/cloudera/cm/schema/scm_prepare_database.sh mysql -h192.168.8.21 -uroot -p'123456' --scm-host cdh01 cdh6 root 123456
随后再执行脚本初始化SCM库:
/opt/cloudera/cm/schema/scm_prepare_database.sh mysql scm scm 123456
12、启动Cloudera Manager Server服务
systemctl start cloudera-scm-server
13、启动Web安装向导
a) 浏览器输入 http://192.168.8.21(主节点IP):7180/
默认用户名密码:admin/admin
登录后出现欢迎页面
![](http://www.weiwei.wang/wp-content/uploads/2020/11/image-6-1024x509.png)
此处直接点 “继续” 进入下一步
b) 勾选许可条款,点击 “继续” 进入下一步
![](http://www.weiwei.wang/wp-content/uploads/2020/11/image-7-1024x509.png)
c) 选择安装版本,默认 Cloudera Express,点击 “继续” 进入下一步
![](http://www.weiwei.wang/wp-content/uploads/2020/11/image-8-1024x509.png)
d) 程序员最头疼的起名步骤,输入集群名称后,点击 “继续” 进入下一步
![](http://www.weiwei.wang/wp-content/uploads/2020/11/image-9-1024x527.png)
e) 输入需安装的主机名称和SSH端口号
![](http://www.weiwei.wang/wp-content/uploads/2020/11/image-11-1024x527.png)
f) 点击搜索并勾选主机,点击 “继续” 进入下一步
![](http://www.weiwei.wang/wp-content/uploads/2020/11/image-12-1024x497.png)
g) 输入Cloudera Manager 存储库
![](http://www.weiwei.wang/wp-content/uploads/2020/11/image-13-1024x492.png)
安装方法选择 “使用parcel” 如此处未出现6.3.2版本,建议在更多设置中,将远程仓库地址去除,重新上传parcel包后重试,点击 “继续” 进入下一步
h) 由于已经安装Oracle JDK,此处不勾选安装,点击 “继续” 进入下一步
![](http://www.weiwei.wang/wp-content/uploads/2020/11/image-14-1024x492.png)
i) 输入集群主机的的登陆凭证,点击 “继续” 进入下一步
![](http://www.weiwei.wang/wp-content/uploads/2020/11/image-15-1024x522.png)
j) 此步进行代理安装,等待全部完成即可,点击 “继续” 进入下一步
![](http://www.weiwei.wang/wp-content/uploads/2020/11/image-16-1024x497.png)
![](http://www.weiwei.wang/wp-content/uploads/2020/11/image-17-1024x492.png)
![](http://www.weiwei.wang/wp-content/uploads/2020/11/image-18-1024x508.png)
k) 执行CDH安装包,等待全部完成即可,点击 “继续” 进入下一步
![](http://www.weiwei.wang/wp-content/uploads/2020/11/image-20-1024x471.png)
l) CDH集群自检设置,保持默认即可
此处会进行集群环境检查,如有异常,根据提示进行修复,重新检测即可。
检测通过后,点击 “继续” 进入下一步
![](http://www.weiwei.wang/wp-content/uploads/2020/11/image-21-1024x509.png)
![](http://www.weiwei.wang/wp-content/uploads/2020/11/image-22-1024x509.png)
m) 选择需安装的服务,本次选择HBase、HDFS、Hive、Spark、YARN、Zookeeper,点击 “继续” 进入下一步
![](http://www.weiwei.wang/wp-content/uploads/2020/11/image-23-1024x509.png)
![](http://www.weiwei.wang/wp-content/uploads/2020/11/image-24-1024x517.png)
n) 进入角色分配页,按需选择服务所需安装的主机,点击 “继续” 进入下一步
![](http://www.weiwei.wang/wp-content/uploads/2020/11/image-25-1024x509.png)
o) Hive 和 Report Manager 数据库设置,按图中内容填写后点击 “继续” 进入下一步
![](http://www.weiwei.wang/wp-content/uploads/2020/11/image-26-1024x471.png)
p) Hadoop集群配置,默认即可,点击 “继续” 进入下一步
![](http://www.weiwei.wang/wp-content/uploads/2020/11/image-27-720x1024.png)
q) 集群初始化,等待处理完毕,点击 “继续” 进入下一步
![](http://www.weiwei.wang/wp-content/uploads/2020/11/image-28-1024x550.png)
r) 安装完毕,点击 “完成” 结束安装
![](http://www.weiwei.wang/wp-content/uploads/2020/11/image-29-1024x494.png)