找回密码
 立即注册
首页 业界区 安全 快速搭建hadoop,zk,hbase的基础集群

快速搭建hadoop,zk,hbase的基础集群

翁谌缜 2025-6-10 15:06:32
1. ZK集群,Hadoop集群,Hbase集群安装

Linux121Linux122Linux123Hadoop✔✔✔MySQL✔ZK✔✔✔HBASE✔✔✔1.1 安装Vmware,安装虚拟机集群

1.1.1 安装     (VMware-workstation-full-15.5.5-16285975)

许可证:
UY758-0RXEQ-M81WP-8ZM7Z-Y3HDA
1.1.2 安装 centos7

1.png

2.png

3.png

4.png

5.png

6.png

7.png

8.png

9.png

10.png

11.png

12.png

13.png

14.png

15.png

16.png

17.png

18.png

19.png

20.png

21.png

22.png
  1. 123456
复制代码
23.png

24.png

1.1.3 配置静态IP

25.png

26.png

27.png
  1. vi /etc/sysconfig/network-scripts/ifcfg-ens33
复制代码
28.png
  1. :wq
  2. systemctl restart network
  3. ip addr
复制代码
29.png
  1. ping www.baidu.com
复制代码
  1. vim /etc/profile
  2. export HBASE_HOME=/opt/lagou/servers/hbase-1.3.1
  3. export PATH=$PATH:$HBASE_HOME/bin
复制代码
  1. 安装jdk
复制代码
  1. mkdir -p /opt/lagou/software    --软件安装包存放目录
  2. mkdir -p /opt/lagou/servers     --软件安装目录
复制代码
  1. rpm -qa | grep java
  2. 清理上面显示的包名
  3. sudo yum remove java-1.8.0-openjdk
  4. 上传文件jdk-8u421-linux-x64.tar.gz
  5. chmod 755 jdk-8u421-linux-x64.tar.gz
  6. 解压文件到/opt/lagou/servers目录下
  7. tar -zxvf jdk-8u421-linux-x64.tar.gz -C /opt/lagou/servers
  8. cd /opt/lagou/servers
  9. ll
复制代码
  1. 配置环境
复制代码
  1. vi /etc/profile
复制代码
  1. export JAVA_HOME=/opt/lagou/servers/jdk1.8.0_421
  2. export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
  3. export PATH=$PATH:${JAVA_HOME}/bin
复制代码
  1. source /etc/profile
  2. java -version
复制代码
1.1.4 安装Xmanager
  1. 连接192.168.49.121:22
  2. 密码:123456
复制代码
1.1.5 克隆2台机器,并配置

30.png

31.png

32.png

33.png

34.png
  1. vi /etc/sysconfig/network-scripts/ifcfg-ens33
复制代码
35.png
  1. systemctl restart network
  2. ip addr
  3. hostnamectl
  4. hostnamectl set-hostname linux121
复制代码
  1. 关闭防火墙
复制代码
  1. systemctl status firewalld
  2. systemctl stop firewalld
  3. systemctl disable firewalld
复制代码
  1. 关闭selinux
复制代码
  1. vi /etc/selinux/config
复制代码
36.png
  1. 三台机器免密登录
复制代码
  1. vi /etc/hosts
复制代码
37.png
  1. 192.168.49.121 linux121
  2. 192.168.49.122 linux122
  3. 192.168.49.123 linux123
复制代码
38.png
  1. 第一步: ssh-keygen -t rsa 在centos7-1和centos7-2和centos7-3上面都要执行,产生公钥
  2. 和私钥
  3. ssh-keygen -t rsa
  4. 第二步:在centos7-1 ,centos7-2和centos7-3上执行:
  5. ssh-copy-id linux121 将公钥拷贝到centos7-1上面去
  6. ssh-copy-id linux122 将公钥拷贝到centos7-2上面去
  7. ssh-copy-id linux123 将公钥拷贝到centos7-3上面去
  8. ssh-copy-id linux121
  9. ssh-copy-id linux122
  10. ssh-copy-id linux123
  11. 第三步:
  12. centos7-1执行:
  13. scp /root/.ssh/authorized_keys linux121:$PWD
  14. scp /root/.ssh/authorized_keys linux122:$PWD
  15. scp /root/.ssh/authorized_keys linux123:$PWD
复制代码
  1. 三台机器时钟同步
