大数据管理框架CDP集群搭建

立山  金牌会员 | 2023-8-1 20:28:10 | 来自手机 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 580|帖子 580|积分 1740

1 搭建准备

HostNameIP内存CPU磁盘cdp01172.29.0.11016G4核100Gcdp02172.29.0.11116G4核100Gcdp03172.29.0.11216G4核100G组件版本Cloudera Manager7.1.4CDH7.1.7OpenJDK1.8.0_372CentOS7.6MySQL8.0.342 基础配置

2.1 hosts配置(所有主机)


  • 编辑hosts文件
    vim /etc/hosts
    删除原IP配置,填入以下内容
    1. 172.29.0.110 cdp01
    2. 172.29.0.111 cdp02
    3. 172.29.0.112 cdp03
    复制代码
  • 设置主机名称
    cdp01节点
    hostnamectl set-hostname cdp01 && bash
    cdp02节点
    hostnamectl set-hostname cdp02 && bash
    cdp03节点
    hostnamectl set-hostname cdp03 && bash
2.2 关闭 Selinux(所有主机)
  1. setenforce 0
  2. sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
复制代码
2.3 关闭防火墙(所有主机)
  1. systemctl stop firewalld
  2. systemctl disable firewalld
复制代码
2.4 设置swap(所有主机)
  1. cat >> /etc/sysctl.conf <<EOF
  2. vm.swappiness=1
  3. EOF
复制代码
2.7 安装ntpd服务(所有主机)

yum install -y ntp ntpdate

  • cdp01 节点
    vim /etc/ntp.conf
    1. cat >> /etc/security/limits.conf <<EOF
    2. * soft nofile 65535
    3. * hard nofile 65535
    4. hdfs - nofile 32768
    5. mapred - nofile 32768
    6. hbase - nofile 32768
    7. hdfs - noproc 32768
    8. mapred - noproc 32768
    9. hbase - noproc 32768
    10. EOF
    复制代码
  • cdp02 节点
    vim /etc/ntp.conf
    1. echo never > /sys/kernel/mm/transparent_hugepage/enabled
    2. echo never > /sys/kernel/mm/transparent_hugepage/defrag
    3. if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
    4.         echo never > /sys/kernel/mm/transparent_hugepage/enabled
    5. fi
    6. if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
    7.         echo never > /sys/kernel/mm/transparent_hugepage/defrag
    8. fi
    复制代码
  • cdp03 节点
    vim /etc/ntp.conf
    1. // 注:192.168.191.2 和 255.255.255.0是集群所在网段的网关和子网掩码
    2. restrict 192.168.191.2 mask 255.255.255.0 nomodify notrap
    3. server 127.127.1.0
    4. fudge 127.127.1.0 stratum 8
    复制代码
  • 在manager( cdp01 )启动ntp之后,其余各节点启动ntp服务之前,master(cdp02 )和worker( cdp03 )节点执行命令,同步manager时间启动 cdp01 节点ntpd服务
    1. restrict 192.168.191.2  mask 255.255.255.0  nomodify notrap
    2. server cdp02 prefer
    3. server 127.127.1.0
    4. fudge 127.127.1.0 stratum 9
    复制代码
  • 在cdp02、cdp03 节点进行时间同步
    1. server cdp01 prefer
    2. server cdp02
    复制代码
  • 启动cdp02、cdp03节点ntpd服务
    1. restrict 192.168.191.2  mask 255.255.255.0  nomodify notrap
    2. server cdp02 prefer
    3. server 127.127.1.0
    4. fudge 127.127.1.0 stratum 9
    复制代码
  • 查看ntp状态
    1. ntpdate cdp01
    复制代码
2.8 安装http服务(所有主机)


  • 安装httpd服务
      yum install httpd -y
  • 开启httpd服务
    systemctl start httpd.service
  • 开机⾃动启动httpd服务
    chkconfig httpd on
2.9 配置SSH免密(cdp01节点)


  • 在要免密登录的主机上生成密钥
    ssh-keygen -t rsa # 一路回车
    在~/.ssh目录下创建两个文件id_rsa(私钥),id_rsa.pub(公钥)
  • 将生成的公钥发到要远程连接的服务器上
    1. systemctl start ntpd
    2. systemctl enable ntpd
    复制代码
    注:这一次需要输入密码,后面就不用了;如果主机未设置账号密码登录需要先设置账号密码;配置后可以通过将/etc/ssh/sshd_config文件中的PasswordAuthentication yes修改为PasswordAuthentication no来关闭账号密码登录
    1. ntpq -p
    2. ’*’ 表示当前使用的时钟源,’+’ 表示这些源可作为 NTP 源
    复制代码
  • 验证免密登录效果
    1. ssh-copy-id cdp01
    2. ssh-copy-id cdp02
    3. ssh-copy-id cdp03
    复制代码
