基于CM 6.3.1搭建CDH 6.3.2平台大数据集群(rpm方式)

一、环境准备
    各版本: CentOS 7.9 * 64;CM 6.3.1;CDH 6.3.2
    1.配置主机网络(所有服务器均设置)
      vi /etc/sysconfig/network-scripts/ifcfg-ens33
      修改部分      

BOOTPROTO=static
NAME=dx07 ##名字自己设置
ONBOOT=yes

      新增部分
      IP根据自己网络设置:
      本地-控制面板\网络和 Internet\网络连接-VMnet8-属性-IPV4-属性-查看IP和子网掩码;
      VMware-编辑-虚拟网络编辑器-VMnet8-子网地址;
      这两个地址要保证在同一个网段,如果不在,可以修改虚拟网络编辑器(点击更改设置)

IPADDR=192.168.1.107
NETMASK=255.255.255.0
GATEWAY=192.168.1.2
DNS2=8.8.8.8

    2.修改主机名和/etc/hosts文件(所有服务器均设置)
      (1)配置主机名:
        临时修改:

hostnamectl set-hostname "主机名"

        永久修改: vi /etc/sysconfig/network 添加                  

NETWORKING=yes 
HOSTNAME=dx07.server.com ##这个是主机名,要求是FQDN格式,自己配置即可

      (2)配置/etc/hosts文件,建立IP和主机名的映射,集群中其他节点信息也需要配置进来,主机名要求是FQDN格式,添加以下信息(注意:文件中原有信息不要改动,不要删除!):        

192.168.1.107 dx07.server.com dx07
192.168.1.108 dx08.server.com dx08
192.168.1.109 dx09.server.com dx09

      (3)重启 reboot  
      (4)

hostname -f #检查主机名
hostname -i #检查IP
ping www.baidu.com
ping dx07
ping dx08
ping dx09
#本地 win+r cmd
ping 192.168.1.107
ping 192.168.1.108
ping 192.168.1.109

    3.设置防火墙(所有服务器均设置;Ambari设置及部署期间,与管理的主机进行通信,某些端口必须开放且可用) CentOS7 默认使用firewalld防火墙,如果想换回iptables防火墙,可关闭firewalld并安装iptables      

查看防火墙状态 firewall-cmd --state
关闭防火墙开机自启动: systemctl disable firewalld
关闭当前运行防火墙: service firewalld stop

    4.安装JDK并配置JAVA_HOME(所有节点)
      上传安装包
      解压JDK tar -zxvf xx.tar.gz
      cd /usr/local 将解压后的JDK安装包发送到其他机器(所有机器都要安装配置) 
      scp -r ./jdk1.8.0_291 root@dx08:相同目录下
      scp -r ./jdk1.8.0_291 root@dx09:相同目录下
      配置JAVA_HOME
      cd jdk安装包 pwd
      vi /etc/profile      

export JAVA_HOME=pwd
export PATH=$JAVA_HOME/bin:$PATH

      source /etc/profile
      javac -version
    5.安装MySQL
      (1)首先清楚centos7中默认的数据库mariadb 
        卸载mariadb:

rpm -qa |grep mariadb |xargs yum remove -y

      (2)安装MySQL
        ①上传MySQL安装包(工具、rz) (安装rz\sz yum -y install lrzsz)到指定目录
        ②解压到指定目录 tar -xvf xx.tar -C 指定路径
        ③安装 按照依赖关系依次安装 rpm 包
        需要先安装:

yum install net-tools
输入 y 

否则会报错:net-tools 被 mysql-community-server-5.7.27-1.el7.x86_64
        依赖关系依次为 common→libs→client→server
        分步执行        

