一、环境准备操作系统版本:
centos7 64位
hadoop版本:
hadoop-2.7.3
hbase版本:
hbase-1.2.4
1、机器及角色
master1:# hostnamectl set-hostname master1
其他主机名分别配置为master2、slave1、slave2、slave3
2、所有节点关闭防火墙及selinux说明:命令前面#表示在root用户下的操作,$表示在hduser用户下操作的。
查看防火墙状态# firewall-cmd –staterunning
关闭防火墙# systemctl stop firewalld.service
防火墙配置为禁用状态# systemctl disable firewalld.service
立即关闭selinux(临时)# setenforce 0
永久关闭selinux# vi /etc/sysconfig/selinuxSELINUX=enforcing –> disabled
3、配置yum源所有节点配置yum源# cd
# mkdir apps
http://mirrors.163.com/centos/7/os/x86_64/Packages/wget-1.14-15.el7.x86_64.rpm
# rpm -i wget-1.14-15.el7.x86_64.rpm
# cd /etc/yum.repos.d
# wget http://mirrors.aliyun.com/repo/Centos-7.repo
# mv Centos-7.repo CentOS-Base.repo
# scp CentOS-Base.repo root@192.168.11.131:/etc/yum.repos.d/# scp CentOS-Base.repo root@192.168.11.132:/etc/yum.repos.d/# scp CentOS-Base.repo root@192.168.11.133:/etc/yum.repos.d/# scp CentOS-Base.repo root@192.168.11.134:/etc/yum.repos.d/
# yum clean all
# yum makecache
# yum update
4、配置ntp时间同步,master1为ntp服务端,其他为ntp客户端所有节点安装ntp# yum install -y ntp
ntp server端:首先配置当前时间# date -s “2018-05-27 23:03:30”
编辑配置文件# vi /etc/ntp.conf在注释下添加两行#restrict 192.168.1.0 mask 255.255.255.0 nomodify notrapserver 127.127.1.0fudge 127.127.1.0 stratum 11
注释下面#server 0.centos.pool.ntp.org iburst#server 1.centos.pool.ntp.org iburst#server 2.centos.pool.ntp.org iburst#server 3.centos.pool.ntp.org iburst
启动ntp服务并配置为开机自启动# systemctl start ntpd.service
# systemctl enable ntpd.service
ntp客户端(其余四台都为ntp客户端):
# vi /etc/ntp.conf同样注释下添加两行#restrict 192.168.1.0 mask 255.255.255.0 nomodify notrapserver 192.168.11.131fudge 127.127.1.0 stratum 11
四行添加注释#server 0.centos.pool.ntp.org iburst#server 1.centos.pool.ntp.org iburst#server 2.centos.pool.ntp.org iburst#server 3.centos.pool.ntp.org iburst
# systemctl start ntpd.service
# systemctl enable ntpd.service
手动同步时间# ntpdate 192.168.11.13128 May 07:04:50 ntpdate[1714]: the NTP socket is in use, exiting
对出现的报错做处理# lsof -i:123-bash: lsof: command not found
# yum install -y lsof
# lsof -i:123COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAMEntpd 1693 ntp 16u IPv4 25565 0t0 UDP *:ntpntpd 1693 ntp 17u IPv6 25566 0t0 UDP *:ntpntpd 1693 ntp 18u IPv4 25572 0t0 UDP localhost:ntpntpd 1693 ntp 19u IPv4 25573 0t0 UDP localhost.localdomain:ntpntpd 1693 ntp 20u IPv6 25574 0t0 UDP localhost:ntpntpd 1693 ntp 21u IPv6 25575 0t0 UDP localhost.localdomain:ntp
杀掉ntp的进程,注意ntp进程id各不相同,按实际情况处理# kill -9 1693
再次同步时间成功# ntpdate 192.168.11.13127 May 23:06:14 ntpdate[1728]: step time server 192.168.11.131 offset -28808.035509 sec
5、修改主机名和hosts文件所有节点修改主机名(永久)# hostnamectl set-hostname master1~slave3临时修改主机名# hostname master1~slave3
主节点修改hosts文件# vi /etc/hosts192.168.11.131master1192.168.11.132master2192.168.11.133slave1192.168.11.134slave2192.168.11.135slave3
把hosts文件覆盖到其他机器# scp /etc/hosts root@192.168.11.132~135:/etc/
所有节点创建管理用户和组创建组和用户# groupadd hduser
# useradd -g hduser hduser
# passwd hduser
二、配置hadoop环境1、创建目录并赋权每台机器上创建如下文件夹# mkdir /data1# mkdir /data2
修改权限# chown hduser:hduser /data1# chown hduser:hduser /data2
# su hduser$ mkdir -p /data1/hadoop_data/hdfs/namenode$ mkdir -p /data2/hadoop_data/hdfs/namenode$ mkdir -p /data1/hadoop_data/hdfs/datanode(NameNode不要)$ mkdir -p /data2/hadoop_data/hdfs/datanode(NameNode不要)$ mkdir -p /data1/hadoop_data/pids$ mkdir -p /data2/hadoop_data/pids$ mkdir -p /data1/hadoop_data/hadoop_tmp$ mkdir -p /data2/hadoop_data/hadoop_tmp
2、无密验证
master1和master2节点操作# su – hduser
$ ssh-keygen -t rsa
$ cd ~/.ssh$ cat id_rsa.pub >> authorized_keys
master1节点操作$ ssh-copy-id -i ~/.ssh/id_rsa.pub hduser@master2
master2节点操作$ scp ~/.ssh/authorized_keys hduser@master1:~/.ssh/
slave1、slave2和slave3节点创建.ssh目录# mkdir /home/hduser/.ssh
# chown hduser:hduser /home/hduser/.ssh
master1节点操作$ scp ~/.ssh/authorized_keys hduser@slave1:~/.ssh$ scp ~/.ssh/authorized_keys hduser@slave2:~/.ssh$ scp ~/.ssh/authorized_keys hduser@slave3:~/.ssh
master1和master2节点验证验证方法,分别在两个节点,ssh登陆本机(hdusser用户)及其他四个节点,看看是不是无密登陆。
如果未通过验证,所有机器执行下面命令$ chmod 600 ~/.ssh/authorized_keys$ chmod 700 ~/.ssh
3、所有节点配置java环境$ mkdir -p /data1/usr/src
上传包到/data1/usr/src目录下
$ cd /data1/usr/src$ tar xf jdk1.7.0_79.tar -C /data1/usr/
$ vi ~/.bashrcexport JAVA_HOME=/data1/usr/jdk1.7.0_79 export JRE_HOME=$JAVA_HOME/jreexport CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib/rt.jarexport PATH=$PATH:$JAVA_HOME/bin
$ source ~/.bashrc
4、mastar1节点配置hadoop下载hadoop-2.7.3.tar.gz,上传到/data1/usr/srchttp://mirrors.cnnic.cn/apache/hadoop/common/hadoop-2.7.3/hadoop-2.7.3.tar.gz
$ cd /data1/usr/src$ tar -zxf hadoop-2.7.3.tar.gz -C /data1/usr/
编辑hadoop-env.sh$ vi /data1/usr/hadoop-2.7.3/etc/hadoop/hadoop-env.shexport JAVA_HOME=/data1/usr/jdk1.7.0_79export HADOOP_PID_DIR=/data1/hadoop_data/pidsexport HADOOP_PID_DIR=/data2/hadoop_data/pidsexport HADOOP_MAPRED_PID_DIR=/data1/hadoop_data/pids
编辑mapred-env.sh$ vi /data1/usr/hadoop-2.7.3/etc/hadoop/mapred-env.shexport HADOOP_MAPRED_PID_DIR=/data2/hadoop_data/pids
编辑yarn-env.sh$ vi /data1/usr/hadoop-2.7.3/etc/hadoop/yarn-env.shexport YARN_PID_DIR=/data2/hadoop_data/pids
编辑core-site.xml$ vi /data1/usr/hadoop-2.7.3/etc/hadoop/core-site.xml
编辑hdfs-site.xml$ vi /data1/usr/hadoop-2.7.3/etc/hadoop/hdfs-site.xml
编辑yarn-site.xml$ vi /data1/usr/hadoop-2.7.3/etc/hadoop/yarn-site.xml
编辑mapred-site.xml$ cp /data1/usr/hadoop-2.7.3/etc/hadoop/mapred-site.xml.template /data1/usr/hadoop-2.7.3/etc/hadoop/mapred-site.xml$ vi /data1/usr/hadoop-2.7.3/etc/hadoop/mapred-site.xml
编辑slaves$ vi /data1/usr/hadoop-2.7.3/etc/hadoop/slavesslave1slave2slave3
同步hadoop配置到其他节点$ for ip in `seq 2 5`;do scp -rpq /data1/usr/hadoop-2.7.3 192.168.11.13$ip:/data1/usr;done
5、各节点zookeeper配置http://archive.apache.org/dist/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz上传包到/data1/usr/src目录下
创建目录$ mkdir -p /home/hduser/storage/zookeeper
$ cd /data1/usr/src$ tar -zxf zookeeper-3.4.6.tar.gz -C /data1/usr
编辑zoo.cfg$ cp /data1/usr/zookeeper-3.4.6/conf/zoo_sample.cfg /data1/usr/zookeeper-3.4.6/conf/zoo.cfg$ vi /data1/usr/zookeeper-3.4.6/conf/zoo.cfgdataDir=/home/hduser/storage/zookeeperserver.1=master1:2888:3888server.2=master2:2888:3888server.3=slave1:2888:3888server.4=slave2:2888:3888server.5=slave3:2888:3888
master1-slave3各节点依次做操作$ echo “1” > /home/hduser/storage/zookeeper/myid
$ echo “2” > /home/hduser/storage/zookeeper/myid
$ echo “3” > /home/hduser/storage/zookeeper/myid
$ echo “4” > /home/hduser/storage/zookeeper/myid
$ echo “5” > /home/hduser/storage/zookeeper/myid
各节点启动ZK服务$ cd /data1/usr/zookeeper-3.4.6/bin$ ./zkServer.sh start
6、slave1、slave2和slave3启动journalnode$ cd /data1/usr/hadoop-2.7.3/sbin$ ./hadoop-daemon.sh start journalnode用jps确认启动结果
7、在master1上格式化zookeeper节点格式化(第一次)
$ cd /data1/usr/hadoop-2.7.3$ ./bin/hdfs zkfc -formatZK
8、在master1上执行命令格式化文件系统./bin/hadoop namenode -format
9、在master1上启动namenode和zkfc服务./sbin/hadoop-daemon.sh start namenode./sbin/hadoop-daemon.sh start zkfc10、需要在master2(备节点)上执行数据同步./bin/hdfs namenode –bootstrapStandby
在master1上拷贝文件到master2scp -r /data2/hadoop_data/hdfs/namenode hduser@master2:/data2/hadoop_data/hdfs/
11、在master2上启动namenode和zkfc服务./sbin/hadoop-daemon.sh start namenode./sbin/hadoop-daemon.sh start zkfc
12、设置master1为active
./bin/hdfs haadmin -transitionToActive master1./bin/hdfs haadmin -getServiceState master1
13、在master1上启动datanode./sbin/hadoop-daemons.sh start datanode
14、启动HDFS(第二次以后)在master1上执行命令:./sbin/start-dfs.sh
15、启动YARN在master1上执行命令:./sbin/start-yarn.sh
16、启动Jobhistory./sbin/mr-jobhistory-daemon.sh start historyserver
17、验证验证namenodehttp://master1:50070Overview ‘master1:9000’ (active)http://master2:50070Overvi 香港云主机ew ‘master2:9000’ (standby)
18、验证文件系统上传文件./bin/hadoop fs -put /data1/usr/hadoop-2.7.3/etc/hadoop /test/hadoop./bin/hadoop fs -ls /test
19、namenode的备份验证杀死master1,master2变为active
20、验证yarn
./bin/hadoop jar /data1/usr/hadoop-2.7.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar wordcount /test/hadoop /test/out
三、安装HBASE下载hbase-1.2.4-bin.tar.gz,解压$ cd /data1/usr/src$ tar -zxvf hbase-1.2.4-bin.tar.gz -C /data1/usr/
3、创建目录$ mkdir -p /data1/hadoop_data/hbase_tmp$ mkdir -p /data2/hadoop_data/hbase_tmp
2、配置master1的hbase环境
配置hbase-env.sh$ vi /data1/usr/hbase-1.2.4/conf/hbase-env.shexport JAVA_HOME=/data1/usr/jdk1.7.0_79export HBASE_PID_DIR=/data2/hadoop_data/pidsexport HBASE_MANAGES_ZK=falseexport HADOOP_HOME=/data1/usr/hadoop-2.7.3
3、配置hbase-site.xml$ vi /data1/usr/hbase-1.2.4/conf/hbase-site.xml
4、配置regionservers
$ vi /data1/usr/hbase-1.2.4/conf/regionserversslave1slave2slave3
5、配置backup-masters$ vi /data1/usr/hbase-1.2.4/conf/backup-mastersmaster2
6、移除 HBase 里面的不必要 log4j 的 jar 包
cd ${HBASE_HOME}/libmv slf4j-log4j12-1.7.5.jar slf4j-log4j12-1.7.5.jar.bak
7、将master1的hbase环境传输到其他节点$ for ip in `seq 2 5`;do scp -rpq /data1/usr/hbase-1.2.4 192.168.11.13$ip:/data1/usr;done
8、master1上启动Hbase(hadoop集群已启动)$ cd /data1/usr/hbase-1.2.4/bin$ ./start-hbase.sh
9、验证查看hbase是否在HDFS文件系统创建成功$ /data1/usr/hadoop-2.7.3/bin/hadoop fs -ls /
执行: bin/hbase shell 可以进入Hbase管理界面、输入 status 查看状态
创建表create ‘test’, ‘cf’
显示表信息list ‘test’
表中插入数据put ‘test’, ‘row1’, ‘cf:a’, ‘value1’put ‘test’, ‘row2’, ‘cf:b’, ‘value2’put ‘test’, ‘row3’, ‘cf:c’, ‘value3’
查询表scan ‘test’
取一行数据get ‘test’, ‘row1’
失效表disable ‘test’
删除表drop ‘test’
浏览器输入http://master1:16010可以打开Hbase管理界面http://192.168.11.131/master-status
10、启动thrift2hbase-daemons.sh start thrift2
各节点用jps确认服务是否启动,一般启动失败的原因是配置有误。
本篇内容介绍了“win7电脑磁盘清理提示检查不能执行如何解决”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!解决方法:1、按win+r打开运行窗口,输入“cmd”…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。