腾讯云服务器配置Hadoop+Hbase笔记

腾讯云服务器购买

购买腾讯云学生服务器,一个月视频会员的钱,买不了吃亏买不了上当。
选的ubuntu系统

主要配置流程参考这里

原教程写的很好,良心教程,但是在操作的时候由于本人太菜还是遇到了许多小问题,在此记录一下。

服务器初始配置

创建新用户hadoop,并使用/bin/bash作为shell

sudo useradd -m hadoop -s /bin/bash

为新用户设置密码

sudo passwd hadoop

为hadoop增加管理员权限

sudo adduser hadoop sudo

关闭当前shell使用hadoop作为用户名重新登陆,密码是刚刚设置的密码
登录之后进入shell页面会看到@前面的用户名从ubuntu变成了hadoop
更新apt

sudo apt-get update

安装vim

sudo apt-get install vim

安装SSH,配置SSH无密码登录(ubuntu默认安装了SSH client,此外还需要安装SSH server)

sudo apt-get install openssh-server

安装后,尝试本机登录本机

ssh localhost

配置SSH无密码登录

exit                           # 退出刚才的 ssh localhost
cd ~/.ssh/                     # 若没有该目录,请先执行一次ssh localhost
ssh-keygen -t rsa              # 会有提示,都按回车就可以
cat ./id_rsa.pub >> ./authorized_keys  # 加入授权

为服务器配置java环境

手动安装,推荐采用本方式

百度云盘,提取码gx0b,下载JDK1.8的安装包(Hadoop3.1.3需要JDK的版本在1.8及以上)。
在云服务器的安全组管理中新建安全组,开放所有端口(不安全的做法),保险起见可以重启一下shell
然后在用户目录下新建文件夹Downloads

mkdir Downloads
chmod 754 Downloads/      #修改文件权限防止传输时权限不足

在JDK压缩包下载的位置打开cmd(管理员权限打开)

scp 本地文件路径 用户名@ip:远端文件路径  #远端文件路径即用户目录下的路径

解压安装

cd /usr/lib
sudo mkdir jvm #创建/usr/lib/jvm目录用来存放JDK文件
cd ~ #进入hadoop用户的主目录
cd Downloads  
sudo tar -zxvf ./jdk-8u162-linux-x64.tar.gz -C /usr/lib/jvm  #把JDK文件解压到/usr/lib/jvm目录下

查看是否解压成功

cd /usr/lib/jvm
ls

使用vim编辑用户hadoop的环境变量配置文件为java配置环境变量

cd ~
vim ~/.bashrc

按Insert按键进入编辑模式,在文件开头的位置添加以下内容,然后按esc退出编辑,输入:wq保存

export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_162
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

让刚配置好的.bashrc立即生效

source ~/.bashrc

测试是否安装成功,如果成功会显示java版本信息

java -version

安装hadoop

使用和jdk安装包一样的传输方式将文件传输到Downloads文件下,然后在Downloads文件下执行以下操作

cd /usr/local/
sudo mv ./hadoop-2.6.0/ ./hadoop            # 将文件夹名改为hadoop,方便使用
sudo chown -R hadoop ./hadoop       # 修改文件权限

检查hadoop是否可用,成功则会显示Hadoop版本信息

cd /usr/local/hadoop
./bin/hadoop version

本文后续出现的./bin/…,./etc/…等包含./的路径 均在/usr/local/hadoop下执行!!!!!

本文后续出现的./bin/…,./etc/…等包含./的路径 均在/usr/local/hadoop下执行!!!!!

本文后续出现的./bin/…,./etc/…等包含./的路径 均在/usr/local/hadoop下执行!!!!!

Hadoop伪分布式配置

修改Hadoop的配置文件,为了避免权限不足可以使用sudo,还是不行就进入到hadoop目录下,使用sudo vim

sudo vim ./etc/hadoop/core-site.xml

原始

<configuration>
</configuration>

修改为