rpm -ivh mysql-community-common-5.7.27-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.27-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-5.7.27-1.el7.x86_64.rpm
rpm -ivh mysql-community-embedded-compat-5.7.27-1.el7.x86_64.rpm
rpm -ivh mysql-community-embedded-devel-5.7.27-1.el7.x86_64.rpm
rpm -ivh mysql-community-embedded-5.7.27-1.el7.x86_64.rpm
rpm -ivh mysql-community-devel-5.7.27-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.27-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.27-1.el7.x86_64.rpm

        rpm -ivh xx.rpm xx.rpm ...
        一步执行       

rpm -ivh mysql-community-common-5.7.27-1.el7.x86_64.rpm mysql-community-libs-5.7.27-1.el7.x86_64.rpm mysql-community-libs-compat-5.7.27-1.el7.x86_64.rpm mysql-community-embedded-compat-5.7.27-1.el7.x86_64.rpm mysql-community-embedded-devel-5.7.27-1.el7.x86_64.rpm mysql-community-embedded-5.7.27-1.el7.x86_64.rpm mysql-community-devel-5.7.27-1.el7.x86_64.rpm mysql-community-client-5.7.27-1.el7.x86_64.rpm mysql-community-server-5.7.27-1.el7.x86_64.rpm

        安装完成之后再次执行相关命令  

        如果显示已安装  先查看已安装的mysql
        命令:rpm -qa | grep -i mysql
        再删除已安装MySQL,再重新执行相关命令
        yum remove mysql-community-server-5.6.36-2.el7.x86_64
        装好再查看已安装MySQL 共9个(与上边安装的.rpm数量一致)
        
        ④修改配置
        vi /etc/my.cnf
        datadir数据存放目录,可以修改
        添加 #默认使用UTF8编码        

character_set_server=utf8
init_connect='SET NAMES utf8'

        ⑤初始化MySQL        

mysqld --initialize

        如果报错,到MySQL目录下,修改目录所有者 一般是在 /var/lib/mysql ;不是则可以 find / -name ibdata1 找到对应目录        

