1软件环境整体情况说明
2安装包下载路径
3Hadoop2.2安装和配置
3.1集群网络环境
节点IP地址和主机名分布如下:
3.2环境搭建(每台机器都要操作)
3.2.1修改HostName(非必须)
vim /etc/sysconfig/network
修改HOSTNAME为需要的名称
重启服务器,进行生效
reboot
3.2.2设置Host映射文件
1.使用root身份编辑/etc/hosts映射文件,设置IP地址及机器名的映射,设置信息如下:vim /etc/hosts
172.16.158.24 DashDB01.yun
172.16.158.25 spark01.yun
172.16.158.26 spark02.yun
172.16.158.27 spark03.yun
2.使用如下命令对网络设置进行重启
/etc/init.d/network restart
3.验证设置是否成功
3.2.3设置操作系统环境
3.2.3.1关闭防火墙
在Hadoop安装过程中需要关闭防火墙和SElinux,否则会出现异常
1.service iptables status查看防火墙状态,如下所示表示iptables已经开启
2.以root用户使用如下命令关闭iptables
chkconfig iptables off
3.2.3.2关闭SElinux
1.使用getenforce命令查看是否关闭
2.修改/etc/selinux/config 文件
将SELINUX=enforcing改为SELINUX=disabled,执行该命令后重启机器生效
3.2.3.3JDK安装及配置
赋予vod用户/usr/lib/java目录可读写权限,使用命令如下:
sudo chmod -R 777 /usr/lib/java
把下载的安装包,上传到/usr/lib/java 目录下,使用如下命令进行解压
tar -zxvf jdk-7u55-linux-x64.tar.gz
解压后目录如下图所示:
使用root用户配置 /etc/profile,该设置对所有用户均生效
vim /etc/profile
添加以下信息:
export JAVA_HOME=/usr/lib/java/jdk1.7.0_55
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
修改完毕后,使用
source /etc/pro -version
3.2.3.4更新OpenSSL
yum update openssl
3.2.3.5无密码验证配置
1.以root用户使用vim /etc/ssh/sshd_config,打开sshd_config配置文件,开放4个配
置,如下图所示:
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeys
StrictModes no
2.配置后重启服务
service sshd restart
3.使用root用户登录在4个节点,在/home/common目录下,执行命令mkdir .ssh
4.使用vod用户登录在4个节点中使用如下命令生成私钥和公钥;sudo chown -R vod .ssh
ssh-keygen -t rsa
5.进入/home/common/.ssh目录在4个节点中分别
使用如下命令cp id_rsa.pub authorized_keys_DashDB01.yun
把公钥命名
authorized_keys_DashDB01.yun
authorized_keys_spark01.yun
authorized_keys_spark02.yun
authorized_keys_spark03.yun
6.把3个从节点(spark01,spark02,spark03)的公钥使用scp命令传送到DashDB01.yun
节点的/home/common/.ssh文件夹中;
scp authorized_keys_spark01.yun :/home/common/.ssh
最终DashDB01.yun节点中文件如下
7.把4个节点的公钥信息保存到authorized_key文件中
使用cat authorized_keys_DashDB01.yun >> authorized_keys 命令
8.把该文件分发到其他两个从节点上
使用scp authorized_keys :/home/common/.ssh把密码文件分发出
其余三台机器的.ssh文件包含如下:
9.在4台机器中使用如下设置authorized_keys读写权限
chmod 775 authorized_keys
10.测试ssh免密码登录是否生效
3.3配置Hadooop设置
3.3.1准备hadoop文件
1.把hadoop-
2.2.0目录移到/usr/local目录下
cd /home/hadoop/Downloads/
sudo cp hadoop-2.2.0 /usr/local
2.使用chown命令遍历修改hadoop-1.1.2目录所有者为hadoop
sudo chown -R vod /usr/local/hadoop-2.2.0
chmod 775 -R /usr/local/hadoop-2.2.0/
3.3.2在Hadoop目录下创建子目录
使用vod用户在hadoop-2.2.0目录下创建tmp、name和data目录,保证目录所有者为vod
cd /usr/local/hadoop-2.2.0
mkdir tmp
mkdir name
mkdir data
ls
配置/etc/pro vim /etc/profile
添加以下内容
export HADOOP_HOME=/usr/local/hadoop-2.2.0
export PATH=$PATH:$HADOOP_HOME/bin
export YARN_HOME=$HADOOP_HOME
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop export YARN_CONF_DIR=$HADOOP_HOMR/etc/hadoop
使用命令使其生效
source /etc/profile
3.3.3配置hadoop-env.sh
1.打开配置文件hadoop-env.sh
cd /usr/local/hadoop-2.2.0/etc/hadoop
sudo vim hadoop-env.sh
2.加入配置内容,设置了hadoop中jdk和hadoop/bin路径export JAVA_HOME=/usr/lib/java/jdk1.7.0_55
export PATH=$PATH:/usr/local/hadoop-2.2.0/bin
3.编译配置文件hadoop-env.sh,并确认生效
source hadoop-env.sh
3.3.4配置yarn-env.sh
1.在/usr/local/hadoop-
2.2.0/etc/hadoop打开配置文件yarn-env.sh cd /usr/local/hadoop-2.2.0/etc/hadoop
sudo vim yarn-env.sh
2.加入配置内容,设置了hadoop中jdk和hadoop/bin路径export JAVA_HOME=/usr/lib/java/jdk1.7.0_55
3.编译配置文件yarn-env.sh,并确认生效
source yarn-env.sh
3.3.5配置core-site.xml
1.使用如下命令打开core-site.xml配置文件
sudo vim core-site.xml
2.在配置文件中,按照如下内容进行配置
3.3.6配置hdfs-site.xml
1.使用如下命令打开hdfs-site.xml配置文件
sudo vim hdfs-site.xml
2.在配置文件中,按照如下内容进行配置
3.3.7配置mapred-site.xml
1.默认情况下不存在mapred-site.xml文件,可以从模板拷贝一份cp mapred-site.xml.template mapred-site.xml
2.使用如下命令打开mapred-site.xml配置文件
sudo vim mapred-site.xml
3.在配置文件中,按照如下内容进行配置
3.3.8配置yarn-site.xml
1.使用如下命令打开yarn-site.xml配置文件
sudo vim yarn-site.xml
2.在配置文件中,按照如下内容进行配置
3.3.9配置slaves文件
1.设置从节点
sudo vim slaves
修改为
spark01.yun
spark02.yun
spark03.yun
3.3.10向各节点分发hadoop程序
1.在spark01.yun spark0
2.yun spark0
3.yun 机器中创建/usr/local/hadoop-2.2.0目录,然后修改该目录所有权限sudo mkdir /usr/local/hadoop-2.2.0
sudo chown -R vod /usr/local/hadoop-2.2.0
sudo chmod 775 -R /usr/local/hadoop-2.2.0/
2.在DashDB01.yun机器上进入/usr/local/hadoop-2.2.0目录,使用如下命令把hadoop
文件夹复制到其他3台
使用命令
cd /usr/local/hadoop-2.2.0
scp -r * :/usr/local/hadoop-2.2.0
scp -r * :/usr/local/hadoop-2.2.0
scp -r * :/usr/local/hadoop-2.2.0
3.在从节点查看是否复制成功
执行chmod 775 -R /usr/local/hadoop-2.2.0/
4.每个节点配置/etc/pro vim /etc/profile
添加以下内容
export HADOOP_HOME=/usr/local/hadoop-2.2.0
export PATH=$PATH:$HADOOP_HOME/bin
export YARN_HOME=$HADOOP_HOME
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export YARN_CONF_DIR=$HADOOP_HOMR/etc/hadoop
使用命令使其生效
source /etc/profile
3.4启动hadoop
3.4.1格式化namenode
./bin/hdfs namenode -format
3.4.2启动hadoop
cd /usr/local/hadoop-2.2.0/sbin
./start-all.sh
3.4.3验证当前进行
此时执行jps命令
在DashDB01.yun上运行的进程有:namenode,secondarynamenode,resourcemanager
spark01.yun spark02.yun 和spark03.yun上面运行的进程有:datanode,nodemanager 4Hive1.2.1安装和配置
4.1拷贝项目
sudo cp -r /home/common/Downloads/hive-1.2.1/ hive-1.2.1
更改文件夹所属
sudo chown -R vod /usr/local/hive-1.2.1
sudo chmod 775 -R /usr/local/hive-1.2.1
配置/etc/pro vim /etc/profile
export HIVE_HOME=/usr/local/hive-1.2.1
export PATH=$HIVE_HOME/bin:$PATH
export HIVE_CONF_DIR=$HIVE_HOME/conf
source /etc/profile
4.2配置hive(使用mysql数据源)
前提条件:在mysql数据库建立hive用户并赋予相关权限
mysql> CREATE USER 'hive' IDENTIFIED BY 'mysql';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'hive'@'%' WITH GRANT OPTION;
mysql> flush privileges;
cd $HIVE_CONF_DIR/
cp hive-default.xml.template hive-site.xml
vim hive-site.xml
修改下列参数: