Cloudera Manager则是为了便于在集群中进行Hadoop等
大数据处理相关的服务安装和监控管理的组件,对集群中主机、Hadoop、
Hive、
Spark等服务的安装配置管理做了极大简化。
环境准备
相关包的下载地址:
以下使用的操作系统为CentOS6.9,需要下载以下文件:
jdk-8u144-linux-x64.rpm
mysql-connector-java-5.1.43.tar.gz (解压其中的jar包即可)
cloudera-manager-el6-cm5.12.0_x86_64.tar
CDH-5.12.0-1.cdh5.12.0.p0.29-el6.parcel
CDH-5.12.0-1.cdh5.12.0.p0.29-el6.parcel.sha1
manifest.json
以下操作均需要(root)管理员权限
1.网络配置(所有节点)
修改主机名:vim /etc/sysconfig/network
修改ip与主机名的对应关系:vim /etc/hosts
192.168.3.190 master 192.168.3.176 node1 192.168.3.158 node2
2.打通SSH,设置ssh无密码登陆(所有节点)
执行ssh-keygen -t rsa,一路回车,生成无密码的密钥对。
将公钥复制成认证文件并修改权限:
cat ~/.ssh/id_rsa.pub > ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys
通过scp命令将认证文件拷贝到所有其他节点。
3.安装Oracle的Java(所有节点)
CentOS自带OpenJdk,不过运行CDH5需要使用oracle的JDK。
卸载自带的OpenJdk,使用rpm -qa | grep java查询java相关的包,并rpm -e --nodeps 包名卸载。
下载jdk的rpm安装包,并使用rpm -ivh 包名安装,最后配置环境变量。
rpm -ivh jdk-8u144-linux-x64.rpm
安装mysql服务,service mysqld start启动mysql服务,并根据提示设置
设置开机启动:chkconfig mysqld on
root的初始密码:mysqladmin -u root password 'xxxx'
设置root授权访问所有的数据库: grant all privileges on *.* to 'root'@'%' identified by '123' with grant option;
flush privileges;
5.关闭防火墙和SELinux (所有节点)
关闭防火墙:
service iptables stop (临时关闭) chkconfig iptables off (重启后生效)
关闭SELINUX
setenforce 0 (临时生效) 修改 /etc/selinux/config 下的 SELINUX=disabled (重启后永久生效)
6.所有节点配置NTP服务 (所有节点)
集群中所有主机必须保持时间同步,如果时间相差较大会引起各种问题。
所有节点安装相关组件:yum install ntp。
完成后,配置开机启动:chkconfig ntpd on
开启服务:service ntpd start
检查是否成功,用ntpstat命令查看同步状态,出现以下状态代表启动成功:
unsynchronised
polling server every 64 s
正式安装
解压安装 (所有节点)
cloudera manager的目录默认位置在/opt下,将包导入并解压:
tar zxf cloudera-manager-el6-cm5.12.0_x86_64.tar.gz
创建cloudera-scm用户(所有节点)
useradd --system --home=/opt/cm-5.12.0/run/cloudera-scm-server/ --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
为Cloudera Manager 5建立数据库 并初始化(主节点)
先将JDBC驱动 mysql-connector-java-5.1.43-bin.jar,放到/opt/cm-5.12.0/share/cmf/lib/中。
初始化:
/opt/cm-5.12.0/share/cmf/schema/scm_prepare_database.sh mysql cm -hlocalhost -uroot -p123 --scm-host localhost scm scm scm
修改agent配置文件(所有节点)
修改/opt/cm-5.12.0/etc/cloudera-scm-agent/config.ini中的server_host为主节点的主机名。
准备Parcels,用以安装CDH5
将CHD5相关的Parcel包放到主节点的/opt/cloudera/parcel-repo/目录中。
相关的文件如下:
CDH-5.12.0-1.cdh5.12.0.p0.29-el6.parcel CDH-5.12.0-1.cdh5.12.0.p0.29-el6.parcel.sha1 manifest.json
然后需将CDH-5.12.0-1.cdh5.12.0.p0.29-el6.parcel.sha1重命名为CDH-5.12.0-1.cdh5.12.0.p0.29-el6.parcel.sha
启动脚本
通过/opt/cm-5.12.0/etc/init.d/cloudera-scm-server start启动服务端。
通过/opt/cm-5.12.0/etc/init.d/cloudera-scm-agent start启动Agent服务。
停止服务stop,重启是restart。
CDH5的安装配置
Cloudera Manager Server和Agent都启动以后,就可以进行CDH5的安装配置了。
这时可以通过浏览器访问主节点的7180端口测试一下了(由于CM Server的启动需要花点时间,这里可能要等待一会才能访问),默认的用户名和密码均为admin:
各个Agent节点正常启动后,可以在当前管理的主机列表中看到对应的节点。选择要安装的节点,点继续。
接下来,出现以下包名,说明本地Parcel包配置无误,直接点继续就可以了。
点击,继续,如果配置本地Parcel包无误,那么下图中的已下载,应该是瞬间就完成了,然后就是耐心等待分配过程就行了。
接下来是服务器检查,可能会遇到以下问题: (根据提示操作即可)
Cloudera 建议将 /proc/sys/vm/swappiness 设置为 10。当前设置为 60。
已启动“透明大页面”,它可能会导致重大的性能问题。
临时解决办法:
echo 0 > /proc/sys/vm/swappiness
echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag
长期解决办法:将配置文件写入/etc/rc.local
接下来是选择安装服务:
服务配置,一般情况下保持默认就可以了(Cloudera Manager会根据机器的配置自动进行配置,如果需要特殊调整,自行进行设置就可以了):
接下来是数据库的设置,需要创建一些数据库:
mysql -uroot -pxxxx进入mysql命令行,创建以下数据库:
--hive数据库 create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci; --oozie数据库 create database oozie DEFAULT CHARSET utf8 COLLATE utf8_general_ci; --hue数据库 create database hue DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
问题:
1、Logon denied for user/password. Able to find the database server and database, but logon request was rejected
解决办法:创建一个新的用户并授权
grant all privileges on *.* to 'user'@'主机名' identified by '密码' with grant option;
设置root授权访问以上所有的数据库
flush privileges;
2、hive和oozie默认都没有带mysql的驱动,需拷贝jar包到依赖目录
hive:/opt/cloudera/parcels/CDH-5.12.0-1.cdh5.12.0.p0.29/lib/hive/lib/
oozie:/opt/cloudera/parcels/CDH/lib/oozie/libtools
3、如果hue连不上,会报错:Unexpected error. Unable to verify database connection.
这是因为Centos最小安装,缺了个东西:yum install -y python-lxml
下面是集群设置的审查页面,全部保持默认配置即可:
接下静静地等待即可。
- 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:4.安装Oracle RAC FAQ-4.3.Oracle 集群节点间连通失败
1.检查节点连通性的错误 [grid@linuxrac1 grid]$ ./runcluvfy.sh stage -post hwos -n linuxrac1,linuxrac2 -verbose ...
- 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:4.安装Oracle RAC FAQ-4.7.Oracle 11G R2 RAC修改public网络IP
问题:Linuxrac2节点的public网IP被占用,导致集群节点2无法访问 1.禁止相关CRS资源的启动,停止这些资源(vip,listener,scan,scan_listener,databa ...
- 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:3.安装Oracle RAC-3.2.安装 cvuqdisk 软件包
3.2.安装 cvuqdisk 软件包 3.2.1. 准备Oracle Grid安装包 上传Grid .Oracle 安装文件: sftp> put E:\Software\linux.x64 ...
- 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:2.搭建环境-2.7. 配置资源与参数
2.7.配置资源与参数 2.7.1. 修改主机名称 [root@linuxrac1 ~]# cd /etc/sysconfig [root@linuxrac1 sysconfig]# vi netwo ...
- 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:2.搭建环境-2.6. 安装Oracle所依赖的必要包
2.6. 安装Oracle所依赖的必要包 2.6.1. 检查Oracle所依赖的必要rpm包 [root@localhost /]#rpm -q binutils compat-libstdc elf ...
- 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:2.搭建环境-2.5. 配置网络
2.5. 配置网络 2.5.1. 配置网络 Oracle Rac数据库涉及到公用网络和私有网络,因此要做网络划分和IP地址规划,下表列出了要安装的RAC数据库对应的IP地址.主机名以及网络连接类型: ...
- 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:2.搭建环境-2.4. 安装JDK
2.4.安装JDK 2.4.1.准备JDK 在百度搜索:JDK下载 2.4.2.上传JDK put E:\软件安装文件\jdk-8u11-linux-x64.rpm /home/linuxrac1/D ...
- 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:2.搭建环境-2.3配置共享磁盘
2.3.配置共享磁盘 2.3.1.创建共享磁盘 在cmd中进入WMware Workstation 10.0 安装目录: 1.创建存储Oracle Clusterware文件 (Oracle Clu ...
- 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:1.资源准备
最近,在VmwareStation 10虚拟机上,基于CentOS5.4安装Oracle 11g RAC,并把过程记录下来.刚开始时,是基于CentOS 6.4安装Oracle 11g RAC, 没有 ...
随机推荐
- vue中的.native修饰符
如果你想在某个组件的根元素上绑定事件,直接使用 @click=''function' 是不生效的,我们可以添加.native修饰符 @click.native=''function'',请看以下dem ...
- 安装win10 和win中的一些杂项问题
reg中的 policies是政策/策略, 主要是指 控制面板中的一些控制项目, 其中 explorer是 控制面板的 显示项目... DWORD值是一个32位(4个字节:即双字)长度的数值, 是数字 ...
- ffmpeg 图像转视频 视频转图像
ffmpeg使用 以下两条可使用,具体可参考:https://blog.csdn.net/pkueecser/article/details/8555261pic to video:ffmpeg -f ...
- JavaScript-DOM(3)
事件处理 事件类型 <body> <!--方式1:直接带html代码中嵌入js代码--> <button onclick="console.log('事件1') ...
- SELinux 的初始和基本操作
SELinux 主要作用就是最大限度地减小系统中服务进程可访问的资源(最小权限原则). 设想一下,如果一个以 root 身份运行的网络服务存在 0day 漏洞,黑客就可以利用这个漏洞,以 root 的 ...
- android SDK SDK Manager.exe 无法打开,一闪而过最终解决办法
这个问题是由于Android Studio 自动更新之后 ,针对android-sdk-windows\tools 这个文件进行了拆分删除 这里做一下说明: 经过Android studio处理之后, ...
- python的类和对象——类的静态字段番外篇
什么是静态字段 在开始之前,先上图,解释一下什么是类的静态字段(我有的时候会叫它类的静态变量,总之说的都是它.后面大多数情况可能会简称为类变量.): 我们看上面的例子,这里的money就是静态字段,首 ...
- Bootstrap框架整理
bootstrap框架的介绍 栅格系统 bootstrap框架把整个浏览器的宽度分为12列,并能适配各种屏幕的尺寸大小进行相应的匹配,达到调节页面大小的效果. 首先需要放置一个容器div,class= ...
- ProtoBuf3.3 安装记录
翻了很多教程,下载了 PB 的源码在自己的 mac 上编译及安装,记录下新的 1. 首先是下载源码了 https://github.com/google/protobuf/releases 虽然是 g ...
- 解决import caffe 时no module named protobuf的报错
ProtoBuf是Google开发的可以实现内存与非易失存储介质(硬盘文件等等)交换时的协议接口.Caffe源码中大量使用了ProtoBuf作为权值和模型参数的载体. 在Anaconda下打开Anac ...