Hadoop集群搭建(三)----hive,zookeepear和hbase安装

    科技2023-09-28  102

    这篇博客就继续接着说如何在虚拟机中安装及配置hive和hbase

    Ⅰ,相关组件(附带下载链接)

    hadoop生态圈还有很多的组件。例如Spark,Hbase,hive等等,因为篇幅问题,这些软件在此处不介绍,给出下载链接,其余的安装教程将会在其余的博客给出,(本文需要使用链接中的mysql驱动,hbase和hive,zookeepear将其安装包上传到root目录)

    集群组件下载链接 密码:zccy

    Ⅱ,安装hive

    一,解压hive源文件并改名

    tar -xvf /root/apache-hive-2.3.6-bin.tar.gz mv apache-hive-2.3.6-bin ./hive

    二,下载mysql源(需要联网)

    下载mysql源

    wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm

    安装mysql源(有时需要执行两次,注意信息)

    yum localinstall mysql57-community-release-el7-8.noarch.rpm

    检查mysql源是否安装成功

    yum repolist enabled | grep "mysql.*-community.*"

    安装mysql

    yum remove mariadb-server yum install mysql-community-server

    启动MySQL服务

    systemctl start mysqld

    查看mysql的启动状态

    systemctl status mysqld

    三,设置mysql初始密码

    1,设置无验证登录

    mysql57之后有默认密码,比起去找,直接设置停止权限验证会更加简单一些

    vi /etc/my.cnf

    在mysqld段添加

    port=3306 character-set-server = utf8 explicit_defaults_for_timestamp=1 skip-grant-tables=1

    保存并退出 重启mysql

    service mysqld restart

    2,修改mysql密码

    登录(输密码时直接回车)

    mysql -uroot -p

    更换数据库

    use mysql

    修改密码并立即生效

    UPDATE user SET authentication_string=PASSWORD("0607184") WHERE user='root'; flush privileges; quit

    3,改回my.cnf文件

    vi /etc/my.cnf

    去掉skip-grant-tables=1

    保存并退出 重启mysql

    service mysqld restart

    打开

    mysql -uroot -p0607184

    修改变量(更改密码权限表要求)

    set global validate_password_length=6; set global validate_password_policy=0;

    修改密码

    SET PASSWORD = PASSWORD('0607184');

    新建hive数据库

    create database hive;

    修改权限

    update user set host='%' where user='root';

    四,配置hive环境

    复制java connector到依赖库

    将准备好的驱动mysql-connector-java-5.1.27.tar.gz(上面网盘里有)移动到hive的lib目录

    tar -xvf /root/mysql-connector-java-5.1.27.tar.gz mv /root/mysql-connector-java-5.1.27/mysql-connector-java-5.1.27-bin.jar ./hive/lib

    1,修改配置文件

    vi .bash_profile

    增加下面两条

    export HIVE_HOME=/root/hive export PATH=$PATH:$HIVE_HOME/bin

    加载配置文件

    source .bash_profile

    2,修改hive-env.sh

    进入hive目录修改文件

    cd /root/hive/conf cp hive-env.sh.template hive-env.sh cp hive-default.xml.template hive-site.xml vi hive-env.sh

    增加以下三行

    export JAVA_HOME=/root/jdk/jdk1.8.0_144/ export HADOOP_HOME=/root/hadoop-2.7.7 export HIVE_HOME=/root/hive

    3,修改hive-site.xml

    (建议别用命令行,行数太多了) 找到javax.jdo.option.ConnectionUserName修改几条

    修改用户名

    修改密码 修改驱动

    修改链接地址

    修改目录

    五,验证 初始化元数据

    schematool -dbType mysql -initSchema

    启动hadoop集群

    start-all.sh

    验证

    hive

    Ⅲ,安装zookeepear

    一,解压安装包

    cd tar -xvf zookeeper-3.4.6.tar.gz mv zookeeper-3.4.6 zoo mkdir ~/zoo/zoodata mkdir ~/zoo/zoologs

    二,配置环境变量

    1,修改环境变量(所有机器)

    vi .bash_profile

    增加下面两条

    export ZOOKEEPER_HOME=/root/zoo export PATH=$PATH:$ZOOKEEPER_HOME/bin

    加载配置文件

    source .bash_profile

    2,编辑核心配置文件

    cd ~/zoo/conf/ cp zoo_sample.cfg zoo.cfg vi zoo.cfg tickTime=2000 dataDir=/root/zoo/zoodata dataLogDir=/root/zoo/logs clientPort=2181 initLimit=5 syncLimit=2 quorumListenOnAllIPs=true server.1=master:2888:3888 server.2=slave:2888:3888 server.3=slave2:2888:3888

    3,设置myid

    在三台机器dataDir目录(~/zoo/zoodata 目录)下,分别生成一个myid文件,其内容分别为1,2,3

    scp -r /root/zoo root@slave:~/ scp -r /root/zoo root@slave2:~/

    分别在三个机器

    vi ~/zoo/zoodata/myid

    输入id,master为1,slave为2,slave2为3 echo 1 > ~/zoo/zoodata/myid

    三,验证

    bin/zkCli.sh -server 192.168.229.160:2181,192.168.229.161:2181,192.168.229.162:2181

    如果出错,可以参考 启动zookeepear服务报错:无法找到路由的解决办法

    Ⅳ,安装hbase(伪分布式)

    一,解压hbase

    cd tar -zxvf ~/hbase-2.1.7-bin.tar.gz mv hbase-2.1.7 hbase

    二,配置hbase

    进入配置文件夹

    cd /root/hbase/conf

    编辑hbase-env.sh

    vi hbase-env.sh

    修改JAVA_HOME为自己的jdk路径

    export JAVA_HOME=/root/jdk/jdk1.8.0_144/ export HBASE_MANAGES_ZK=true

    编辑hbase-site.xml

    ··· vi hbase-site.xml ··· 修改如下

    <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <property> <name>hbase.cluster.distributed</name> <value>true</value> </property> <property> <name>hbase.rootdir</name> <value>hdfs://master:9000/hbase</value> </property> <property> <name>hbase.zookeeper.quorum</name> <value>master,slave,slave2</value> </property> <property> <name>dfs.replication</name> <value>2</value> </property> <property> <name>hbase.master.info.port</name> <value>60010</value> </property> </property> <property> <name>hbase.zookeeper.property.dataDir</name> <value>/hbase/zoodata</value> </property> </configuration>

    修改 regionservers

    vi regionservers

    修改localhost为

    slave slave2

    拷贝hdfs-site.xml和core-site.xml文件

    拷贝Hadoop的core-site.xml,hdfs-site.xml文件至/root/hbase/conf 目录

    设置环境变量(所有节点)

    vi ~/.bash_profile

    添加以下信息

    export HBASE_HOME=/root/hbase export PATH=$HBASE_HOME/bin:$PATH

    更新

    source ~/.bash_profile

    修改hbase源文件

    修改hbase目录下bin文件夹的hbase文件 按下列连接修改即可(红色删除,黄色修改,绿色添加) 修改步骤 (此方法来源:来源连接)

    复制到从节点

    scp -r ~/hbase slave:~/ scp -r ~/hbase slave2:~/

    启动服务

    start-all.sh start-hbase.sh

    三,测试

    jps 需要存在hquorumpeer和Hmaster master如上 slave如上

    WEB端 浏览器打开master:60010 hive shell 查看

    四,使用外置zookeepear

    如果想使用外置zookeepear,修改habse-env.sh的HBASE_MANAGES_ZK为false,再拷贝zookeeper conf/zoo.cfg到hbase的conf/下即可

    Processed: 0.010, SQL: 8