1.准备三台虚拟机
PC机配置:win10,32G内存
虚拟机:VMware Workstation
CentOS-7-x86_64-DVD-1810.iso
新建三台机器,主节点cm0:内存8G,硬盘35G,两个副节点:内存4G,硬盘35G
主节点我直接安装的图形界面,复制文件的时候比较方便
安装的时候注意,直接选择网络自动连接
2.虚拟机基本配置
卸载openjdk:
查看:rpm -qa | grep java
卸载:openjdk
rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.181-7.b13.el7.x86_64
rpm -e --nodeps java-1.7.0-openjdk-1.7.0.191-2.6.15.5.el7.x86_64
rpm -e --nodeps java-1.8.0-openjdk-1.8.0.181-7.b13.el7.x86_64
rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.191-2.6.15.5.el7.x86_64
卸载mariadb:
查看:rpm -qa |grep mariadb
卸载:rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
关防火墙相关
systemctl stop firewalld
systemctl disable firewalld
systemctl status firewalld
sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config
重启reboot
getenforce
sestatus -v
查看ip指令: ifconfig
修改主机名:
hostname cm0
hostname cm1
hostname cm2
修改hosts文件
把查到的三个ip以及主机名字写到文件末尾,vim /etc/hosts
192.168.122.** cm0
192.168.122.** cm1
192.168.122.** cm2
测试是否能相互发包
ping -c 3 cm0
ping -c 3 cm1
ping -c 3 cm2 每台机器都要测
设置ssh无密码登陆(所有节点)
三台机子都分别使用 ssh-keygen -t rsa 然后一直回车生成密钥
把每台机器的 cat /root/.ssh/id_rsa.pub内容都粘贴出来
合并之后,把文件内容粘贴到每台机器上的 vim /root/.ssh/authorized_keys
在每台机器上测试ssh cm1 ssh cm2 ssh cm0
退出 exit
网络配置
因为三台机器的时间都是自动随系统联网更新的,就没再配置,如果想配置:https://blog.csdn.net/zzq900503/article/details/52982828
安装jdk
每个节点都安装java,这里用的版本是 jdk-8u11-linux-x64.rpm
把安装包复制到 /usr/local/java
rpm -ivh jdk-8u11-linux-x64.rpm
java路径 /usr/java/latest/
安装
配置环境变量:echo "JAVA_HOME=/usr/java/latest/" >> /etc/environment.
安装后查看: java -version
主节点MySQL:
这里用的版本是:mysql-5.7.16-1.el7.x86_64.rpm-bundle.tar
文件复制
cp /home/sen/桌面/mysql-5.7.16-1.el7.x86_64.rpm-bundle.tar /opt/
解压
tar -xvf mysql-5.7.16-1.el7.x86_64.rpm-bundle.tar
rpm -ivh mysql-community-common-5.7.16-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.16-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.16-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.16-1.el7.x86_64.rpm
# 查看mysql是否启动
service mysqld status
# 启动mysql
service mysqld start
# 停止mysql
service mysqld stop
# 重启mysql
service mysqld restart
# 设定开机自启动
vim /etc/rc.local
添加 service mysqld start
确认mysql初始密码
[root@hadoop22 log]# more /var/log/mysqld.log |grep password码
FYnQP=7Daw2u
mysql -p
FYnQP=7Daw2u
set password = password("Mysql_123456");
create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
create database sentry DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
create database amon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
create database oozie DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
create database hue DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
grant all privileges on *.* to 'root'@'cm0' identified by 'Mysql_123456' with grant option;
flush privileges;
主节点安装Cloudera Manager Server 和所有节点配置Agent
复制文件
cp /home/sen/桌面/cloudera-manager-centos7-cm5.7.6_x86_64.tar.gz /opt/
解压
tar -xzvf cloudera-manager-centos7-cm5.7.6_x86_64.tar.gz
cp /home/sen/桌面/mysql-connector-java-5.1.46.tar.gz /opt/
tar -xzvf mysql-connector-java-5.1.46.tar.gz
把mysql-connector-java-5.1.46-bin.jar放到/opt/cm-5.7.6/share/cmf/lib中
cp mysql-connector-java-5.1.46-bin.jar /opt/cm-5.7.6/share/cmf/lib
cd /opt/cm-5.7.6/share/cmf/lib
在主节点初始化CM的数据库:
/opt/cm-5.7.6/share/cmf/schema/scm_prepare_database.sh mysql -hcm0 -uroot -pMysql_123456 --scm-host cm0 scm scm Scm_123456
修改主节点的agent配置文件,仅需修改server_host参数即可:
vim /opt/cm-5.7.6/etc/cloudera-scm-agent/config.ini
server_host=cm0
拷贝到其他节点
scp -r /opt/cm-5.7.6/ root@cm1:/opt/
scp -r /opt/cm-5.7.6/ root@cm2:/opt/
再所有节点创建cloudera-scm用户
useradd --system --home=/opt/cm-5.7.6/run/cloudera-scm-server --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
然后把cdh相关安装包
cp /home/sen/桌面/CDH-5.7.6-1.cdh5.7.6.p0.6-el7.parcel /opt/cloudera/parcel-repo
cp /home/sen/桌面/CDH-5.7.6-1.cdh5.7.6.p0.6-el7.parcel.sha /opt/cloudera/parcel-repo
cp /home/sen/桌面/manifest.json /opt/cloudera/parcel-repo
启动cm和agent
主节点:/opt/cm-5.7.6/etc/init.d/cloudera-scm-server start
所有节点:/opt/cm-5.7.6/etc/init.d/cloudera-scm-agent start
(这个时候保存一下快照,应对一下突发状况)
打开浏览器:http://192.168.122.10:7180
输入用户名密码:admin admin
然后选择免费的版本
随后进行漫长的等待
但是当进入自动检查主机(耗时2分钟左右)然后给出报告,包括需要修改的部分和组件的版本,有可能会出现两个警告
警告一
Cloudera 建议将 /proc/sys/vm/swappiness 设置为最大值 10。当前设置为 60。使用 sysctl 命令在运行时更改该设置并编辑 /etc/sysctl.conf,以在重启后保存该设置。您可以继续进行安装,但 Cloudera Manager 可能会报告您的主机由于交换而运行状况不良。以下主机将受到影响
解决方法
每台受影响的主机运行 echo 10 > /proc/sys/vm/swappiness 即可解决。
警告二
已启用透明大页面压缩,可能会导致重大性能问题。请运行“echo never > /sys/kernel/mm/transparent_hugepage/defrag”以禁用此设置,然后将同一命令添加到 /etc/rc.local 等初始脚本中,以便在系统重启时予以设置。以下主机将受到影响
解决方法:每台受影响的主机运行命令
echo never > /sys/kernel/mm/transparent_hugepage/defrag
并且 vim /etc/rc.local
加入echo never > /sys/kernel/mm/transparent_hugepage/defrag这条命令。
然后点击重新运行进行重新检查