cdh安装说明

部署

IP hostname system version
192.168.1.31 c1 centos 7
192.168.1.32 c2 centos 7
192.168.1.33 c3 centos 7

修改主机名以及hosts

  1. systemctl disable firewalld.service // 禁止firewall开机启动
  2. systemctl stop firewalld // 关闭防火墙
  3. hostnamectl set-hostname cm-server // 修改主机名
  4. //
  5. sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
  6. // 关闭selinux防火墙
  7. setenforce 0
  8. cat >>/etc/hosts<<EOF #添加各个节点hosts解析
  9. 192.168.1.31 c1
  10. 192.168.1.32 c2
  11. 192.168.1.33 c3
  12. EOF

配置c1免密钥登录其他节点

  1. ssh-keygen -t rsa #在cm-server生成密钥对
  2. #批量发送公钥到其他节点
  3. for num in `seq 1 3`;do ssh-copy-id -i /root/.ssh/id_rsa.pub root@hadoop-$num;done

在c1上安装mariadb,用于后期数据存储

  1. 1.
  2. yum install mariadb* // 安装mariadb
  3. yum -y install mariadb mariadb-server // 客户端 服务端
  4. yum install --downloadonly mariadb* // 下载安装包
  5. 2.
  6. systemctl start mariadb // 首先启动MariaDB
  7. 3.
  8. systemctl enable mariadb // 设置开机启动
  9. 4.
  10. mysql_secure_installation // 接下来进行MariaDB的相关简单配置
  11. 首先是设置密码,会提示先输入密码
  12. Enter current password for root (enter for none):<–初次运行直接回车
  13. 设置密码
  14. mysql -uroot password "mysqladmin"
  15. 登录数据库后我们采用root登录

java环境配置

  1. rpm -ivh jdk-7u80-linux-x64.rpm
  2. cat >/etc/profile.d/java.sh<<EOF
  3. export JAVA_HOME=/usr/java/jdk1.8.0_121
  4. export CLASSPATH=.:\$JAVA_HOME/jre/lib/rt.jar:\$JAVA_HOME/lib/dt.jar:\$JAVA_HOME/lib/tools.jar
  5. export PATH=\$PATH:\$JAVA_HOME/bin
  6. EOF
  7. source /etc/profile.d/java.sh

配置各节点服务器需求

  1. sysctl -w vm.swappiness=10
  2. echo "vm.swappiness=10" >>/etc/sysctl.conf
  3. echo never > /sys/kernel/mm/transparent_hugepage/defrag
  4. echo never > /sys/kernel/mm/transparent_hugepage/enabled

Cloudera Manager安装

  1. mkdir /software && cd /software
  2. wget -c https://archive.cloudera.com/cm5/cm/5/cloudera-manager-centos7-cm5.14.1_x86_64.tar.gz
  3. wget -c http://archive.cloudera.com/cdh5/parcels/5.14.2/CDH-5.14.2-1.cdh5.14.2.p0.3-el7.parcel
  4. wget -c http://archive.cloudera.com/cdh5/parcels/5.14.2/CDH-5.14.2-1.cdh5.14.2.p0.3-el7.parcel.sha1 -O CDH-5.14.2-1.cdh5.14.2.p0.3-el7.parcel.sha
  5. wget -c http://archive.cloudera.com/cdh5/parcels/5.14.2/manifest.json
  6. wget -c https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.46.zip
  7. tar -zxvf cloudera-manager-centos7-cm5.14.1_x86_64.tar.gz -C /opt/ #解压cm包
  8. unzip mysql-connector-java-5.1.46.zip #解压java-mysql连接jar包
  9. cp mysql-connector-java-5.1.46/mysql-connector-java-5.1.46-bin.jar /opt/cm-5.14.1/share/cmf/lib/ #将jar包复制到cm的lib目录下

官网提供的安装方式

  1. wget http://archive.cloudera.com/cm5/installer/5.14.2/cloudera-manager-installer.bin
  2. chmod u+x cloudera-manager-installer.bin
  3. sudo ./cloudera-manager-installer.bin

创建用户及初始化数据库

  1. useradd --system --home=/opt/cm-5.14.1/run/cloudera-scm-server/ --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
  2. #在各个节点均创建用户
  3. vim /opt/cm-5.14.1/etc/cloudera-scm-agent/config.ini将其中的server_host=cm-server #指向cm-server
  4. usage: /opt/cm-5.14.1/share/cmf/schema/scm_prepare_database.sh [options] (postgresql|mysql|oracle) database username [password] #使用选项
  5. |--|--|
  6. // /opt/cm-5.14.1/share/cmf/schema/scm_prepare_database.sh [数据库类型] [数据库名称] [-h 主机名] [-u用户名] [-p密码]
  7. /opt/cm-5.14.1/share/cmf/schema/scm_prepare_database.sh mysql cmdb -h"cm-server" -uroot -pmysqladmin --scm-host cm-server scm scm scm

c.将文件将cm-server修改完成的文件分发到其他各节点

  1. for i in `seq 1 3`;do scp -r /opt/cm-5.14.1 hadoop-$i:/opt/;done

d.创建本地源

  1. mv CDH-5.14.2-1.cdh5.14.2.p0.3-el7.parcel* manifest.json /opt/cloudera/parcel-repo/

e.启动服务
在cm-server启动server和agent服务,在其他节点启动agent服务

  1. /opt/cm-5.14.1/etc/init.d/cloudera-scm-server start
  2. /opt/cm-5.14.1/etc/init.d/cloudera-scm-agent start

Cloudera Manager的web界面配置

启动服务之后,可以查看端口号:7180

  1. netstat -lntup
  1. 注意:CDH安装的时候,注意版本是多少??

界面安装流程:

  1. 接受协议继续->可以选择适用60天->提示一些涉及许可证的信息->勾选管理的主机继续操作->
  2. 选择CDH-5.14版本->parcel安装->主机正确性检查->群集设置(选择安装的服务)->自定义角色分配,选择安装在那个节点上
  3. ->数据库设置(需要提前创建数据库及授权其他节点可以正常连接)->审核更改

数据库设置:

  1. create database report;

在安装kafka组件时,遇到的jdk版本问题

  1. 参考这个
  2. cloudera-manager系列-指定jdk的集中方式