HBase环境搭建_hbase搭建-程序员宅基地

技术标签: hadoop  

1.一共需要搭建3台节点,1个主节点2个从节点。在安装之前需要配置好虚拟机网络静态IP,同步时间,关闭防火墙和使用Linux SSH(安全Shell)。

1.网络配置

(1)编辑VMware的网络配置

编辑-虚拟网络编辑器-点击NAT模式子网网关中第三个修改为10

(2)Windows的网络配置

找到网络和Internet设置-更改适配器选项-点击修改vmnet8-属性-internet协议版本4

修改ip地址 192.168.10.1

子网掩码 255.255.255.0

默认网关192.168.10.2

dns服务器 192.168.10.2

(3)虚拟机网络IP修改地址配置

root@hadoop100 ~]#vim /etc/sysconfig/network-scripts/ifcfg-ens33

 

TYPE="Ethernet"    #网络类型(通常是Ethemet)
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"   #IP的配置方法[none|static|bootp|dhcp](引导时不使用协议|静态分配IP|BOOTP协议|DHCP协议)
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"   
UUID="e83804c1-3257-4584-81bb-660665ac22f6"   #随机id
DEVICE="ens33"   #接口名(设备,网卡)
ONBOOT="yes"   #系统启动的时候网络接口是否有效(yes/no)
#IP地址
IPADDR=192.168.10.100  
#网关  
GATEWAY=192.168.10.2      
#域名解析器
DNS1=192.168.10.2

执行systemctl restart network命令,重启网络服务。如果报错,则执行“reboot”命令,重启虚拟机

 

修改主机名和hosts文件

1)修改主机名称

[root@hadoop100 ~]# vim /etc/hostname

hadoop100

2)配置Linux克隆机主机名称映射hosts文件,打开/etc/hosts

[root@hadoop100 ~]# vim /etc/hosts

添加如下内容

192.168.10.100 hadoop100

192.168.10.101 hadoop101

192.168.10.102 hadoop102

192.168.10.103 hadoop103

192.168.10.104 hadoop104

192.168.10.105 hadoop105

192.168.10.106 hadoop106

192.168.10.107 hadoop107

192.168.10.108 hadoop108

 远程工具逐步安装即可

在/opt目录下创建文件夹

(1)在/opt目录下创建module、software文件夹

[root@hadoop100 ~]# mkdir /opt/module

[root@hadoop100 ~]# mkdir /opt/software

 安装jdk

XShell传输工具将JDK导入到opt目录下面的software文件夹下面

在Linux系统下的opt目录中查看软件包是否导入成功

[atguigu@hadoop102 ~]$ ls /opt/software/

看到如下结果:

jdk-8u212-linux-x64.tar.gz

解压JDK到/opt/module目录下

[atguigu@hadoop102 software]$ tar -zxvf jdk-8u212-linux-x64.tar.gz -C /opt/module/

配置JDK环境变量

(1)新建/etc/profile.d/my_env.sh文件

[atguigu@hadoop102 ~]$ sudo vim /etc/profile.d/my_env.sh

添加如下内容

#JAVA_HOME

export JAVA_HOME=/opt/module/jdk1.8.0_212

export PATH=$PATH:$JAVA_HOME/bin

保存后退出

:wq

(3)source一下/etc/profile文件,让新的环境变量PATH生效

[atguigu@hadoop102 ~]$ source /etc/profile

测试JDK是否安装成功

[atguigu@hadoop102 ~]$ java -version

如果能看到以下结果,则代表Java安装成功。

java version "1.8.0_212"

注意:重启(如果java -version可以用就不用重启)

[atguigu@hadoop102 ~]$ sudo reboot

安装Hadoop

1)XShell文件传输工具将hadoop-3.1.3.tar.gz导入到opt目录下面的software文件夹下面

2)进入到Hadoop安装包路径下

[atguigu@hadoop102 ~]$ cd /opt/software/

3)解压安装文件到/opt/module下面

[atguigu@hadoop102 software]$ tar -zxvf hadoop-3.1.3.tar.gz -C /opt/module/

4)查看是否解压成功

[atguigu@hadoop102 software]$ ls /opt/module/

hadoop-3.1.3

5)将Hadoop添加到环境变量

(1)获取Hadoop安装路径

[atguigu@hadoop102 hadoop-3.1.3]$ pwd

/opt/module/hadoop-3.1.3

(2)打开/etc/profile.d/my_env.sh文件

[atguigu@hadoop102 hadoop-3.1.3]$ sudo vim /etc/profile.d/my_env.sh

  • 在my_env.sh文件末尾添加如下内容:(shift+g)

#HADOOP_HOME

export HADOOP_HOME=/opt/module/hadoop-3.1.3

export PATH=$PATH:$HADOOP_HOME/bin

export PATH=$PATH:$HADOOP_HOME/sbin

  • 保存并退出: :wq

(3)让修改后的文件生效

[atguigu@hadoop102 hadoop-3.1.3]$ source /etc/profile

6)测试是否安装成功

[atguigu@hadoop102 hadoop-3.1.3]$ hadoop version

Hadoop 3.1.3

7)重启如果Hadoop命令不能用再重启虚拟机)

[atguigu@hadoop102 hadoop-3.1.3]$ sudo reboot

配置集群

1)核心配置文件

配置core-site.xml

[atguigu@hadoop102 ~]$ cd $HADOOP_HOME/etc/hadoop

[atguigu@hadoop102 hadoop]$ vim core-site.xml

文件内容如下:

<?xml version="1.0" encoding="UTF-8"?>

<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>

    <!-- 指定NameNode的地址 -->

    <property>

        <name>fs.defaultFS</name>

        <value>hdfs://hadoop102:8020</value>

    </property>

    <!-- 指定hadoop数据的存储目录 -->

    <property>

        <name>hadoop.tmp.dir</name>

        <value>/opt/module/hadoop-3.1.3/data</value>

    </property>

    <!-- 配置HDFS网页登录使用的静态用户为atguigu -->

    <property>

        <name>hadoop.http.staticuser.user</name>

        <value>atguigu</value>

    </property>

</configuration>

(2)HDFS配置文件

配置hdfs-site.xml

[atguigu@hadoop102 hadoop]$ vim hdfs-site.xml

文件内容如下:

<?xml version="1.0" encoding="UTF-8"?>

<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>

<!-- nn web端访问地址-->

<property>

        <name>dfs.namenode.http-address</name>

        <value>hadoop102:9870</value>

    </property>

<!-- 2nn web端访问地址-->

    <property>

        <name>dfs.namenode.secondary.http-address</name>

        <value>hadoop104:9868</value>

    </property>

</configuration>

(3)YARN配置文件

配置yarn-site.xml

[atguigu@hadoop102 hadoop]$ vim yarn-site.xml

文件内容如下:

<?xml version="1.0" encoding="UTF-8"?>

<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>

    <!-- 指定MR走shuffle -->

    <property>

        <name>yarn.nodemanager.aux-services</name>

        <value>mapreduce_shuffle</value>

    </property>

    <!-- 指定ResourceManager的地址-->

    <property>

        <name>yarn.resourcemanager.hostname</name>

        <value>hadoop103</value>

    </property>

    <!-- 环境变量的继承 -->

    <property>

        <name>yarn.nodemanager.env-whitelist</name>

        <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>

    </property>

</configuration>

(4)MapReduce配置文件

配置mapred-site.xml

[atguigu@hadoop102 hadoop]$ vim mapred-site.xml

文件内容如下:

<?xml version="1.0" encoding="UTF-8"?>

<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>

<!-- 指定MapReduce程序运行在Yarn上 -->

    <property>

        <name>mapreduce.framework.name</name>

        <value>yarn</value>

    </property>

</configuration>

4)在集群上分发配置好的Hadoop配置文件

[atguigu@hadoop102 hadoop]$ xsync /opt/module/hadoop-3.1.3/etc/hadoop/

Zookeeper安装

下载zookeeper-3.4.10.tar.gz。上传到目录/opt/software下。通过以下命令解压到目录/opt/module中。

[root@slave0 ~]# tar -zxvf zookeeper-3.4.10.tar.gz -C /opt/module/

(2)配置Zookeeper环境变量

在/etc/profile文件最后追加相关内容。

[root@slave0 ~]# vi /etc/profile

内容如下:

#ZOOKEEPER

export ZOOKEEPER_HOME=/opt/module/zookeeper-3.4.10

export PATH=$PATH:$ZOOKEEPER_HOME/bin

(3)在/opt/module/zookeeper-3.4.10/ 这个目录下创建data/zkData

[root@slave0 zookeeper-3.4.10]#  mkdir -p data/zkData

(4)重命名/opt/module/zookeeper-3.4.10/conf这个目录下的zoo_sample.cfg为zoo.cfg

[root@slave0 conf]#  mv zoo_sample.cfg zoo.cfg

(5)配置zoo.cfg文件

dataDir=/opt/module/zookeeper-3.4.10/data/zkData

###增加如下配置

#######################cluster##########################

server.1=slave0:2888:3888

server.2=slave1:2888:3888

server.3=slave2:2888:3888

(6)配置Zookeeper集群

① 在/opt/module/zookeeper-3.4.10/data/zkData目录下创建一个myid的文件。

[root@slave0 zkData]#  touch myid

编辑myid文件,在文件中添加与server对应的编号:如1。

② 分发配置好的zookeeper到其他机器上,并分别修改myid文件中内容为2、3。

③ 分别启动zookeeper

[root@slave0 zookeeper-3.4.10]# bin/zkServer.sh start

[root@slave1 zookeeper-3.4.10]# bin/zkServer.sh start

[root@slave2 zookeeper-3.4.10]# bin/zkServer.sh start

接下来,在集群上分发以上所有文件。

 HBase安装

1)下载安装Zookeeper

下载zookeeper-3.4.10.tar.gz。上传到目录/opt/software下。通过以下命令解压到目录/opt/module中。

[root@slave0 ~]# tar -zxvf zookeeper-3.4.10.tar.gz -C /opt/module/

(2)配置HBase环境变量

在/etc/profile文件最后追加相关内容。

[root@slave0 ~]# vi /etc/profile

内容如下:

#HBASE_HOME

export HBASE_HOME=/opt/module/hbase-1.3.3

export PATH=$PATH:$HBASE_HOME/bin

(3)修改HBase的配置文件

hbase-site.xml文件:

<configuration>

<property>

<name>hbase.master.maxclockskew</name>

<value>180000</value>

</property>

<property>

<name>hbase.rootdir</name>

<value>hdfs://slave0:9000/hbase</value>

</property>

<property>  

<name>hbase.cluster.distributed</name>  

<value>true</value>

</property>

<property>     

<name>hbase.zookeeper.property.dataDir</name>     

<value>/opt/module/zookeeper-3.4.10/data/zkData</value>  

</property>

<property>  

<name>hbase.zookeeper.quorum</name>  

<value>slave0,slave1,slave2</value>

</property>

</configuration>

hbase-env.sh:

export JAVA_HOME=/opt/module/jdk1.7.0_79

export HBASE_MANAGES_ZK=false

regionservers:

slave0

slave1

slave2

(4)将Hadoop配置文件拷贝到HBase的conf目录下

将Hadoop的配置文件core-site.xml和hdfs-site.xml拷贝到HBase的conf目录下,接下来,在集群上分发以上所有文件。

(5)启动停止HBase集群

$ bin/start-hbase.sh

对应的停止命令:

$ bin/stop-hbase.sh

至此,HBase集群的安装配置完毕。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_60317308/article/details/123720048

智能推荐

c# 调用c++ lib静态库_c#调用lib-程序员宅基地

文章浏览阅读2w次,点赞7次,收藏51次。四个步骤1.创建C++ Win32项目动态库dll 2.在Win32项目动态库中添加 外部依赖项 lib头文件和lib库3.导出C接口4.c#调用c++动态库开始你的表演...①创建一个空白的解决方案,在解决方案中添加 Visual C++ , Win32 项目空白解决方案的创建:添加Visual C++ , Win32 项目这......_c#调用lib

deepin/ubuntu安装苹方字体-程序员宅基地

文章浏览阅读4.6k次。苹方字体是苹果系统上的黑体,挺好看的。注重颜值的网站都会使用,例如知乎:font-family: -apple-system, BlinkMacSystemFont, Helvetica Neue, PingFang SC, Microsoft YaHei, Source Han Sans SC, Noto Sans CJK SC, W..._ubuntu pingfang

html表单常见操作汇总_html表单的处理程序有那些-程序员宅基地

文章浏览阅读159次。表单表单概述表单标签表单域按钮控件demo表单标签表单标签基本语法结构<form action="处理数据程序的url地址“ method=”get|post“ name="表单名称”></form><!--action,当提交表单时,向何处发送表单中的数据,地址可以是相对地址也可以是绝对地址--><!--method将表单中的数据传送给服务器处理,get方式直接显示在url地址中,数据可以被缓存,且长度有限制;而post方式数据隐藏传输,_html表单的处理程序有那些

PHP设置谷歌验证器(Google Authenticator)实现操作二步验证_php otp 验证器-程序员宅基地

文章浏览阅读1.2k次。使用说明:开启Google的登陆二步验证(即Google Authenticator服务)后用户登陆时需要输入额外由手机客户端生成的一次性密码。实现Google Authenticator功能需要服务器端和客户端的支持。服务器端负责密钥的生成、验证一次性密码是否正确。客户端记录密钥后生成一次性密码。下载谷歌验证类库文件放到项目合适位置(我这边放在项目Vender下面)https://github.com/PHPGangsta/GoogleAuthenticatorPHP代码示例://引入谷_php otp 验证器

【Python】matplotlib.plot画图横坐标混乱及间隔处理_matplotlib更改横轴间距-程序员宅基地

文章浏览阅读4.3k次,点赞5次,收藏11次。matplotlib.plot画图横坐标混乱及间隔处理_matplotlib更改横轴间距

docker — 容器存储_docker 保存容器-程序员宅基地

文章浏览阅读2.2k次。①Storage driver 处理各镜像层及容器层的处理细节,实现了多层数据的堆叠,为用户 提供了多层数据合并后的统一视图②所有 Storage driver 都使用可堆叠图像层和写时复制(CoW)策略③docker info 命令可查看当系统上的 storage driver主要用于测试目的,不建议用于生成环境。_docker 保存容器

随便推点

网络拓扑结构_网络拓扑csdn-程序员宅基地

文章浏览阅读834次,点赞27次,收藏13次。网络拓扑结构是指计算机网络中各组件(如计算机、服务器、打印机、路由器、交换机等设备)及其连接线路在物理布局或逻辑构型上的排列形式。这种布局不仅描述了设备间的实际物理连接方式,也决定了数据在网络中流动的路径和方式。不同的网络拓扑结构影响着网络的性能、可靠性、可扩展性及管理维护的难易程度。_网络拓扑csdn

JS重写Date函数,兼容IOS系统_date.prototype 将所有 ios-程序员宅基地

文章浏览阅读1.8k次,点赞5次,收藏8次。IOS系统Date的坑要创建一个指定时间的new Date对象时,通常的做法是:new Date("2020-09-21 11:11:00")这行代码在 PC 端和安卓端都是正常的,而在 iOS 端则会提示 Invalid Date 无效日期。在IOS年月日中间的横岗许换成斜杠,也就是new Date("2020/09/21 11:11:00")通常为了兼容IOS的这个坑,需要做一些额外的特殊处理,笔者在开发的时候经常会忘了兼容IOS系统。所以就想试着重写Date函数,一劳永逸,避免每次ne_date.prototype 将所有 ios

如何将EXCEL表导入plsql数据库中-程序员宅基地

文章浏览阅读5.3k次。方法一:用PLSQL Developer工具。 1 在PLSQL Developer的sql window里输入select * from test for update; 2 按F8执行 3 打开锁, 再按一下加号. 鼠标点到第一列的列头,使全列成选中状态,然后粘贴,最后commit提交即可。(前提..._excel导入pl/sql

Git常用命令速查手册-程序员宅基地

文章浏览阅读83次。Git常用命令速查手册1、初始化仓库git init2、将文件添加到仓库git add 文件名 # 将工作区的某个文件添加到暂存区 git add -u # 添加所有被tracked文件中被修改或删除的文件信息到暂存区,不处理untracked的文件git add -A # 添加所有被tracked文件中被修改或删除的文件信息到暂存区,包括untracked的文件...

分享119个ASP.NET源码总有一个是你想要的_千博二手车源码v2023 build 1120-程序员宅基地

文章浏览阅读202次。分享119个ASP.NET源码总有一个是你想要的_千博二手车源码v2023 build 1120

【C++缺省函数】 空类默认产生的6个类成员函数_空类默认产生哪些类成员函数-程序员宅基地

文章浏览阅读1.8k次。版权声明:转载请注明出处 http://blog.csdn.net/irean_lau。目录(?)[+]1、缺省构造函数。2、缺省拷贝构造函数。3、 缺省析构函数。4、缺省赋值运算符。5、缺省取址运算符。6、 缺省取址运算符 const。[cpp] view plain copy_空类默认产生哪些类成员函数

推荐文章

热门文章

相关标签