3 配置本地yum源

3.1 配置cm


  • 安装createrepo
    1. vim /etc/ssh/sshd_config
    2. 修改如下:
    3. PasswordAuthentication no
    4. 修改后使其生效:
    5. systemctl restart sshd
    复制代码
  • 下载cm软件包
    1. ssh root@cdp02
    2. 退出输入:
    3. exit
    复制代码
    下载所需软件包,如果下载慢可以自己下载然后上传到服务器
    1. yum install createrepo
    复制代码
  • 创建repo
    1. mkdir -p /var/www/html/cm7.1.4
    2. cd /var/www/html/cm7.1.4
    复制代码
  • 下载cdh软件包
    1. wget -nd -r -l1 --no-parent https://archive.cloudera.com/cm7/7.1.4/redhat7/yum/RPMS/x86_64/  
    2. wget https://archive.cloudera.com/cm7/7.1.4/redhat7/yum/RPM-GPG-KEY-cloudera
    3. wget https://archive.cloudera.com/cm7/7.1.4/allkeys.asc
    复制代码
    下载所需软件包,如果下载慢可以自己下载然后上传到服务器
    1. mkdir -p /var/www/html/cdh7.1.7
    2. cd /var/www/html/cdh7.1.7
    复制代码
  • 创建repo
    1. mkdir -p /var/www/html/cm7.1.4
    2. cd /var/www/html/cm7.1.4
    复制代码
  • 配置本地yum源
    1. wget -nd -r -l1 --no-parent https://archive.cloudera.com/cdh7/7.1.7.0/parcels/
    复制代码
    配置以下内容:
    1. createrepo .
    复制代码
    退出保存后,执⾏以下命令:
    1. cd /etc/yum.repos.d
    2. vim cm7.repo
    复制代码
    查看配置结果
    1. [cm]
    2. name=cm,Version 7.1.4
    3. baseurl=http://172.29.0.110/cm7.1.4/
    4. enable=1
    5. gpgcheck=0
    6. [cdh]
    7. name=cdh
    8. baseurl=http://172.29.0.110/cdh7.1.7/
    9. enable=1
    10. gpgcheck=0
    复制代码
    可以看到以下内容:

    可以通过外网地址查看配置结果
    1. yum clean all
    2. yum makecache
    复制代码
  • 分发到其他节点
    在cdp01上配置好本地yum仓库之后,将cm7.repo⽂件分发到其他节点/etc/yum.repos.d目录
4 安装jdk(所有主机)

yum -y install java-1.8.0-openjdk
5 安装MySQL(cdp01)

5.1 安装并启用MySQL源

使用wget从MySQL网站下载MySQL源rpm文件:
  1. yum list |grep cloudera
复制代码
使用rpm命令来安装下载的rpm包:
  1. //xxx.xxx.xxx.xxx为cdp01外网IP
  2. http://xxx.xxx.xxx.xxx/cm7.1.4/
  3. http://xxx.xxx.xxx.xxx/cdh7.1.7/
复制代码
检查MySQL 8.0源已经成功添加到yum程序库中:
  1. cd /root/downloads/
  2. wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
复制代码
5.2 使用yum命令安装MySQL 8.0
  1. rpm -ivh mysql80-community-release-el7-3.noarch.rpm
复制代码
5.3 启动并检查MySQL服务器
  1. yum repolist enabled | grep "mysql.*-community.*"
复制代码
5.4 修改Root密码

查找密码并登陆Mysql
  1. rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
  2. yum install -y mysql-community-server
复制代码
  1. systemctl start mysqld
  2. systemctl status mysqld
复制代码
  1. cat /var/log/mysqld.log | grep password
  2. mysql -u root -p #输入密码
复制代码
5.5 my.cnf配置

vi /etc/my.cnf
  1. alter user root@localhost identified by '密码';
  2. FLUSH PRIVILEGES;
复制代码
5.6 重启服务
  1. use mysql;
  2. update user set host='%' where user = 'root';
  3. commit;
  4. exit;