chown -R mysql:mysql *
#修改权限 
chmod -R 777 ./*

 

#开机自启
systemctl enable mysqld
#启动MySQL服务
systemctl start mysqld
#查看MySQL状态
service mysqld status
查看MySQL初始化密码 cat /var/log/mysqld.log |grep password
进入MySQL数据库 mysql -uroot -p 输入密码
修改MySQL数据库密码 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root'; #将root用户密码修改为root,exit退出,使用新密码重登

        报错:ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
        原因:密码太简单,不符合密码策略
        解决:

set global validate_password_policy=LOW;
set global validate_password_length=4;

        MySQL远程访问授权配置

grant all privileges on *.* to root@"%" identified by '密码' with grant option;
flush privileges; #刷新权限 *.*表示所有库的所有表

        ⑥确认是否有mysql的jar包(在主节点上)       

ls /usr/share/java/mysql-connector-java.jar
没有则安装
yum install mysql-connector-java* 输入 y

    6.关闭SELINUX
      (1)临时时禁用:setenforce 0
      (2)永久禁用(重启生效):vi /etc/sysconfig/selinux 
        SELINUX=disabled
    7.ssh免密登录(只需配置主节点到其他节点的免密登录即可,主节点自己也要配置与自身的免密登录)
      (1)生成公钥和私钥 ssh-keygen -t rsa 回车-回车-回车
      (2)将本机公钥发送给其他机器 ssh-copy-id -i ~/.ssh/id_rsa.pub IP 在主节点执行:
        ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.1.107 yes root密码
        ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.1.108 yes root密码
        ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.1.109 yes root密码
      (3)主节点ssh登录验证 ssh dx07 ssh dx08 ssh dx09
    8.下载第三方依赖(所有agent节点)      

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

    9.创建CM用的数据库
      创建各组件需要的数据库      

mysql> CREATE DATABASE scm DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

mysql> CREATE DATABASE amon DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

mysql> CREATE DATABASE hue DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

mysql> CREATE DATABASE hive DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

mysql> CREATE DATABASE sentry DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

mysql> CREATE DATABASE oozie DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

    10.部署本地yum源(主节点)
      执行命令 yum install -y httpd
      启动httpd 执行命令 service httpd start
      在浏览器输入主节点网址: 192.168.1.107 回车,看是否启动成功!
    11.以rpm方式安装CDH
      master端需要的安装包
      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
      oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm
      mysql-connector-java-8.0.15-1.el7.noarch.rpm

      slave端需要的安装包
      cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm
      cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm
      oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm
      
      master:
      yum -y install psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse portmap rpcbind fuse-libs redhat-lsb net-tools postgresql-server
      yum -y install mod_ssl openssl-devel python-psycopg2 MySQL-python
      #安装cm-server,cm-agent     

rpm -ivh cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm
rpm -ivh cloudera-manager-server-6.3.1-1466458.el7.x86_64.rpm
rpm -ivh cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm
rpm -ivh cloudera-manager-server-db-2-6.3.1-1466458.el7.x86_64.rpm
rpm -ivh enterprise-debuginfo-6.3.1-1466458.el7.x86_64.rpm

      安装包自带脚本,配置数据库      

/opt/cloudera/cm/schema/scm_prepare_database.sh mysql scm root root 

      修改CM配置文件(所有节点)
      vim /etc/cloudera-scm-agent/config.ini
      server_host=localhost ---> server_host=ph07

      安装oracle-j2sdk 所有节点执行      

rpm -ivh oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm

    12.CM创建parcel本地库(所有节点)
      (1)Server节点创建目录 /opt/cloudera/parcel-repo        

mkdir -p /opt/cloudera/parcel-repo
mkdir -p /opt/cloudera/parcels
chown cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo
chown cloudera-scm:cloudera-scm /opt/cloudera/parcels

      (2)将cdh文件上传到该目录
        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
        manifest.json 
        重命名        

mv  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.sha

二、启动CM服务
  1.启动服务节点: dx07  

[root@dx07 ~]# systemctl start cloudera-scm-server

  2.启动工作节点: dx07 、 dx08 、 dx09 

[root@dx07 ~]# systemctl start cloudera-scm-agent
[root@dx08 ~]# systemctl start cloudera-scm-agent
[root@dx09 ~]# systemctl start cloudera-scm-agent

  3.查看Server启动日志  

[root@dx07 cm]# tail -f /var/log/cloudera-scm-server/cloudera-scm-server.log

  出现Started Jetty server.表示成功  浏览器访问 192.168.1.107:7180 用户名密码默认 admin/admin
  4.关闭CM服务
  1.关闭工作节点: dx07 、 dx08 、 dx09  

[root@dx07 ~]# systemctl stop cloudera-scm-agent

[root@dx08 ~]# systemctl stop cloudera-scm-agent

[root@dx09 ~]# systemctl stop cloudera-scm-agent

  2.关闭服务节点: dx07  

[root@dx07 ~]# systemctl stop cloudera-scm-server

三、页面配置
  继续-同意许可-继续-选择免费版本-继续-继续
  集群名称: DX_CDH_01
  Specify Hosts: 当前管理的主机,全部勾选-继续
  选择方法: 使用parcel
  选择存储库: 选择CDH版本,一定要选择我们本地下载好的版本;选择其他版本会从网上下载
  其他Parcel: 有本地库可以选择,没有则选择无
  点击继续 1.如果已下载不是100%,说明上一步的版本选择有误 2.如果一直卡在分配,看日志 tail -f /var/log/cloudera-scm-server/cloudera-scm-server.log
  检查集群: 分别点击 检查网络 和 检查主机 这里可以查看问题和警告
  Select Services: 选择要安装的服务
  自定义角色分配: 按照集群情况分配节点
  审核更改: 可以对集群配置进行更改
  命令详细信息: 配置启动完成  点击继续 
  点击完成

四、添加服务

  点击主机名右边的下三角---添加服务;具体过程同上边第三步
 

你可能感兴趣的:(大数据)