<configuration>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>file:/usr/local/hadoop/tmp</value>
        <description>Abase for other temporary directories.</description>
    </property>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
</configuration>

注意这个地方如果直接复制粘贴 ,vim会在原始缩进的基础上自动缩进,导致不断右移,所以可以先复制到文本文档中,删除所有缩进后复制,vim中的粘贴为shitf+insert
同样,修改配置文件hdfs-site.xml

sudo vim ./etc/hadoop/hdfs-site.xml

修改为

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/usr/local/hadoop/tmp/dfs/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/usr/local/hadoop/tmp/dfs/data</value>
    </property>
</configuration>

配置完成后,执行NameNode的格式化

cd /usr/local/hadoop
./bin/hdfs namenode -format

修改成功,会看到successfully formatted(比较难找,在靠后的位置),如果报错Error: JAVA_HOME is not set and could not be found. 的错误,则说明之前设置 JAVA_HOME 环境变量那边就没设置好,请按教程先设置好 JAVA_HOME 变量,否则后面的过程都是进行不下去的。如果已经按照前面教程在.bashrc文件中设置了JAVA_HOME,还是出现 Error: JAVA_HOME is not set and could not be found. 的错误,那么,请到hadoop的安装目录修改配置文件“/usr/local/hadoop/etc/hadoop/hadoop-env.sh”,在里面找到“export JAVA_HOME=${JAVA_HOME}”这行,然后,把它修改成JAVA安装路径的具体地址,比如,“export JAVA_HOME=/usr/lib/jvm/default-java”,然后,再次启动Hadoop。

然后开启NameNode和DataNode守护进程

cd /usr/local/hadoop
./sbin/start-dfs.sh  #start-dfs.sh是个完整的可执行文件,中间没有空格

运行Hadoop伪分布式实例

首先在HDFS中创建用户目录

./bin/hdfs dfs -mkdir -p /user/hadoop

然后导入./ect/hadoop中的xml文件作为样例的输入

./bin/hdfs dfs -mkdir input
./bin/hdfs dfs -put ./etc/hadoop/*.xml input

复制完成后可以查看是否成功

./bin/hdfs dfs -ls input

运行伪分布式实例,hadoop自带了常见的分布式运行实例,例如wordcount,grep等,可以直接执行测试hadoop是否好用,我们使用的是grep样例

./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep input output 'dfs[a-z.]+'

查看运行的结果,结果是存储在HDFS中的

./bin/hdfs dfs -cat output/*

关闭hadoop

./sbin/stop-dfs.sh

安装Hbase

需要在上文的Hadoop安装完成的基础上进行,参考教程,良心教程。

首先按照上文的文件传输方式将下载好的HBase压缩包传输到Downloads文件下,然后再Download是下执行以下操作:(本教程运行环境是在Ubuntu-64位系统下,HBase版本为hbase-1.1.2-bin.tar.gz,这是目前已经发行的已经编译好的稳定的版本,带有src的文件是未编译的版本。)

sudo tar -zxf ~/下载/hbase-1.1.2-bin.tar.gz -C /usr/local

改名方便操作

sudo mv /usr/local/hbase-1.1.2 /usr/local/hbase

查看版本确认安装成功

 /usr/local/hbase/bin/hbase version

测试运行

ssh localhost
cd /usr/local/hbase
sudo bin/start-hbase.sh
bin/hbase shell

这个地方有可能会报错Error:JAVA_HOME is not set,明明前面已经配置过了呀,只能手动配置java环境,进入hbase安装目录,使用sudo vim修改conf/目录下的hbase-env.sh文件,找到export JAVA_HOME这一行,发现已经被注释掉了,改成自己的java路径后取消注释,保存退出
再重新启动一下就成功啦!

然后就可以在里面实现一些增删改查的基本操作。操作完了用exit退出

使用完毕后关闭HBase,注意Hadoop和HBase的使用顺序为,启动Hadoop,启动HBase,关闭HBase,关闭Hadoop

sudo bin/stop-hbase.sh
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值