##原理 CDH的客户端,指得是能够以客户端方式,访问CDH集群服务的各类工具的集合。主要包括hdfs,hive和hbase
##操作
-
###前提条件 需要事先装好JDK
-
###获取介质
安装CDH客户端和安装服务端没啥区别,安装介质也是一样的。
cd /tmp wget http://archive.cloudera.com/cdh5/parcels/5.10.1/CDH-5.10.1-1.cdh5.10.1.p0.10-el7.parcel
-
###部署介质
安装客户端,就不需要像安装服务端那么繁琐,也不需要安装cloudera manager。简单说,就是把需要的文件解包,放好即可。
mkdir /opt/cloudera/ mkdir /opt/cloudera/parcels cd /opt/cloudera/parcels tar xvf /tmp/CDH-5.10.1-1.cdh5.10.1.p0.10-el7.parcel ln –s CDH-5.10.1-1.cdh5.10.1.p0.10 CDH
-
###配置客户端
配置客户端主要就是配置文件、环境变量和路径的设置。
#从hadoop集群获取配置文件 a.在Cloudera Manager管理界面中,选择Hive服务 b.在“操作”菜单中选择“下载客户端配置文件” c.将配置文件上传Hadoop客户端/tmp目录,文件名为hive.zip d.在Hadoop客户端执行: mkdir /opt/cloudera/etc/ cd /opt/cloudera/etc unzip /tmp/hive.zip #从hadoop集群获取hbase配置文件 a.在Hadoop客户端执行: scp -r root@slave4:/etc/hbase /etc/ #slave4是hadoop集群中的一个节点 #从hadoop集群获取hosts配置文件,因为来自集群的配置文件中,可能会本地无法解析的主机名,所以需要拿到集群的hosts文件,用于解析ip地址。 a.在Hadoop客户端执行: scp root@slave4:/etc/hosts /tmp/ #slave4是hadoop集群中的一个节点 cat /tmp/host >> /etc/hosts #修改Hadoop客户端环境变量,将以下命令追加到/etc/profile里,确保每个用户都有同样一套环境变量 export JAVA_HOME="/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.45.x86_64" export HADOOP_HOME="/opt/cloudera/parcels/CDH" export HIVE_HOME="/opt/cloudera/parcels/CDH/lib/hive" export HBASE_HOME="/opt/cloudera/parcels/CDH/lib/hbase" export HCAT_HOME="/opt/cloudera/parcels/CDH" export HADOOP_CONF_DIR="/opt/cloudera/etc/hive-conf" export HIVE_CONF="/opt/cloudera/etc/hive-conf/" export YARN_CONF_DIR="/opt/cloudera/etc/hive-conf" export CDH_MR2_HOME=$HADOOP_HOME/lib/hadoop-mapreduce export PATH=${JAVA_HOME}/bin:${HADOOP_CONF_DIR}:${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin:${HBASE_HOME}/bin:${HIVE_HOME}/bin:${HCAT_HOME}/bin:${PATH}
-
###连通性验证
a.验证HDFS hadoop fs –ls / #如果可以列出目录,证明HDFS客户端配置成功; b.验证HIVE beeline -u "jdbc:hive2://slave4:10000/default;principal=kylin/slave4@MCITP.COM" #如果是基于kerberos登录,使用这种方式; beeline -u "jdbc:hive2://slave4:10000/default" #如果是基本认证登录,则采用这种方式 show databases;#如果可以进入beeline命令行模式,而且可以显示默认数据库defaul,证明beeline客户端配置成功。 c.验证HBASE hbase shell list #如果可以进入hbase shell,并且可以列出hbase中的表名,证明hbase客户端配置成功。