Hadoop 2.6.0-cdh5.4.0集群环境搭建和Apache-Hive、Sqoop的安装
2016-12-02 22:42
736 查看
搭建此环境主要用来hadoop的学习,因此我们的操作直接在root用户下,不涉及HA。
这里要注意IP在前面,主机名在后面,由于我颠倒位置,导致了主机名和IP无法进行映射。
将每个节点的ssh秘钥互相拷贝到各自的authorized_keys,实现各个节点的免密码登陆。
core-site.xml:
hadoop-env.sh:
主要配置下java的安装路径
hdfs-site.xml:
mapred-env.sh:
export JAVA_HOME=/data/jdk1.7.0_79
mapred-site.xml:
slaves:
配置从节点都是哪些。
yarn-env.sh:
主要也是对java的安装路径进行修改。
yarn-site.xml:
配置完成之后,我们需要做的事情是:
配置hadoop和jdk的环境变量在/etc/profile文件里
将jdk、hadoop和/etc/profile配置文件通过scp命令分发到各个节点上,命令格式如下:
通过source /etc/profile 使环境变量立即生效!
由于hadoop的节点之间需要通信(RPC机制),这样一来就需要监听对应的端口,这里我就直接将防火墙关闭了,命令如下:
格式化namenode:
首次启动需要格式化节点:
启动hadoop:
hadoop安装成功后,我们可以通过访问:http://master:8088/cluster和http://master:50070/dfshealth.html#tab-overview查看到下面的关于hadoop的信息。
从上图我们可以看到集群的总内存大小、CPU的总核数、以及活着的总节点数。
datanode的信息:
In Service表示datanode节点正在服务中。
Hadoop集群安装完毕!
将hive安装包解压之后,主要对配置文件做下修改。
hive-env.sh:
hive-site.xml:
主要对存储hive元数据信息的库-mysql的连接信息做配置。
记得将mysql驱动包扔到hive的lib里。
因为hive的元数据是存在mysql里,所以需要事先安装mysql环境。
安装的时候,主要这几个命令会经常用到:
最后配置下hive的环境变量:
安装
将sqoop安装包解压
sqoop配置文件修改:
配置Sqoop的环境变量:
sqoop导数据命令:
sqoop导数据成功的信息:
至此,hadoop集群、Hive和Sqoop的安装就完成了!
Software:
Hadoop 2.6.0-cdh5.4.0 Apache-hive-2.1.0-bin Sqoop-1.4.6-cdh5.5.2 JDK1.7.0_79
集群信息:
一个主节点,2个从节点。192.168.75.128 master 192.168.75.129 slave01 192.168.75.130 slave02
搭建步骤:
搭建步骤不详细化,主要把相关的hadoop的配置和关键操作写出来。修改主机名
vim /etc/sysconfig/network(永久修改)修改主机名IP映射
vim /etc/hosts这里要注意IP在前面,主机名在后面,由于我颠倒位置,导致了主机名和IP无法进行映射。
SSH免密码登陆
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
将每个节点的ssh秘钥互相拷贝到各自的authorized_keys,实现各个节点的免密码登陆。
安装JDK
…安装Hadoop
这里主要是hadoop的配置文件的修改。core-site.xml:
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://master:9000</value> <description>NameNode URI</description> </property> <property> <name>hadoop.tmp.dir</name> <value>/data/hadoop/tmp</value> </property> <property> <name>hadoop.proxyuser.root.groups</name> <value>*</value> <description>Allow the superuser oozie to impersonate any members of the group group1 and group2</description> </property> <property> <name>hadoop.proxyuser.root.hosts</name> <value>*</value> <description>The superuser can connect only from host1 and host2 to impersonate a user</description> </property> </configuration>
hadoop-env.sh:
主要配置下java的安装路径
# The java implementation to use. export JAVA_HOME=/data/jdk1.7.0_79
hdfs-site.xml:
<configuration> <property> <name>dfs.replication</name> <value>2</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>file:///data/hadoop/hadoopdata/hdfs/namenode</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>file:///data/hadoop/hadoopdata/hdfs/datanode</value> </property> <property> <name>dfs.namenode.secondary.http-address</name> <value>master:50090</value> </property> <property> <name>dfs.permissions</name> <value>false</value> </property> </configuration>
mapred-env.sh:
export JAVA_HOME=/data/jdk1.7.0_79
mapred-site.xml:
<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> <description>Execution framework set to Hadoop YARN.</description> </property> </configuration>
slaves:
配置从节点都是哪些。
slave01 slave02
yarn-env.sh:
主要也是对java的安装路径进行修改。
# some Java parameters export JAVA_HOME=/data/jdk1.7.0_79
yarn-site.xml:
<configuration> <!-- Site specific YARN configuration properties --> <property> <name>yarn.resourcemanager.hostname</name> <value>master</value> </property> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> <description>Shuffle service that needs to be set for Map Reduce applications.</description> </property> </configuration>
配置完成之后,我们需要做的事情是:
配置hadoop和jdk的环境变量在/etc/profile文件里
将jdk、hadoop和/etc/profile配置文件通过scp命令分发到各个节点上,命令格式如下:
scp -r hadoop/ root@slave01:/data
通过source /etc/profile 使环境变量立即生效!
由于hadoop的节点之间需要通信(RPC机制),这样一来就需要监听对应的端口,这里我就直接将防火墙关闭了,命令如下:
chkconfig iptables off
格式化namenode:
首次启动需要格式化节点:
hadoop namenode –format
启动hadoop:
./start-all.sh
hadoop安装成功后,我们可以通过访问:http://master:8088/cluster和http://master:50070/dfshealth.html#tab-overview查看到下面的关于hadoop的信息。
从上图我们可以看到集群的总内存大小、CPU的总核数、以及活着的总节点数。
datanode的信息:
In Service表示datanode节点正在服务中。
Hadoop集群安装完毕!
安装Hive
hive只需要在主节点安装一个就好了。它主要是将SQL解析为MR任务。将hive安装包解压之后,主要对配置文件做下修改。
hive-env.sh:
# Set HADOOP_HOME to point to a specific hadoop install directory HADOOP_HOME=/data/hadoop/ # Hive Configuration Directory can be controlled by: export HIVE_CONF_DIR=/data/apache-hive-2.1.0-bin/conf #Folder containing extra ibraries required for hive #compilation/execution can be controlled by: export HIVE_AUX_JARS_PATH=/data/apache-hive-2.1.0-bin/lib
hive-site.xml:
主要对存储hive元数据信息的库-mysql的连接信息做配置。
<configuration> <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://master:3306/hive?createDatabaseIfNotExist=true&characterEncoding=UTF-8</value> <description>JDBC connect string for a JDBC metastore</description> </property> <property> <name>javax.jdo.option.ConnectionDriverName</name> <value>com.mysql.jdbc.Driver</value> <description>Driver class name for a JDBC metastore</description> </property> <property> <name>javax.jdo.option.ConnectionUserName</name> <value>root</value> <description>username to use against metastore database</description> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>123456</value> <description>password to use against metastore database</description> </property> <property> <name>hive.server2.thrift.port</name> <value>10000</value> </property> <property> <name>hive.server2.thrift.bind.host</name> <value>hive安装节点的IP</value> </property> <property> <name>datanucleus.readOnlyDatastore</name> <value>false</value> </property> <property> <name>datanucleus.fixedDatastore</name> <value>false</value> </property> <property> <name>datanucleus.autoCreateSchema</name> <value>true</value> </property> <property> <name>datanucleus.autoCreateTables</name> <value>true</value> </property> <property> <name>datanucleus.autoCreateColumns</name> <value>true</value> </property> <property> <name>hive.exec.dynamic.partition.mode</name> <value>nonstrict</value> </property> </configuration>
记得将mysql驱动包扔到hive的lib里。
因为hive的元数据是存在mysql里,所以需要事先安装mysql环境。
安装的时候,主要这几个命令会经常用到:
#连接mysql数据库 #设置密码 use mysql; update user set password=password('密码') where user='root'; flush privileges; #设置Mysql远程访问 grant all privileges on *.* to 'root'@'%' identified by '密码' with grant option;
最后配置下hive的环境变量:
export HIVE_HOME=/data/apache-hive-2.1.0-bin/ export PATH=${HIVE_HOME}/bin:$PATH
安装Sqoop
Sqoop主要用于在Hadoop(Hive)与传统的数据库(mysql、postgresql…)间进行数据的传递,可以将一个关系型数据库(例如 : MySQL ,Oracle ,Postgres等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。安装
将sqoop安装包解压
sqoop配置文件修改:
#Set path to where bin/hadoop is available export HADOOP_COMMON_HOME=/data/hadoop/ #Set path to where hadoop-*-core.jar is available export HADOOP_MAPRED_HOME=/data/hadoop/ #set the path to where bin/hbase is available #export HBASE_HOME=/home/hadoop/software/hbase #Set the path to where bin/hive is available export HIVE_HOME=/data/apache-hive-2.1.0-bin/ #Set the path for where zookeper config dir is #export ZOOCFGDIR=/home/hadoop/software/zookeeper
配置Sqoop的环境变量:
export SQOOP_HOME=/data/sqoop/ export PATH=${SQOOP_HOME}/bin:$PATH
sqoop导数据命令:
sqoop import -m 1 --connect jdbc:mysql://master:3306/test --username root --password 123456 --table test --target-dir /data/test
sqoop导数据成功的信息:
至此,hadoop集群、Hive和Sqoop的安装就完成了!
相关文章推荐
- hadoop集群搭建之一(Hadoop环境安装)
- hadoop2.6.0版本集群环境搭建
- 搭建hadoop2.6.0集群环境
- CentOS 6.5下搭建hadoop 2.6.0集群(一):安装配置JDK
- hadoop2.6.0版本集群环境搭建
- [转]云计算之hadoop、hive、hue、oozie、sqoop、hbase、zookeeper环境搭建及配置文件
- Hadoop2.2.0 HA高可用分布式集群搭建(hbase,hive,sqoop,spark)
- 搭建hadoop2.6.0集群环境
- 搭建hadoop2.6.0集群环境
- Hadoop集群安装&Hbase实验环境搭建【1】
- 搭建hadoop2.6.0集群环境 分类: A1_HADOOP 2015-04-20 07:21 459人阅读 评论(0) 收藏
- 搭建hadoop2.6.0集群环境
- hadoop-2.5.0,hbase,hive,pig,sqoop,zookeeper 集群安装
- Hadoop2.6.0 + zookeeper集群环境搭建
- Hadoop2.6.0 + Spark1.4.0 在Ubuntu14.10环境下的伪分布式集群的搭建(实践可用)
- hadoop2.6.0版本集群环境搭建
- 在Hadoop集群环境中为MySQL安装配置Sqoop的教程
- 在Hadoop集群环境中为MySQL安装配置Sqoop的教程
- 在Hadoop1.2.1分布式集群环境下安装hive0.12