复制代码
  1. sudo cp -a /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
  2. sudo curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
  3. sudo yum clean all
  4. sudo yum makecache
  5. sudo yum install ntpdate
  6. ntpdate us.pool.ntp.org
  7. crontab -e
  8. */1 * * * * /usr/sbin/ntpdate us.pool.ntp.org;
复制代码
  1. vim /etc/profile
  2. export HBASE_HOME=/opt/lagou/servers/hbase-1.3.1
  3. export PATH=$PATH:$HBASE_HOME/bin
复制代码
1.2 安装ZK,Hadoop,Hbase集群,安装mysql

1.2.1 安装hadoop集群
  1. 在/opt目录下创建文件夹
复制代码
  1. mkdir -p /opt/lagou/software    --软件安装包存放目录
  2. mkdir -p /opt/lagou/servers     --软件安装目录
复制代码
  1. 上传hadoop安装文件到/opt/lagou/software
复制代码
  1. https://archive.apache.org/dist/hadoop/common/hadoop-2.9.2/
  2. hadoop-2.9.2.tar.gz
复制代码
39.png
  1. linux121节点
复制代码
  1. tar -zxvf hadoop-2.9.2.tar.gz -C /opt/lagou/servers
  2. ll /opt/lagou/servers/hadoop-2.9.2
复制代码
  1. yum install -y vim
  2. 添加环境变量
  3. vim /etc/profile
复制代码
  1. ##HADOOP_HOME
  2. export HADOOP_HOME=/opt/lagou/servers/hadoop-2.9.2
  3. export PATH=$PATH:$HADOOP_HOME/bin
  4. export PATH=$PATH:$HADOOP_HOME/sbin
复制代码
  1. source /etc/profile
  2. hadoop version
复制代码
  1. HDFS集群配置
复制代码
  1. cd /opt/lagou/servers/hadoop-2.9.2/etc/hadoop
复制代码
  1. vim hadoop-env.sh
  2. export JAVA_HOME=/opt/lagou/servers/jdk1.8.0_421
复制代码
  1. vim core-site.xml
  2. <property>
  3. <name>fs.defaultFS</name>
  4. <value>hdfs://linux121:9000</value>
  5. </property>
  6. <property>
  7. <name>hadoop.tmp.dir</name>
  8. <value>/opt/lagou/servers/hadoop-2.9.2/data/tmp</value>
  9. </property>
复制代码
  1. vim slaves
  2. linux121
  3. linux122
  4. linux123
复制代码
  1. vim mapred-env.sh
  2. export JAVA_HOME=/opt/lagou/servers/jdk1.8.0_421
复制代码
  1. mv mapred-site.xml.template mapred-site.xml
  2. vim mapred-site.xml
  3. <property>
  4. <name>mapreduce.framework.name</name>
  5. <value>yarn</value>
  6. </property>
复制代码
  1. vi mapred-site.xml
  2. 在该文件里面增加如下配置。
  3. <property>
  4. <name>mapreduce.jobhistory.address</name>
  5. <value>linux121:10020</value>
  6. </property>
  7. <property>
  8. <name>mapreduce.jobhistory.webapp.address</name>
  9. <value>linux121:19888</value>
  10. </property>
复制代码
  1. vim yarn-env.sh
  2. export JAVA_HOME=/opt/lagou/servers/jdk1.8.0_421
复制代码
  1. vim yarn-site.xml
  2. <property>
  3. <name>yarn.resourcemanager.hostname</name>
  4. <value>linux123</value>
  5. </property>
  6. <property>
  7. <name>yarn.nodemanager.aux-services</name>
  8. <value>mapreduce_shuffle</value>
  9. </property>
复制代码
  1. vi yarn-site.xml
  2. 在该文件里面增加如下配置。
  3. <property>
  4. <name>yarn.log-aggregation-enable</name>
  5. <value>true</value>
  6. </property>
  7. <property>
  8. <name>yarn.log-aggregation.retain-seconds</name>
  9.      <value>604800</value>
  10. </property>
  11. <property>
  12.      <name>yarn.log.server.url</name>
  13.      <value>http://linux121:19888/jobhistory/logs</value>
  14. </property>
复制代码
  1. chown -R root:root /opt/lagou/servers/hadoop-2.9.2
复制代码
  1. 分发配置
复制代码
  1. 三台都要
  2. sudo yum install -y rsync
