Hadoop2.0集群、Hive工具、Zookeeper集群、Spark集群、Kafka集群、Hbase集群、Sqoop工具、Flume工具搭建总结(一)

1、使用的Virtual Box安装包,一步一步安装即可。
2、之所以选用Virtual Box是因为它比VMWare更加稳定。使用VMWare运行hadoop集群或者spark集群时,有时会出现休眠后重启时,某些进程莫名挂掉的问题。而Virtual Box没有这种情况。
3、之所以选择Virtual Box 4.1版本,是因为更高的版本就不兼容win7了。

一、Centos6.5集群搭建

------------Centos6.5安装----------------------------------------------

1、使用课程提供的CentOS 6.5镜像即可,CentOS-6.5-i386-minimal.is

2、创建虚拟机:打开Virtual Box,点击“新建”按钮,点击“下一步”,输入虚拟机名称为spark1,选择操作系统为Linux,选择版本为Red Hat,分配1024MB内存,后面的选项全部用默认,在Virtual Disk File location and size中,一定要自己选择一个目录来存放虚拟机文件,最后点击“create”按钮,开始创建虚拟机。
3、设置虚拟机网卡:选择创建好的spark1虚拟机,点击“设置”按钮,在网络一栏中,连接方式中,选择“Bridged Adapter”。
4、安装虚拟机中的CentOS 6.5操作系统:选择创建好的虚拟机spark1,点击“开始”按钮,选择安装介质(即本地的CentOS 6.5镜像文件),选择第一项开始安装-Skip-欢迎界面Next-选择默认语言-Baisc Storage Devices-Yes, discard any data-主机名:spark1-选择时区-设置初始密码为hadoop-Replace Existing Linux System-Write changes to disk-CentOS 6.5自己开始安装。

5、安装完以后,CentOS会提醒你要重启一下,就是reboot,你就reboot就可以了。

-------------Centos6.6网络配置-----------------------------------------

1、先临时性设置虚拟机ip地址:ifconfig eth0 192.168.1.107,在/etc/hosts文件中配置本地ip(192.168.1.107)到host(spark1)的映射
2、配置windows主机上的hosts文件:C:\Windows\System32\drivers\etc\hosts,192.168.1.107 hadoop1
3、使用SecureCRT从windows上连接虚拟机,自己可以上网下一个SecureCRT的绿色版,网上很多。
4、永久性配置CentOS网络
vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.1.107
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
5、重启网卡
service network restart

6、即使更换了ip地址,重启网卡,可能还是联不通网。那么可以先将IPADDR、NETMASK、GATEWAY给删除,将BOOTPROTO改成dhcp。然后用service network restart重启网卡。此时linux会自动给分配一个ip地址,用ifconfig查看分配的ip地址。然后再次按照之前说的,配置网卡,将ip改成自动分配的ip地址。最后再重启一次网卡。

------------- CentOS 6.5防火墙和DNS配置------------------------------

1、关闭防火墙
service iptables stop
chkconfig iptables off
vi /etc/selinux/config
SELINUX=disabled
自己在win7的控制面板中,关闭windows的防火墙!

2、配置dns服务器
vi /etc/resolv.conf
nameserver 192.168.1.1

ping www.baidu.com

------------- CentOS 6.5 yum配置--------------------------------------

1、修改repo
使用WinSCP(网上很多,自己下一个),将CentOS6-Base-163.repo上传到CentOS中的/usr/local目录下
cd /etc/yum.repos.d/
rm -rf *
mv 自己的repo文件移动到/etc/yum.repos.d/目录中:cp /usr/local/CentOS6-Base-163.repo .
修改repo文件,把所有gpgcheck属性修改为0

2、配置yum
yum clean all
yum makecache
yum install telnet

 

------------- JDK 1.7安装----------------------------------------------

1、将jdk-7u60-linux-i586.rpm通过WinSCP上传到虚拟机中
2、安装JDK:rpm -ivh jdk-7u65-linux-i586.rpm(也可以直接用java压缩包)
3、配置jdk相关的环境变量
vi .bashrc
export JAVA_HOME=/usr/java/latest
export PATH=$PATH:$JAVA_HOME/bin
source .bashrc
4、测试jdk安装是否成功:java -version
5、rm -f /etc/udev/rules.d/70-persistent-net.rules

 

-------------安装第二台和第三台虚拟机------------------------------

1、安装上述步骤,再安装两台一模一样环境的虚拟机,因为后面hadoop和spark都是要搭建集群的。
2、集群的最小环境就是三台。因为后面要搭建ZooKeeper、kafka等集群。
3、另外两台机器的hostname分别设置为spark2和spark3即可,ip分别为192.168.1.108和192.168.1.109
4、在安装的时候,另外两台虚拟机的centos镜像文件必须重新拷贝一份,放在新的目录里,使用各自自己的镜像文件。
5、虚拟机的硬盘文件也必须重新选择一个新的目录,以更好的区分。
6、安装好之后,记得要在三台机器的/etc/hosts文件中,配置全三台机器的ip地址到hostname的映射,而不能只配置本机,这个很重要!
7、在windows的hosts文件中也要配置全三台机器的ip地址到hostname的映射。

 

-------------配置集群ssh免密码登录----------------------------------

1、首先在三台机器上配置对本机的ssh免密码登录
生成本机的公钥,过程中不断敲回车即可,ssh-keygen命令默认会将公钥放在/root/.ssh目录下
ssh-keygen -t rsa
将公钥复制为authorized_keys文件,此时使用ssh连接本机就不需要输入密码了
cd /root/.ssh
cp id_rsa.pub  authorized_keys

2、接着配置三台机器互相之间的ssh免密码登录
使用ssh-copy-id -i spark命令将本机的公钥拷贝到指定机器的authorized_keys文件中(方便好用)
eg:ssh-copy-id -i spark1

 

二、Hadoop集群搭建

-------------安装hadoop包-------------------------------------------

 

1、使用hadoop-2.4.1.tar.gz,使用WinSCP上传到CentOS的/usr/local目录下。
2、将hadoop包进行解压缩:tar -zxvf hadoop-2.4.1.tar.gz
3、对hadoop目录进行重命名:mv hadoop-2.4.1 hadoop
4、配置hadoop相关环境变量
vi .bashrc
export HADOOP_HOME=/usr/local/hadoop
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source .bashrc
 

 

-------------修改core-site.xml----------------------------------------

 

  fs.default.name
  hdfs://spark1:9000

-------------修改hdfs-site.xml----------------------------------------


  dfs.name.dir
  /usr/local/data/namenode


  dfs.data.dir
  /usr/local/data/datanode


  dfs.tmp.dir
  /usr/local/data/tmp


  dfs.replication
  3

-------------修改mapred-site.xml-------------------------------------


  mapreduce.framework.name
  yarn

-------------修改yarn-site.xml----------------------------------------


  yarn.resourcemanager.hostname
  spark1


  yarn.nodemanager.aux-services
  mapreduce_shuffle

------------- 修改slaves文件-----------------------------------------
spark1
spark2
spark3

 

表示集群,想在哪里启动datanode

 

------------- 在另外两台机器上搭建hadoop-------------------------

1、使用如上配置在另外两台机器上搭建hadoop,可以使用scp命令将spark1上面的hadoop安装包和.bashrc配置文件都拷贝过去。[root@spark1 local]# scp -r hadoop root@spark3:/usr/local/

[root@spark1 local]# scp ~/.bashrc root@spark3:~/
2、要记得对.bashrc文件进行source,以让它生效。

3、记得在spark2和spark3的/usr/local目录下创建data目录。

------------- 启动hdfs集群-----------------------------------------

1、格式化namenode:在spark1上执行以下命令,hdfs namenode -format
2、启动hdfs集群:start-dfs.sh3、验证启动是否成功:jps、50070端口
spark1:namenode、datanode、secondarynamenode
spark2:datanode
spark3:datanode

 

------------- 启动yarn集群----------------------------------------

1、启动yarn集群:start-yarn.sh2、验证启动是否成功:jps、8088端口
spark1:resourcemanager、nodemanager
spark2:nodemanager
spark3:nodemanager

注意:

(访问HDFS的WebUI-->http://spark1:50070   访问Yarn的WebUI-->http://spark1:8088)

 

三、Hive工具搭建

 

------------- 安装hive包------------------------------------------------

1、将课程提供的apache-hive-0.13.1-bin.tar.gz使用WinSCP上传到spark1的/usr/local目录下。
2、解压缩hive安装包:tar -zxvf apache-hive-0.13.1-bin.tar.gz。
3、重命名hive目录:mv apache-hive-0.13.1-bin hive
4、配置hive相关的环境变量
vi .bashrc
export HIVE_HOME=/usr/local/hive
export PATH=$HIVE_HOME/bin
source .bashrc


-------------  安装mysql------------------------------------------------

1、在spark1上安装mysql。
2、使用yum安装mysql server。
yum install -y mysql-server
service mysqld start
chkconfig mysqld on
3、使用yum安装mysql connector
yum install -y mysql-connector-java
4、将mysql connector拷贝到hive的lib包中
cp /usr/share/java/mysql-connector-java-5.1.17.jar /usr/local/hive/lib
5、在mysql上创建hive元数据库,并对hive进行授权
create database if not exists hive_metadata;
grant all privileges on hive_metadata.* to '用户名'@'%' identified by '密码';
grant all privileges on hive_metadata.* to '用户名'@'localhost' identified by '密码';
grant all privileges on hive_metadata.* to '用户名'@'spark1' identified by '密码';
flush privileges;
use hive_metadata;

=========================

mysql -uroot -p                              密码:123456

-------------  配置hive-site.xml--------------------------------------

配置文件都在hive中conf文件夹里。

mv hive-default.xml.template hive-site.xml


  javax.jdo.option.ConnectionURL
  jdbc:mysql://spark1:3306/hive_metadata?createDatabaseIfNotExist=true


  javax.jdo.option.ConnectionDriverName
  com.mysql.jdbc.Driver


  javax.jdo.option.ConnectionUserName
  hive


  javax.jdo.option.ConnectionPassword
  hive


  hive.metastore.warehouse.dir
  /user/hive/warehouse

-------------配置hive-env.sh和hive-config.sh--------------------------------------

mv hive-env.sh.template hive-env.sh

vi /usr/local/hive/bin/hive-config.sh
export JAVA_HOME=/usr/java/latest
export HIVE_HOME=/usr/local/hive
export HADOOP_HOME=/usr/local/hadoop

-------------验证hive是否安装成功-----------------------------------------------------

直接输入hive命令,可以进入hive命令行

退出:quit;
直接输入hive命令,可以进入hive命令行

退出:quit;

 

你可能感兴趣的:(大数据开发)