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, 没有 ...
随机推荐
- Android一个工程引用另一个工程的方法
一个工程包含另一个工程.相当于一个jar包的引用.但又不是jar包反而像个package 现在已经有了一个Android工程A.我们想扩展A的功能,但是不想在A的基础上做开发,于是新建了另外一个And ...
- 在pycharm中开发vue
一.在pycharm中开发vue ''' webstorm(vue) pycharm(python) goland(Go语言) idea(java) andrioStuidio(安卓) Php(PHP ...
- topcoder srm 585 div1
problem1 link 最优的策略就是从最低下一层开始,每两层的三个节点的子树都可以用一次遍历覆盖. problem2 link 从大到小依次放置每一种数字,并记录已经放置的数字一共有多少个$m$ ...
- Windows下Python安装numpy+mkl,Scipy和statsmodels
最近做时间序列分析需要用到Python中的statsmodels,但是安装过程中遇到很头疼的问题,Google.Stackover各种都没有找到合适的解决办法,而且貌似还有很多同学也在吐槽Window ...
- linux shell中如何删除指定后缀名的文件?
答: find . -name '*.txt' -delete 这条命令含义如下: 从当前目录开始查找以txt为后缀名的文件并删除掉
- Leetcode480-Binary Tree Paths-Easy
480. Binary Tree Paths Given a binary tree, return all root-to-leaf paths. Example Example 1: Input: ...
- HDFS数据节点DataNode未启动解决方法
在解决这个问题的过程中,我又是积累了不少经验... 首先让我搞了很久的问题是,书上说进程全部启动的命令是/bin/start-all.sh,但是当我执行的时候显示command not found.后 ...
- springCloud全家桶
Spring Cloud 入门教程(一): 服务注册 eureka是一个高可用的组件,它没有后端缓存,每一个实例注册之后需要向注册中心发送心跳,在默认情况下erureka server也是一个eure ...
- Fabric 1.0交易流程
这篇文章详细介绍fabric的交易流程,以图片加文字的形式呈现. Fabric 1.0交易流程 fabric中的所有交易都是通过chaincode执行 1.应用程序客户端通过SDK调用证书服务(CA) ...
- JavaScript基础二
1.7 常用内置对象 所谓内置对象就是ECMAScript提供出来的一些对象,我们知道对象都是有相应的属性和方法 1.7.1 数组Array 1.数组的创建方式 字面量方式创建(推荐大家使用这种方式, ...