复制代码
  1. touch rsync-script
  2. vim rsync-script
  3. #!/bin/bash
  4. #1 获取命令输入参数的个数,如果个数为0,直接退出命令
  5. paramnum=$#
  6. if((paramnum==0)); then
  7. echo no params;
  8. exit;
  9. fi
  10. #2 根据传入参数获取文件名称
  11. p1=$1
  12. file_name=`basename $p1`
  13. echo fname=$file_name
  14. #3 获取输入参数的绝对路径
  15. pdir=`cd -P $(dirname $p1); pwd`
  16. echo pdir=$pdir
  17. #4 获取用户名称
  18. user=`whoami`
  19. #5 循环执行rsync
  20. for((host=121; host<124; host++)); do
  21. echo ------------------- linux$host --------------
  22. rsync -rvl $pdir/$file_name $user@linux$host:$pdir
  23. done
复制代码
1.2.3 安装Hbase集群(先启动Hadoop和zk才能启动Hbase)
  1. chmod 777 rsync-script
  2. ./rsync-script /home/root/bin
  3. ./rsync-script /opt/lagou/servers/hadoop-2.9.2
  4. ./rsync-script /opt/lagou/servers/jdk1.8.0_421
  5. ./rsync-script /etc/profile
复制代码
修改配置文件
把hadoop中的配置core-site.xml 、hdfs-site.xml拷贝到hbase安装目录下的conf文件夹中
  1. 在namenode,linux121上格式化节点
  2. hadoop namenode -format
  3. ssh localhost
  4. 集群群起
  5. stop-dfs.sh
  6. stop-yarn.sh
  7. sbin/start-dfs.sh
