原文链接:
https://www.toutiao.com/i6771763211927552523/
CDH简单了解
CDH: C:cloudera(公司) D:distribute H:Hadoop
解决了大数据Hadoop 2.x生态系统中各个框架的版本兼容问题,不用自己编译, CDH适合商用,版本更新比较慢,也可以选择其他版本。
CDH版本的安装
在线:不推荐,受网速影响
离线:rpm包,tar包
之前已经安装使用过Apache版本的Hadoop,这次为了区分,我们再单独见一个cdh目录,用于安装cdh版本的Hadoop、Hive和Sqoop。在使用sqoop需要先部署CDH版本的Hadoop&Hive,CDH版本和apache版本的服务不要混用,只开启CDH或者只开启apache服务就可以。
安装过程(YUM源已安装好、系统版本CentOS6.5、java版本是1.7)
首先我们先创建好目录
准备好安装包
创建目录 mkdir –p /opt/bigdata
解压安装包
tar -zxvf sqoop-1.4.5-cdh5.3.6.tar.gz -C /opt/bigdata/
tar -zxvf hive-0.13.1-cdh5.3.6.tar.gz -C /opt/bigdata/
tar -zxvf hadoop-2.5.0-cdh5.3.6.tar.gz -C /opt/bigdata/
我们进入hadoop目录,把share下doc目录东西删除掉,这个用处不大
配置三个env(hadoop,mapred,yarn)文件
export JAVA_HOME= /usr/lib/jvm/java-1.7.0-openjdk.x86_64
编辑三个文件
编辑内容
4个site.xml文件
core:(修改主机名,tmp.dir目录并在linux下创建相应目录,用户名)
hdfs:(修改主机名)
mapred:需先重命名(修改主机名)
yarn:(修改主机名)
core-site.xml
fs.defaultFS
hdfs://mastercdh:8020
hadoop.tmp.dir
/opt/module/cdh/hadoop-2.5.0-cdh5.3.6/data/tmp
hdfs-site.xml
dfs.replication
1
dfs.permissions.enabled
false
dfs.namenode.secondary.http-address
mastercdh:50090
将这个文件重命名为mapred-site.xml
mapred-site.xml
mapreduce.framework.name
yarn
mapreduce.jobhistory.address
mastercdh:10020
mapreduce.jobhistory.webapp.address
mastercdh:19888
yarn-site.xml
yarn.nodemanager.aux-services
mapreduce_shuffle
yarn.resourcemanager.hostname
mastercdh
yarn.log-aggregation-enable
true
yarn.log-aggregation.retain-seconds
106800
格式化namenode
$ bin/hdfs namenode –format
启动服务
开启各服务:
sbin/hadoop-daemon.sh start namenode
sbin/hadoop-daemon.sh start datanode
sbin/hadoop-daemon.sh start secondarynamenode
sbin/mr-jobhistory-daemon.sh start historyserver
sbin/yarn-daemon.sh start resourcemanager
sbin/yarn-daemon.sh start nodemanager
关闭服务
sbin/hadoop-daemon.sh start namenode
sbin/hadoop-daemon.sh stop datanode
sbin/hadoop-daemon.sh stop secondarynamenode
sbin/mr-jobhistory-daemon.sh stop historyserver
sbin/yarn-daemon.sh stop resourcemanager
sbin/yarn-daemon.sh stop nodemanager
我们开启服务
配置SSH免密登陆可使用:
$ sbin/start-dfs.sh
$ sbin/start-yarn.sh
$ sbin/start-all.sh
我们访问下,和apache版本相比,页面颜色有变化
安装mysql
检查下是否已下载还有卸载残留
rpm -qa | grep mysql
find / -name mysql
看来还是有的,通过rm -rf将以上目录删掉即可,另外顺便把配置文件/etc/my.cnf也删掉吧,用rm –f
安装mysql
yum -y install mysql mysql-server
安装mysql扩展
yum -y install mysql-connector-odbc mysql-devel libdbi-dbd-mysql
启动mysql
service mysqld start
设置开启启动: chkconfig mysqld on
检查下
chkconfig | grep mysql
设置登录密码:mysqladmin -u root password 'password'
进入数据库,查询用户信息
设置远程登录权限
grant all privileges on *.* to 'root'@'%' identified by 'password' with grant option;
删除用户信息
delete from user where user='root' and host='127.0.0.1';
刷新信息
flush privileges;
update user set password = password("password") where user ="root" and host = "mastercdh";
flush privileges;
重启mysqld服务
service mysqld restart
进入解压的hive目录中配置文件目录
先重命名hive-default.xml.template
mv hive-default.xml.template hive-site.xml
再重命名hive-env.sh.template
mv hive-env.sh.template hive-env.sh
再重命名hive-log4j.properties.template
mv hive-log4j.properties.template hive-log4j.properties
依次配置
首先hive-env.sh
HADOOP_HOME=/opt/bigdata/hadoop-2.5.0-cdh5.3.6
export HIVE_CONF_DIR=/opt/bigdata/hadoop-2.5.0-cdh5.3.6
编辑hive-site.xml,我们输入4000dd删除原来的内容
输入配置文件
javax.jdo.option.ConnectionURL
jdbc:mysql://mastercdh:3306/cdhmetastore?createDatabaseIfNotExist=true
javax.jdo.option.ConnectionDriverName
com.mysql.jdbc.Driver
javax.jdo.option.ConnectionUserName
root
javax.jdo.option.ConnectionPassword
password
hive.cli.print.current.db
true
hive.cli.print.header
true
配置hive-log4j.properties
hive.log.dir=/opt/bigdata/hive-0.13.1-cdh5.3.6/logs
我们将准备好的mysql的jar包上传到lib目录下
mysql-connector-java-5.1.27-bin.jar
切换到Hadoop目录,建立目录,并修改权限
/user/hive/warehouse为Hive存放数据的目录
bin/hdfs dfs -mkdir -p /user/hive/warehouse
bin/hdfs dfs -chmod g+w /user/hive/warehouse
bin/hdfs dfs -chmod g+w /tmp
启动客户端使用Hive bin/hive就可以了
解压zookeeper
tar -zxvf zookeeper-3.4.5-cdh5.3.6.tar.gz -C /opt/bigdata/
进入zookkeeper目录,创建存放数据的目录
在conf目录里
cp -a zoo_sample.cfg zoo.cfg
然后修改:dataDir= /opt/bigdata/zookeeper-3.4.5-cdh5.3.6/zkData
启动
sbin/zkServer.sh start
可以去查看状态:sbin/zkServer.sh status
部署sqoop
解压sqoop后
配置conf/sqoop-env.sh
复制: cp -a sqoop-env-template.sh sqoop-env.sh
或直接重命名重命名hive-env.sh (去掉.template)
编辑文件
export HADOOP_COMMON_HOME=/opt/bigdata/hadoop-2.5.0-cdh5.3.6
export HADOOP_MAPRED_HOME=/opt/bigdata/hadoop-2.5.0-cdh5.3.6
export HIVE_HOME=/opt/bigdata/hive-0.13.1-cdh5.3.6
export ZOOCFGDIR=/opt/bigdata/zookeeper-3.4.5-cdh5.3.6
拷贝jdbc驱动包达到lib目录
查看帮助信息:bin/sqoop help
测试:sqoop连接mysql
bin/sqoop list-databases --connect jdbc:mysql://mastercdh:3306/ --username root --password password