centos7 安装CDH6集群
环境安装包准备
centos7安装包下载
使用VMware虚拟机安装centos7
克隆虚拟机(至少克隆三台虚拟机) 我的配置(4G内存 8和处理器 100G 硬盘)
下载cdh包
下载地址:
https://archive.cloudera.com/cdh6/6.2.1/parcels/
https://archive.cloudera.com/cm6/6.2.1/redhat7/yum/RPMS/x86_64/
安装(克隆)虚拟机
安装VMware
解压安装包 下一步傻瓜式安装
安装Linux 系统
打开VMware 创建虚拟机
选择自定义安装 点击下一步
选择默认 点击 下一步
选择稍后安装操作系统点击下一步
选择LINUX 选择centos 64位 点击 下一步
选择虚拟机名称 如 node01 选择虚拟机安装位置 点击下一步
选择处理器 数量 选择 每个处理器的核数 点击下一步
选择虚拟机的内存大小 点击下一步
选择 NAT 网络 选择下一步
默认 选择下一步
选择默认 下一步
创建新虚拟磁盘 下一步
调整磁盘大小 将虚拟磁盘拆分多个文件 点击下一步
默认 点击下一步
点击完成
VMware 创建虚拟机完成
开启虚拟机安装系统
配置VMware 虚拟网络 点击编辑 选择虚拟网络编辑器
选择vmnet8 选择 net 将下面的nat 模式勾选上 子网IP 填上 局域网段 例如192.168.100.0
子网掩码255.255.255.0 选择右上NAT设置 填写网关
点击确定 点击确定
点击CD/DVD配置系统位置选择使用ISO 选择ISO文件存放位置 点击确定
点击开启次虚拟机
选择 默认 点击 continue
设置时间
选择上海 点击 done
点击 LANGUAGESUPPORT 设置语言
选择 中文 简体中文 点击Done
点击 SOFWARE SELECTION
选择第一个 右侧全部现则 点击Done
分配磁盘
1)/—根分区—20GB
2)/boot—启动分区----200MB
3)swap—交换分区----如果物理内容<=8G,通常情况下SWAP是内存的2倍,8GB< 内存<16G :1.5倍 <16G :1倍
就类似于WINDOWS下的虚拟内存,当物理内存不足时,临时顶替上做为内存使用是一种独立的格式
4)/u01—应用分区—剩下的都给应用分区
设置网络
设置root 用户
安装完成后 点击 reboot 重启系统 后 进入系统 设置网络
cd /etc/sysconfig/network-scrpipts
vi ifcfg-eno16777736
ONBOOT=yes
BOOTPROTO= static
NAME= eno16777736
DEVICE= eno16777736
IPADDR=192.168.100.202
NETWORK= 192.168.100.2
GATEWAY= 192.168.100.2
NETSTST = 255.255.255.0
DNS1 = 8.8.8.8
DNS2= 114.114.114.114
ping wwww.baidu.com
可以ping通 系统安装完成、
设置 hosts
克隆虚拟机
开启虚拟机 修改mac地址
开机 找到、/etc/sysconfig/network-scripts/
修改配置文件
配置虚拟机
集群环境设置免密登陆
ssh-keygen -t rsa
# (四个回车)
# 执行完这个命令后,会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)
# 将公钥拷贝到要免密登陆的目标机器上
ssh-copy-id node01
# 将汇聚在一起的公钥文件发送到node02、node03上
scp /root/.ssh/authorized_keys node02:$PWD
scp /root/.ssh/authorized_keys node03:$PWD
集群机器时间同步
yum install ntpdate
ntpdate cn.pool.ntp.org
安装基础环境
安装依赖包
yum install -y cyrus-sasl-plain cyrus-sasl-gssapi portmap fuse-libs bind-utils libxslt fuse
yum install -y /lib/lsb/init-functions createrepo deltarpm python-deltarpm
yum install -y mod_ssl openssl-devel python-psycopg2 MySQL-python
安装httpd(只需要在部署本地yum源的机器上安装即可,不用三台全部安装)
yum install -y createrepo
配置host
vim /etc/hosts
192.168.52.150 hadoop01
192.168.52.151 hadoop02
192.168.52.152 hadoop03
192.168.52.153 hadoop04
关闭防火墙
查看防火墙状态:
systemctl status firewalld.service
绿的running表示防火墙开启
执行关闭命令:
systemctl stop firewalld.service
再次执行查看防火墙命令:
systemctl status firewalld.service
执行开机禁用防火墙自启命令 :
systemctl disable firewalld.service
完成
关闭selinux(在配置文件中第一次设置时需要重启服务器)
setenforce 0
vim /etc/selinux/config
将SELINUX=enforcing改为SELINUX=disabled
reboot
安装httpd服务
yum install httpd -y(已安装过)
systemctl start httpd.service
设置开机启动
systemctl enable httpd.service
cd /var/www/html/
mkdir -p cm6/6.2.1/redhat7/yum/RPMS/x86_64/
上传cmd6中的文件到此目录,上传allkeys.asc文件到/var/www/html/cm6/6.2.1/目录下
访问测试:http://hadoop01/cm6/6.2.1/redhat7/yum/RPMS/x86_64/
生成repodata目录
cd /var/www/html/cm6/6.2.1/redhat7/yum
createrepo .
配置本地yum源
cd /etc/yum.repos.d/
vim cloudera-manager.repo
填写:
[cloudera-manager]
name=Cloudera Manager
baseurl=http://hadoop01/cm6/6.2.1/redhat7/yum/
gpgcheck=0
enabled=1
执行命令:
yum clean all
yum list | grep cloudera
创建cloudera-scm用户(centos7要求必须有,centos6没有要求)
useradd cloudera-scm
passwd cloudera-scm
--免密钥登录
echo "cloudera-scm ALL=(root)NOPASSWD:ALL" >> /etc/sudoers
su - cloudera-scm
exit
安装mysql服务
第一步:下载repo,并安装mysql-server
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql-community-server
这个步骤需要网络,并根据网速会花些时间,安装完成后会覆盖之前的mariadb。
如果提示-bash: wget: 未找到命令,则:yum -y install wget
第二步:mysql设置
启动:
systemctl start mysqld.service
查看运行情况:
systemctl status mysqld.service
第三步:登录mysql
查看mysql密码
grep "password" /var/log/mysqld.log
登录mysql
mysql -uroot -p
第四步:修改密码
取消mysql密码规范限制
set global validate_password_policy=0;
set global validate_password_length=1;
重设密码
alter user 'root'@'localhost' identified by '123456';
flush privileges;
第五步:卸载repo包
此时还有一个问题,因为安装了yum repository,以后每次yum都会自动更新,耗费时间,所以卸载掉:
yum -y remove mysql57-community-release-el7-10.noarch
安装mysql(后续作为元数据库)
create database scm DEFAULT CHARACTER SET utf8;
grant all PRIVILEGES on *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
grant all PRIVILEGES on *.* TO 'root'@'localhost' IDENTIFIED BY 'root' WITH GRANT OPTION;
grant all PRIVILEGES on *.* TO 'root'@'hadoop01' IDENTIFIED BY 'root' WITH GRANT OPTION;
flush privileges;
安装cdh
在一台主机上安装
安装Server服务
yum install -y oracle-j2sdk1.8-1.8.0+update181-1.x86_64
yum install -y enterprise-debuginfo-6.2.1-1426065.el7.x86_64
yum install -y cloudera-manager-server-6.2.1-1426065.el7.x86_64
yum install -y cloudera-manager-server-db-2-6.2.1-1426065.el7.x86_64
注意:如果在yum源中添加了新的包时:
1.需要删除之前的repodata文件后,重新生成;
2.重启httpd服务
3.清除yum缓存 yum clean all
设置元数据库为mysql
设置元数据库为mysql--前提是安装ClouderaManager Server服务
/opt/cloudera/cm/schema/scm_prepare_database.sh -h localhost mysql scm root root
旧版本:/usr/share/cmf/schema/scm_prepare_database.sh -h localhost mysql scm root root
提示ERROR JDBC Driver com.mysql.jdbc.Driver not found.
需要上传mysql驱动包jar到/opt/cloudera/cm/lib目录下。
查看:cat /etc/cloudera-scm-server/db.properties
启动server服务进程(查看7180端口)
systemctl start cloudera-scm-server
查看启动日志:
tail -f /var/log/cloudera-scm-server/cloudera-scm-server.log
查看启动状态:
systemctl status cloudera-scm-server
netstat -an | grep 7180
配置本地parcel包
注意:必须要在数据库初始化后,将parcel文件放置到/opt/cloudera/parcel-repo目录中
4.1 上传cdh6的parcel等文件到opt/cloudera/parcel-repo
4.2 重命名密钥文件名
mv CDH-6.2.1-1.cdh6.2.1.p0.1425774-el7.parcel.sha1 CDH-6.2.1-1.cdh6.2.1.p0.1425774-el7.parcel.sha
开始安装
访问Server:http://node01:7180/cmf/login
账号密码均为admin
设置Parcel 更新频率为1分钟
swappiness和透明化
临时生效:
sysctl -w vm.swappiness=10
echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled
永久生效:
echo "vm.swappiness=10" >> /etc/sysctl.conf
echo "echo never > /sys/kernel/mm/transparent_hugepage/defrag" >> /etc/rc.local
echo "echo never > /sys/kernel/mm/transparent_hugepage/enabled" >> /etc/rc.local
在页面安装cloudera-scm-agent 时遇到的问题解决方法
安装 agent 无法接收到agent发出的检测信号
$> ps -ef | grep supervisord
$> kill -9 <processID>
sudo service cloudera-scm-agent restart
查看这个进程,然后杀死进程,然胡重新启动就可以了。
然后在操作下面的步骤就可以了。
# ps aux | grep super
root 18949 0.0 0.1 223624 12996 ? Ss 11:16 0:00 /opt/cm-5.7.0/lib64/cmf/agent/build/env/bin/python /opt/cm-5.7.0/lib64/cmf/agent/build/env/bin/supervisord
root 23390 0.0 0.0 112656 972 pts/0 S+ 11:37 0:00 grep --color=auto super
#kill 18949
sudo service cloudera-scm-agent restart
然后重新再安装就可以了。至此问题解决。
修改/etc/hostname
node01
修改/etc/hosts
192.168.xx.xx node01
Loaded plugins: fastestmirror
yum install的时候提示:Loaded plugins: fastestmirror
fastestmirror是yum的一个加速插件,这里是插件提示信息是插件不能用了。
不能用就先别用呗,禁用掉,先yum了再说。
1.修改插件的配置文件
vi /etc/yum/pluginconf.d/fastestmirror.conf
enabled = 1//由1改为0,禁用该插件
1
2.修改yum的配置文件
vi /etc/yum.conf
plugins=1//改为0,不使用插件
1
3 清除缓存并重新构建yum 源
yum clean all
yum clean dbcache
yum makecache
时间同步问题
r=auto super
#kill 18949
sudo service cloudera-scm-agent restart
然后重新再安装就可以了。至此问题解决。
```shell
修改/etc/hostname
node01
修改/etc/hosts
192.168.xx.xx node01
Loaded plugins: fastestmirror
yum install的时候提示:Loaded plugins: fastestmirror
fastestmirror是yum的一个加速插件,这里是插件提示信息是插件不能用了。
不能用就先别用呗,禁用掉,先yum了再说。
1.修改插件的配置文件
vi /etc/yum/pluginconf.d/fastestmirror.conf
enabled = 1//由1改为0,禁用该插件
1
2.修改yum的配置文件
vi /etc/yum.conf
plugins=1//改为0,不使用插件
1
3 清除缓存并重新构建yum 源
yum clean all
yum clean dbcache
yum makecache
时间同步问题
ssh免密登录问题