复制代码
修改conf目录下配置文件
  1. datanode可能起不来
  2. sudo rm -rf /opt/lagou/servers/hadoop-2.9.2/data/tmp/*
  3. hadoop namenode -format
  4. sbin/start-dfs.sh
复制代码
  1. 注意:NameNode和ResourceManger不是在同一台机器,不能在NameNode上启动 YARN,应该
  2. 在ResouceManager所在的机器上启动YARN
  3. sbin/start-yarn.sh
  4. linux121:
  5. sbin/mr-jobhistory-daemon.sh start historyserver
复制代码
  1. 地址:
  2. hdfs:
  3. http://linux121:50070/dfshealth.html#tab-overview
  4. 日志:
  5. http://linux121:19888/jobhistory
复制代码
  1. hdfs dfs -mkdir /wcinput
  2. cd /root/
  3. touch wc.txt
  4. vi wc.txt
  5. hadoop mapreduce yarn
  6. hdfs hadoop mapreduce
  7. mapreduce yarn lagou
  8. lagou
  9. lagou
  10. 保存退出
  11. : wq!
  12. hdfs dfs -put wc.txt /wcinput
  13. hadoop jar share/hadoop/mapreduce/hadoop mapreduce-examples-2.9.2.jar wordcount /wcinput /wcoutput
复制代码
  1. 上传并解压zookeeper-3.4.14.tar.gz
  2. tar -zxvf zookeeper-3.4.14.tar.gz -C ../servers/
复制代码
  1. 修改配置⽂文件创建data与log⽬目录
复制代码
  1. #创建zk存储数据⽬目录
  2. mkdir -p /opt/lagou/servers/zookeeper-3.4.14/data
  3. #创建zk⽇日志⽂文件⽬目录
  4. mkdir -p /opt/lagou/servers/zookeeper-3.4.14/data/logs
  5. #修改zk配置⽂文件
  6. cd /opt/lagou/servers/zookeeper-3.4.14/conf
  7. #⽂文件改名
  8. mv zoo_sample.cfg zoo.cfg
  9. mkdir -p /opt/lagou/servers/zookeeper-3.4.14/data
  10. mkdir -p /opt/lagou/servers/zookeeper-3.4.14/data/logs
  11. cd /opt/lagou/servers/zookeeper-3.4.14/conf
  12. mv zoo_sample.cfg zoo.cfg
  13. vim zoo.cfg
  14. #更更新datadir
  15. dataDir=/opt/lagou/servers/zookeeper-3.4.14/data
  16. #增加logdir
  17. dataLogDir=/opt/lagou/servers/zookeeper-3.4.14/data/logs
  18. #增加集群配置
  19. ##server.服务器器ID=服务器器IP地址:服务器器之间通信端⼝口:服务器器之间投票选举端⼝口
  20. server.1=linux121:2888:3888
  21. server.2=linux122:2888:3888
  22. server.3=linux123:2888:3888
  23. #打开注释
  24. #ZK提供了了⾃自动清理理事务⽇日志和vim /etc/profile
  25. export HBASE_HOME=/opt/lagou/servers/hbase-1.3.1
  26. export PATH=$PATH:$HBASE_HOME/bin⽂文件的功能,这个参数指定了了清理理频率,单位是⼩小时
  27. autopurge.purgeInterval=1
复制代码
  1. cd /opt/lagou/servers/zookeeper-3.4.14/data
  2. echo 1 > myid
  3. 安装包分发并修改myid的值
  4. cd /opt/lagou/servers/hadoop-2.9.2/etc/hadoop
  5. ./rsync-script /opt/lagou/servers/zookeeper-3.4.14
  6. 修改myid值 linux122
  7. echo 2 >/opt/lagou/servers/zookeeper-3.4.14/data/myid
  8. 修改myid值 linux123
  9. echo 3 >/opt/lagou/servers/zookeeper-3.4.14/data/myid
  10. 依次启动三个zk实例例
  11. 启动命令(三个节点都要执⾏行行)
  12. /opt/lagou/servers/zookeeper-3.4.14/bin/zkServer.sh start
  13. 查看zk启动情况
  14. /opt/lagou/servers/zookeeper-3.4.14/bin/zkServer.sh status
  15. 集群启动停⽌止脚本
  16. vim zk.sh
  17. #!/bin/sh
  18. echo "start zookeeper server..."
  19. if(($#==0));then
  20. echo "no params";
  21. exit;
  22. fi
  23. hosts="linux121 linux122 linux123"
  24. for host in $hosts
  25. do
  26. ssh $host "source /etc/profile; /opt/lagou/servers/zookeeper-3.4.14/bin/zkServer.sh $1"
  27. done
  28. chmod 777 zk.sh
  29. ./zk.sh start
  30. ./zk.sh stop
  31. ./zk.sh status
复制代码
1.2.4 安装mysql
  1. 解压安装包到指定的规划目录 hbase-1.3.1-bin.tar.gz
  2. tar -zxvf hbase-1.3.1-bin.tar.gz -C /opt/lagou/servers
复制代码
  1. ln -s /opt/lagou/servers/hadoop-2.9.2/etc/hadoop/core-site.xml /opt/lagou/servers/hbase-1.3.1/conf/core-site.xml
  2. ln -s /opt/lagou/servers/hadoop-2.9.2/etc/hadoop/hdfs-site.xml /opt/lagou/servers/hbase-1.3.1/conf/hdfs-site.xml
复制代码
  1. cd /opt/lagou/servers/hbase-1.3.1/conf
  2. vim hbase-env.sh
  3. #添加java环境变量
  4. export JAVA_HOME=/opt/lagou/servers/jdk1.8.0_421
  5. #指定使用外部的zk集群
  6. export HBASE_MANAGES_ZK=FALSE
复制代码
  1. vim hbase-site.xml
  2. <configuration>
  3.          
  4.         <property>
  5.                 <name>hbase.rootdir</name>
  6.                 <value>hdfs://linux121:9000/hbase</value>
  7.         </property>
  8.                
  9.         <property>
  10.                 <name>hbase.cluster.distributed</name>
  11.                 <value>true</value>
  12.         </property>
  13.                
  14.         <property>
  15.                 <name>hbase.zookeeper.quorum</name>
  16.                 <value>linux121:2181,linux122:2181,linux123:2181</value>
  17.         </property>
  18. </configuration>      
复制代码
  1. vim regionservers
  2. linux121
  3. linux122
  4. linux123
  5. vim backup-masters
  6. linux122
复制代码
  1. vim /etc/profile
  2. export HBASE_HOME=/opt/lagou/servers/hbase-1.3.1
  3. export PATH=$PATH:$HBASE_HOME/bin
复制代码
图片不显示无伤大雅,就是示例,步骤都在。
非常重要:
如果后续需要接入spark,flink,hive,需要提前找到匹配的版本,这是原生部署的通病。
如果服务器资源足够,建议直接使用cdh部署。

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
您需要登录后才可以回帖 登录 | 立即注册