安装前准备
主机和系统
Host | OS | Memory | IP |
bigdata001-dev | Cent OS 7.4 x64 | 32G | 192.168.1.1 |
bigdata002-dev | Cent OS 7.4 x64 | 32G | 192.168.1.2 |
bigdata003-dev | Cent OS 7.4 x64 | 15G | 192.168.1.3 |
bigdata004-dev | Cent OS 7.4 x64 | 32 | 192.168.1.4 |
安装包下载
下载 cloudera-manager.repo 文件
wget -P /etc/yum.repos.d https://archive.cloudera.com/cm5/RedHat/7/x86_64/cm/cloudera-manager.repo
升级 GPG key
sudo rpm --import https://archive.cloudera.com/cm5/redhat/7/x86_64/cm/RPM-GPG-KEY-cloudera
系统和环境配置
更改主机名
打开网络配置
- sudo VIM /etc/sysconfig/network
- NETWORKING=yes
- HOSTNAME=bigdata002-dev.novalocal
重启网络
sudo service network restart
配置 hosts 文件
打开 hosts 文件
sudo VIM /etc/hosts
改为如下配置
- 192.168.1.3 bigdata003-dev.novalocal
- 192.168.1.2 bigdata002-dev.novalocal
- 192.168.1.1 bigdata001-dev.novalocal
- 192.168.1.4 bigdata004-dev.novalocal
关闭内存大页
在 /etc/rc.d/rc.local 中添加一下内容
- echo never> /sys/kernel/mm/transparent_hugepage/defrag
- echo never> /sys/kernel/mm/transparent_hugepage/enabled
所有机器安装 Java 8
旧版本卸载
- # 查看安装的 Java
- rpm -qa | grep java
- # 卸载相应的 Java 包
- rpm -qa |grep jdk | xargs rpm -e --nodeps $1
下载 JDK tar 包解压并配置环境变量
在你看到这篇文档的时候 Oracle JDK 可能已经开始收费了. 所以我们可以试试 OpenJDK ,Cloudera 正在努力让自己的平台与 OpenJDK 适配, 这应该不会花费太多时间
- wget https://download.java.net/java/early_access/jdk8/b03/BCL/jdk-8u202-ea-bin-b03-linux-x64-07_nov_2018.tar.gz
- tar xzvf jdk-8u202-ea-bin-b03-Linux-x64-07_nov_2018.tar.gz -C /user/java/
配置环境变量
- VIM /etc/profile
- # 添加一下内容
- JAVA_HOME=/usr/java/jdk1.8.0_202
- PATH=$JAVA_HOME/bin:$PATH
- CLASSPATH=.:$JAVA_HOME/lib
- export JAVA_HOME PATH CLASSPATH JRE_HOME
关闭所有机器的防火墙和 SELinux
如果一个个配置端口的话会比较麻烦, 所以在安装过程中就把防火墙关闭, 可以在安装完成后再根据需求配置
关闭防火墙
关闭 iptables
- service iptables stop
- sudo chkconfig iptables off
关闭 firewalld
systemctl disabled firewalld
我们的服务器 有 salt 所以我们可以批量执行. 在 salt server 服务器
- Salt 'bigdata0[89]-dev.novalocal' cmd.run 'systemctl stop firewalld && systemctl disable firewalld'
- Salt 'bigdata01[02]-dev.novalocal' cmd.run 'systemctl stop firewalld && systemctl disable firewalld'
关闭 SELinux
临时关闭
- sudo setenforce 0
- Salt 'bigdata0[89]-dev.novalocal' cmd.run 'setenforce 0 && getenforce'
- Salt 'bigdata01[02]-dev.novalocal' cmd.run 'setenforce 0 && getenforce'
如果要永久关闭, 可以修改配置:
sudo VIM /etc/selinux/config
修改以下配置
SELINUX=disabled
启动 NTP 服务
- Service ntpd start
- Chkconfig ntpd on
- Systemctl start ntpd
- Systemctl enable ntpd
- Salt 'bigdata0[89]-dev.novalocal' cmd.run 'systemctl start ntpd && systemctl enable ntpd'
- Salt 'bigdata01[02]-dev.novalocal' cmd.run 'systemctl start ntpd && systemctl enable ntpd'
注: 如果不启动 ntpd 服务, scm agent 无法发现 123 端口开放状态, 会出现告警
Cloudera Manager Server 和 Agent 安装
Yum 安装
Yum 网络安装方式, 如果你已经配置 yum 源
yum install cloudera-manager-daemons cloudera-manager-server
rpm 包安装
所有服务器都需要的操作:
我们使用 rpm 安装所以其他的依赖包需要使用 yum 安装
- yum install bind-utils psmisc libxslt cyrus-sasl-plain cyrus-sasl-gssapi fuse portmap fuse-libs httpd mod_ssl Python-psycopg2 RedHat-lsb-core -y
- wget https://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.15.0/RPMS/x86_64/cloudera-manager-daemons-5.15.0-1.cm5150.p0.62.el7.x86_64.rpm
- rpm -ivh cloudera-manager-daemons-5.15.0-1.cm5150.p0.62.el7.x86_64.rpm
Server 服务器
https://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5/RPMS/x86_64/
下载 server rpm 包
- wget https://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.15.0/RPMS/x86_64/cloudera-manager-server-5.15.0-1.cm5150.p0.62.el7.x86_64.rpm
- wget https://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.15.0/RPMS/x86_64/cloudera-manager-server-db-2-5.15.0-1.cm5150.p0.62.el7.x86_64.rpm
- rpm -ihv cloudera-manager-server-5.15.0-1.cm5150.p0.62.el7.x86_64.rpm cloudera-manager-server-db-2-5.15.0-1.cm5150.p0.62.el7.x86_64.rpm
Agent 服务器安装
- Wget https://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.15.0/RPMS/x86_64/cloudera-manager-agent-5.15.0-1.cm5150.p0.62.el7.x86_64.rpm
- Rpm -ivh cloudera-manager-agent-5.15.0-1.cm5150.p0.62.el7.x86_64.rpm
安装 MySQL
数据库这一步我们可以找 DBA 协助
在 server 机安装配置 MySQL
sudo yum install MySQL-server
设置开机启动
sudo chkconfig mysqld on
启动 MySQL service
sudo service mysqld start
设置 root 用户密码
sudo mysqladmin -u root password 'xxxx'
为 Cloudera Manager 建立数据库
下载 MySQL 驱动: http://dev.mysql.com/downloads/connector/j/
解压把驱动的 jar 文件 MySQL-connector-java.jar 上传到 / usr/share/java/
初始化数据 cloudera 库
sudo /user/share/cmf/schema/scm_prepare_database.sh MySQL cm -hlocalhost -uroot -pmysql@Hadoop0 --scm-host localhost scm MySQL@Hadoop:scm:88
如果 DBA 已经帮我们处理完的数据库的事情, 我们需要修改 数据库配置文件
- c /etc/cloudear-scm-server/db.properties
- com.cloudera.cmf.db.type=MySQL
- com.cloudera.cmf.db.host=www.mydatabase.com:3306
- com.cloudera.cmf.db.name=scm
- com.cloudera.cmf.db.user=devuser
- com.cloudera.cmf.db.password=Devuser123
- com.cloudera.cmf.db.setupType=EXTERNAL
在 Master 机上启动 Cloudera Manager Server
- Systemctl start cloudera-scm-server
- Systemctl enable cloudera-scm-server
Agent 配置
在所有机器上配置 Master 机的主机名
sudo VIM /etc/cloudera-scm-agent/config.INI
把 server_host 设置成 Master 机的主机名
server_host=192.1687.1.2
启动 agent
- Systemctl start cloudera-scm-agent
- Systemctl enable cloudera-scm-agent
打开 Cloudera Manager 主页
http://192.168.1.10:7180/
第一次启动比较慢, 可能需要等待几分钟才可以打得开 cloudera manager 主页.
登录 Cloudera Manager
默认用户名密码都是 admin, 第一次登录成功之后先进入到 cloudera manager 的安装引导界面:
CDH 安装
CDH 文件上传
下载 CDH 安装包和 sha 验证文件
- http://archive.cloudera.com/cdh5/parcels/5.15.0/
- wget http://archive.cloudera.com/cdh5/parcels/5.15.0/CDH-5.15.0-1.cdh5.15.0.p0.21-el7.parcel
- wget http://archive.cloudera.com/cdh5/parcels/5.15.0/CDH-5.15.0-1.cdh5.15.0.p0.21-el7.parcel.sha1
在通过 Cloudera Manager 进行网络安装 CDH 的时候可能会比较慢, 或卡住所以我们可以将已经下好的 CDH 包上传到 server 端服务器上
把下载好的 CDH-5.7.1-1.cdh5.7.1.p0.11-el6.parcel.sha1 重命名
CDH-5.7.1-1.cdh5.7.1.p0.11-el6.parcel.sha
把 CDH 的 parcel 和 sha 文件上传到 server 机的 / opt/cloudera/parcel-repo / 目录
- CDH-5.15.0-1.cdh5.15.0.p0.21-el7.parcel
- CDH-5.15.0-1.cdh5.15.0.p0.21-el7.parcel.sha
选择 cloudera manager 的版本
选择要安装 CDH 的主机
所有正常启动 agent 的机器都会显示在这个页面
选择要安装的 Parcels
安装 Parcel
选择要安装的服务
如下图所示, 有多种服务组合供选择 (服务是随时可以根据需求增删的), 我这里根据项目需求选择自定义服务.
集群设置
一般按默认设置就可以了, 也可以根据自己的需求定制.
点击继续安装, 在安装的过程中可能会有一些服务的配置需要设置, 一般按默认配置就可以了.
完成安装
至此, Cloudear Manger/CDH 的安装已经完成, 你可以在 Cloudear Manger 管理界面上对集群进行更细化的定制.
来源: http://www.linuxidc.com/Linux/2019-02/157007.htm