基于Ubuntu环境下的CM+kylin搭建
来源:互联网 发布:方知父母恩上一句 编辑:程序博客网 时间:2024/06/05 00:22
本次采用离线安装的方式
软件准备:
官方安装文档:http://www.cloudera.com/documentation/enterprise/5-6-x/topics/installation.html
相关包的下载地址:
Cloudera Manager地址:http://archive.cloudera.com/cm5/cm/5/
这里选择5.5.6
cloudera-manager-trusty-cm5.5.6_amd64.tar.gz
CDH安装包地址:http://archive.cloudera.com/cdh5/parcels/5.5.6/
因为我们的操作系统是ubuntu14.0.4,所以需要下载以下文件:
CDH-5.5.6-1.cdh5.5.6.p0.2-trusty.parcel
CDH-5.5.6-1.cdh5.5.6.p0.2-trusty.parcel.sha1
manifest.json
这里选择的是5.5.6版本
具体安装步骤:
1)机器配置(因为启动CM至少需要8G内存,所以用作CM的机器内存至少需要8G):
修改三台机器的IP和主机名,以及主机名跟IP的映射关系(三台机器都要修改)
确保所有机器root密码一致或者sudo免输入密码用户的用户名、密码一致,最好使用root进行安装
修改 /etc/hosts
192.168.23.1 master
192.168.23.2 slaver
192.168.23.3 slaver
2)关闭防火墙: ufw disable 所有机器都要关闭
3)设置SSH免密登录(所有机器):
把三台机器下的id_rsa.pub拷贝到其他两台机器的authorized_keys下
拷贝完成以后用ssh +主机名进行测试登录
4)关闭IPV6:
首先查看IPV6的状态 cat /proc/sys/net/ipv6/conf/all/disable_ipv6
显示0说明开启,1说明关闭
如果开启关闭IPV6:vim /etc/sysctl.conf 添加如下几行
#disable IPv6
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
5)配置JDK(所有机器):
首先卸载系统自带的JDK:apt-get remove openjdk*
解压下载好的JDK
tar zxvfjdk-7u67-linux-x64.tar.gz -C /usr/lib/jvm/
JDK 路径:/usr/lib/jvm/jdk1.7.0_67
6)配置环境变量(所有机器):
vim /etc/profile
添加如下几行:
#JAVA_HOME
exportJAVA_HOME=/usr/lib/jvm/jdk1.7.0_67
exportCLASSPATH=".:$JAVA_HOME/lib:$CLASSPATH"
export PATH="$JAVA_HOME/bin:$PATH"
保存退出,使配置生效,source /etc/profile
7)配置ntp时间同步
安装ntp:apt-getinstall ntp
开启主节点的NTP服务,其他节点从主节点同步ntpdate 192.168.23.2
系统时间与BIOS时间同步:
查看BIOS时间 hwclock
系统时间与BIODS时间同步:hwlock –systohc
查看ntp进程 ps aux | grep ntp
其他节点编写时间同步定时脚本: crontab –e
0-59/10 * * * * /usr/sbin/ntpdate -u 192.168.23.2
8)安装HTTP服务(CM是基于HTTP服务访问的,原先的环境没有HTTP):
安装命令:apt-get install apache2
启动命令:/etc/init.d/apache2 start
如果访问失败请修改etc/apache2/apache2.conf,在里面添加一行
ServiceName localhost:80
9)安装数据库 这里用mysql用来保存CM的数据据信息,如果用postgresql可以跳过这一步:
apt-get install mariadb-server-5.5
mysql对应CM的参数设置网址http://www.cloudera.com/documentation/enterprise/latest/topics/cm_ig_mysql.html?scroll=cmig_topic_5_5_2_unique_1
启动mysql : service mysql restart
创建相关数据库:进入mysql:mysql –u root –p
MySQL的一些简单管理:
启动MySQL服务: sudo start mysql
停止MySQL服务: sudo stop mysql
修改 MySQL 的管理员密码: sudo mysqladmin -u root password newpassword
设置远程访问(正常情况下,mysql占用的3306端口只是在IP127.0.0.1上监听,拒绝了其他IP的访问(通过netstat可以查看到)。取消本地监
听需要修改 my.cnf 文件:):
sudo vi /etc/mysql/my.cnf
bind-address = 127.0.0.1 //找到此内容并且注释
进入以后执行下面命令:
create database amon DEFAULT CHARACTER SETutf8;
grant all on amon.* TO 'amon'@'%'IDENTIFIED BY 'amon_password';
grant all on amon.* TO 'amon'@'CDH'IDENTIFIED BY 'amon_password';
create database smon DEFAULT CHARACTER SETutf8;
grant all on smon.* TO 'smon'@'%' IDENTIFIEDBY 'smon_password';
grant all on smon.* TO 'smon'@'CDH'IDENTIFIED BY 'smon_password';
create database rman DEFAULT CHARACTER SETutf8;
grant all on rman.* TO 'rman'@'%'IDENTIFIED BY 'rman_password';
grant all on rman.* TO 'rman'@'CDH'IDENTIFIED BY 'rman_password';
create database hmon DEFAULT CHARACTER SETutf8;
grant all on hmon.* TO 'hmon'@'%'IDENTIFIED BY 'hmon_password';
grant all on hmon.* TO 'hmon'@'CDH'IDENTIFIED BY 'hmon_password';
create database hive DEFAULT CHARACTER SETutf8;
grant all on hive.* TO 'hive'@'%'IDENTIFIED BY 'hive_password';
grant all on hive.* TO 'hive'@'CDH'IDENTIFIED BY 'hive_password';
create database oozie DEFAULT CHARACTER SETutf8;
grant all on oozie.* TO 'oozie'@'%'IDENTIFIED BY 'oozie_password';
grant all on oozie.* TO 'oozie'@'CDH'IDENTIFIED BY 'oozie_password';
create database hue DEFAULT CHARACTER SETutf8;
grant all on hue.* TO 'oozie'@'%' IDENTIFIEDBY 'hue_password';
grant all on hue.* TO 'oozie'@'CDH'IDENTIFIED BY 'hue_password';
create database metastore DEFAULT CHARACTERSET utf8;
grant all on metastore.* TO 'hive'@'%'IDENTIFIED BY 'hive_password';
grant all on metastore.* TO 'hive'@'CDH'IDENTIFIED BY 'hive_password';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'IDENTIFIED BY 'root'
WITHGRANT OPTION;
flush privileges;
10)安装MariaDB JDBC驱动
apt-getinstall libmysql-java
使用cloudera脚本在mysql中进行相关配置
/opt/cloudera-manager/cm-5.5.6
/share/cmf/schema/scm_prepare_database.shmysql -uroot -p --scm-host localhost scm scm scm_password
11)安装ClouderaManager Server 和Agents
在主节点opt目录下创建目录:mkdir /opt/cloudera-manager
将下载好的cloudera-manager-trusty-cm5.5.6_amd64.tar.gz解压到/opt/cloudera-manager中
创建用户:sudouseradd --system --home=/opt/cloudera-manager/cm-5.5.6/run/cloudera-scm-server--no-create-home --shell=/bin/false --comment "Cloudera SCM User"cloudera-scm
创建clouderamanager sever的本地数据存储目录(主节点进行)
mkdir /var/log/cloudera-scm-server
sudo chown cloudera-scm:cloudera-scm/var/log/clouder-scm-server
在每个节点上配置server_host,现在主节点进行配置,因为主节点的clouder-manager都要发送到其他机器,所以配置一台即可,其他机器需要简历opt文件夹
vim /opt/cloudera-manager/cm-5.5.6/etc/cloudera-scm-agent/config.ini
//吧server_host改成主节点名称
server_host= 主节点名称
向其他节点发送cloudera-manager:
scp –r /opt/clouder-manager root@主节点2,3:/opt
12)创建Parcel目录
在主节点上创建 mkdir-p /opt/cloudera/parcel-repo
把跟CDH相关的Parcel包放到/opt/cloudera/parcel-repo中
CDH-5.5.6-1.cdh5.5.6.p0.2-trusty.parcel
CDH-5.5.6-1.cdh5.5.6.p0.2-trusty.parcel.sha1
manifest.json
然后重命名CDH-5.5.6-1.cdh5.5.6.p0.2-trusty.parcel.sha1,改为CDH-5.5.6-1.cdh5.5.6.p0.2-trusty.parcel.sha,这点必须要注意,否则系统会重新下载CDH-5.5.6-1.cdh5.5.6.p0.2-trusty.parcel.sha1文件
在从节点上 mkdir –p/opt/cloudera/parcels
在各个节点上安装依赖 apt-getinstall
lsb-base
psmisc
bash
libsasl2-modules
libsasl2-modules-gssapi-mit
zlib1g
libxslt1.1
libsqlite3-0
libfuse2
fuse-utils or fuse
rpcbind
13)启动server和agent
启动server:
/opt/cloudera-manager/cm-5.5.6/etc/init.d/cloudera-scm-server start
/opt/cloudera-manager/cm-5.5.6/etc/init.d/cloudera-scm-agentstart
启动agent:
/opt/cloudera-manager/cm-5.5.6/etc/init.d/cloudera-scm-agentstart
若启动出错,可以查看/opt/cloudera-manager/cm-5.6.0/log里的日志
若没错,则等待几分钟后,在浏览器访问Cloudera Manager Admin Console,我的主节点ip为192.168.23.2,那么访问http://192.168.10.236:7180,默认的用户名和密码为admin。
解决警告:
内存交换区:echo 0 > /proc/sys/vm/swappiness
透明大页面:echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag
#vi /etc/rc.local 加入echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag 命令
14)CM整合Kylin
Kylin这里采用单节点部署
麒麟官网下载地址http://kylin.apache.org/download/
因为采用的是CDH5.5版本的。所以需要下载对应版本的安装包
点击这里进行下载(附件已经打包了下载好的对应版本的kylin)
这里在主节点安装kylin
A)创建kylin目录 mkdir /opt/kylin
tar zxvf apache-kylin-1.6.0-cdh5.7-bin.tar.gz –C /opt/kylin
B) 修改kylin配置
vim /opt/apache-kylin-1.6.0-cdh5.7-bin/conf/kylin.properties
C ) 设置kylin的环境变量:
source /etc/profile 使环境变量生效
D ) 拷贝jar到tmp/kylin下如果没有自己创建
cp/opt/apache-kylin-1.6.0-cdh5.7-bin/lib/kylin-coprocessor-1.6.0.jar/tmp/kylin/kylin-coprocessor-latest.jar
cp /opt/apache-kylin-1.6.0-cdh5.7-bin/lib/kylin-job-1.6.0.jar/tmp/kylin/kylin-job-latest.jar
执行/opt/kylin/apache-kylin-1.6.0-cdh5.7-bin/bin/kylin.shstart 来启动
最后输出,表示启动成功:
A new Kylin instance is started by root, stop it using"kylin.sh stop"
Please visit http://<ip>:7070/kylin
查看日志路径 /opt/apache-kylin-1.6.0-cdh5.7-bin/logs/kylin.log
访问kylin界面 : http://ip:7070/kylin
用户名/密码:ADMIN/KYLIN
E) 问题处理:
当执行./check_env.sh 或./kylin.sh start时遇到 mkdir: Permission denied: user=root,access=WRITE, inode="/":hdfs:supergroup:drwxr-xr-x
failed to create /kylin, Please make sure the user has right to access /kylin
解决方法:
默认会在HDFS上创建/kylin目录,需要hdfs权限
可以在check-env.sh中 将hadoop fs-mkdir -p $WORKING_DIR 变成 sudo -u hdfs hadoop fs -mkdir -p $WORKING_DIR,得以解决
- 基于Ubuntu环境下的CM+kylin搭建
- 基于Hadoop的Kylin测试环境搭建
- Linux (Ubuntu Kylin)下搭建android开发环境
- 64位ubuntu kylin 16.04下tiny4412开发环境搭建
- Ubuntu kylin环境下OpenGym + Roboschool搭建过程
- Ubuntu下CM编译环境的搭建和可刷机文件的编译及打包(For G7)
- Ubuntu Kylin 16.10 搭建php环境
- Ubuntu下的基于Eclipse的Android环境搭建二三事
- 搭建Ubuntu下基于Eclipse的php开发环境
- 搭建Ubuntu下基于Eclipse的php开发环境
- ubuntu下搭建基于eclipse的c/c++开发环境
- Ubuntu Kylin下Android编译环境构建
- Ubuntu kylin 14.04 LTS 下Xampp+Phpstorm+Xdebug开发php环境搭建
- Windows 7平台利用Vmware Workstation 11虚拟机搭建Hadoop 2.7.4基于Ubuntu kylin 14.04集群环境
- Kylin 环境 搭建 成功
- Kylin环境搭建
- kylin环境搭建
- ubuntu-kylin-16.04 JDK+IntelliJ IDEA 环境搭建
- PHP笔记
- 51Nod 1358 浮波那契 (矩阵快速幂 构造矩阵)
- java继承extends与super关键字理解
- CentOS Apache服务器安装与配置
- 文章标题
- 基于Ubuntu环境下的CM+kylin搭建
- PRVF-4193,PRVF-4195
- 关于Javascript的一些实践
- 【8】git高级技能
- 开发小结
- 数据库的基本操作
- android studio 的单元测试
- java常用设计模式
- Qt常用类QLabel