复制代码
5.7 创建CM元数据库
  1. #设置编码为utf-8
  2. character_set_server=utf8
  3. init_connect='SET NAMES utf8'
复制代码
6 安装jdbc驱动(所有主机)
  1. systemctl stop mysqld
  2. systemctl enable mysqld
  3. systemctl start mysqld
复制代码
7 安装cm server(cdp01)

7.1 在cdp01上通过yum安装Cloudera Manager Server
  1. CREATE DATABASE scm DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
  2. CREATE USER 'scm'@'%' IDENTIFIED BY '密码';
  3. GRANT ALL ON scm.* TO 'scm'@'%';
  4. CREATE DATABASE amon DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
  5. CREATE USER 'amon'@'%' IDENTIFIED BY '密码';
  6. GRANT ALL ON amon.* TO 'amon'@'%';
  7. CREATE DATABASE rman DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
  8. CREATE USER 'rman'@'%' IDENTIFIED BY '密码';
  9. GRANT ALL ON rman.* TO 'rman'@'%';
  10. CREATE DATABASE hue DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
  11. CREATE USER 'hue'@'%' IDENTIFIED BY '密码';
  12. GRANT ALL ON hue.* TO 'hue'@'%';
  13. CREATE DATABASE hive DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
  14. CREATE USER 'hive'@'%' IDENTIFIED BY '密码';
  15. GRANT ALL ON hive.* TO 'hive'@'%';
  16. CREATE DATABASE ranger DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
  17. CREATE USER 'rangeradmin'@'%' IDENTIFIED BY '密码';
  18. GRANT ALL ON ranger.* TO 'rangeradmin'@'%';
  19. CREATE DATABASE nav DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
  20. CREATE USER 'nav'@'%' IDENTIFIED BY '密码';
  21. GRANT ALL ON nav.* TO 'nav'@'%';
  22. CREATE DATABASE navms DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
  23. CREATE USER 'navms'@'%' IDENTIFIED BY '密码';
  24. GRANT ALL ON navms.* TO 'navms'@'%';
  25. CREATE DATABASE oozie DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
  26. CREATE USER 'oozie'@'%' IDENTIFIED BY '密码';
  27. GRANT ALL ON oozie.* TO 'oozie'@'%';
  28. flush privileges;
复制代码
7.2 安装完后可以查看服务状态
  1. cd /root/downloads/
  2. wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.46.tar.gz
  3. mkdir -p /usr/share/java
  4. tar zxvf mysql-connector-java-5.1.46.tar.gz
  5. scp mysql-connector-java-5.1.46/mysql-connector-java-5.1.46-bin.jar /usr/share/java/mysql-connector-java.jar
  6. scp mysql-connector-java-5.1.46/mysql-connector-java-5.1.46-bin.jar cdp02:/usr/share/java/mysql-connector-java.jar
  7. scp mysql-connector-java-5.1.46/mysql-connector-java-5.1.46-bin.jar cdp03:/usr/share/java/mysql-connector-java.jar
复制代码
7.3 初始化mysql
  1. yum -y install cloudera-manager-daemons cloudera-manager-agent cloudera-manager-server
复制代码
7.4 启动Cloudera Manager Server
  1. systemctl start cloudera-scm-server.servicecd /root/downloads/
  2. wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.46.tar.gz
  3. mkdir -p /usr/share/java
  4. tar zxvf mysql-connector-java-5.1.46.tar.gz
  5. scp mysql-connector-java-5.1.46/mysql-connector-java-5.1.46-bin.jar /usr/share/java/mysql-connector-java.jar
  6. scp mysql-connector-java-5.1.46/mysql-connector-java-5.1.46-bin.jar cdp02:/usr/share/java/mysql-connector-java.jar
  7. scp mysql-connector-java-5.1.46/mysql-connector-java-5.1.46-bin.jar cdp03:/usr/share/java/mysql-connector-java.jar.service
复制代码
7.5 检查服务日志,等待启动完成
  1. sudo /opt/cloudera/cm/schema/scm_prepare_database.sh mysql scm scm '之前设置的密码'
复制代码
7.6 检查端口是否监听
  1. systemctl start cloudera-scm-server.service
  2. systemctl status cloudera-scm-server.service
复制代码
7.7 访问CM 创建集群

通过 http://cdp01:7180/ 访问CM,输⼊初始账号密码 admin/admin 即可登陆

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

立山

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表