HADOOP 安装配置实践手册
目录
0
Linux 基础................................................................................................................................................... 1
0.1 Linux 终端 .............................................................................................................................................. 1
0.2 Linux 用户 .............................................................................................................................................. 1
0.3 Linux 目录 .............................................................................................................................................. 2
0.4 vi 编辑器 ............................................................................................................................................... 3
0.5 gedit 编辑器 .......................................................................................................................................... 6
1 Hadoop 安装配置 ............................................................................................................................................ 7
1.1 安装虚拟机 .......................................................................................................................................... 7
1.2 HadoopMaster 节点设置机器名 ........................................................................................................11
1.3 HadoopSlave 节点设置机器名 ...........................................................................................................12
1.4 配置静态 ip ........................................................................................................................................12
1.5 配置 ssh 免密钥登录 .........................................................................................................................13
1.6 安装 JDK .............................................................................................................................................14
1.7 安装 Hadoop ......................................................................................................................................15
1.8 格式化 HDFS.......................................................................................................................................19
1.9 启动 Hadoop ......................................................................................................................................20
1.10 克隆 VMware 虚机后网络配置 ......................................................................................................22
2 HDFS 编程 ....................................................................................................................................................27
2.1 安装 Eclipse ........................................................................................................................................27
2.2 输出 HDFS 上文件的内容 ..................................................................................................................29
2.3 读取文件示例 ....................................................................................................................................34
2.4 创建目录示例 ....................................................................................................................................35
2.5 写入文件示例 ....................................................................................................................................36
2.6 删除 HDFS 上的文件或目录 ..............................................................................................................38
2.7 查看文件是否存在 ............................................................................................................................40
2.8 文件位置信息 ....................................................................................................................................42
2.9 写入 sequence file ..............................................................................................................................44
2.10 读取 sequence file ............................................................................................................................46
2.11 HDFS 编程练习 ..................................................................................................................................47
2.12 Error solving .......................................................................................................................................47
3 MYSQL ..........................................................................................................................................................52
3.1 Mysql 安装与卸载 ..............................................................................................................................52
3.2 创建 hive 数据库 ...............................................................................................................................55
4 HIVE ..............................................................................................................................................................58
4.1 Hive 安装配置 ....................................................................................................................................58
4.2 Hive 数据类型 ....................................................................................................................................65
4.3 Hive 数据格式 ....................................................................................................................................68
4.4 Hive 架构 ............................................................................................................................................70
4.5 HQL 数据定义 ....................................................................................................................................72
4.6 HQL 数据操作 ....................................................................................................................................78
4.6 Hive 函数 ............................................................................................................................................82
5 Sqoop ..............................................................................................................................................................84
CentOS 6.5 安装 Hadoop
5.1 Sqoop 安装配置 ..................................................................................................................................84
5.2 Sqoop 示例--导入 import...................................................................................................................86
5.3 Sqoop 示例--导出 export ...................................................................................................................95
5.4 Sqoop 访问 mysql 权限问题 ..............................................................................................................97
6 Storm ..............................................................................................................................................................99
6.1 ZooKeeper 安装配置 ...........................................................................................................................99
6.2 Storm 安装配置 ................................................................................................................................103
6.3 Maven 安装配置 ...............................................................................................................................109
6.4 Storm 常用命令 ................................................................................................................................116
6.5 Storm 实例 ........................................................................................................................................117
7 Kafka ............................................................................................................................................................126
7.1 Kafka 安装 .........................................................................................................................................126
7.2 配置 Kafka ........................................................................................................................................127
7.3 启动 Kafka ........................................................................................................................................128
8 RDS ..............................................................................................................................................................129
8.1 阿里 RDS 简介 ..................................................................................................................................129
8.2 租用方法 ..........................................................................................................................................131
8.3 开发案例 ..........................................................................................................................................132
8.4 demo 数据导入 .................................................................................................................................150
9 词云 .............................................................................................................................................................163
9.1 词云概述 ..........................................................................................................................................163
9.2 工具选择 ..........................................................................................................................................163
9.3 开发过程 ..........................................................................................................................................164
3
0 Linux 基础
0.1 Linux 终端
Linux 是基于命令行的,一般用终端操作,如下图所示。
0.2 Linux 用户
Linux 分为超级用户 root 和普通用户(如本例中所用的 hust)。要严格区分这两类用户,在大数据后台操作
时大部分时间用的是 hust,做系统配置时,一般用 root。注意手册中的提示,否则可能会出现不可预料的
后果。
在 hust 用户下,命令提示符是 hust$,从 hust 用户切换到 root 用命令
[hust@master ~]$ su root
会提示输入口令,然后切换到 root 用户,命令提示符变为 root#。注意区别。
切换回 hust 用户可用命令
[root@master hust]# exit
如下图所示。
1
CentOS 6.5 安装 Hadoop
0.3 Linux 目录
每个用户有自己的默认主目录,如 hust 的默认目录是/home/hust
在命令提示符下输入命令【cd】会进入到自己的主目录。
输入命令【pwd】显示当前的绝对路径。
【注意】Linux 是严格区分大小写的,A 和 a 是完全不同的两个符号!!!
[hust@master ~]$ cd
[hust@master ~]$ pwd
进入目录的命令是【cd】,列目录命令是【ll】或【ls】。
[hust@master ~]$ cd
[hust@master ~]$ ll
列出 hust 用户的主目录,包括文件和目录,用不同的颜色作了标识。
进入 Desktop 目录,列一下内容。
[hust@master ~]$ cd Desktop
[hust@master Desktop]$ ll
其实就是当前用户桌面的内容,如下图所示。
2
CentOS 6.5 安装 Hadoop
【命令自动补全】在输入 linux 命令的时候,系统可以在不会引起冲突的情况下自动补全,比如刚才进入目
录,输入 cd De,这时按一下【TAB】,系统会自动补全剩余的字符,这样在输入较长的文件名或目录名时非
常方便。
两个特殊的目录,一个是当前目录,用.表示,一个是上级目录,用..表示。
如复制文件时,$cp 文件名 .,表示将文件复制到当前目录。
进入目录时,$cd ..,表示进入上一级目录。
[hust@master ~]$ cp 文件名 .
[hust@master ~]$ cd ..
0.4 vi 编辑器
vi 是 Linux 中最常用的内置字符编辑器,在修改配置文件,查看文本时经常用到。这个编辑器与 windows
环境下基于 GUI 的界面不太一样,所以刚开始使用时需要适应一下。
在终下进入 vi,并编辑一个名叫 a.txt 的文件。
[hust@master Desktop]$ vi a.txt
可以看到界面是这样的,最下面一行是状态区。
vi 是基于命令的编辑器,一切需要输入命令来实现。需要在命令模式和编辑模式之间进行切换。刚进入 vi 时
是命令模式,这时按 i,即可进入编辑模式。输入文件内容,界面如下图所示。
注意:最下面一行的状态已显示为 INSERT,表明现在是在编辑状态。
编辑过程中可以进行复制粘贴,但只能用鼠标操作,不支持 Ctrl+C 等快键。
3
CentOS 6.5 安装 Hadoop
编辑完成后,按 ESC 回到命令状态,然后按两下字母 Z,保存退出。
可以看到,在目录中新建了一个文件 a.txt。
用 linux 命令【cat】可以查看文件的内容。
用命令【rm】可以删除文件。
用命令【mv】可以移动文件。
[hust@master Desktop]$ cat a.txt
[hust@master Desktop]$ rm a.txt
vi 常用命令如下:
切换至插入模式(Insert mode)编辑文件
在「命令行模式(command mode)」下按一下字母「i」就可以进入「插入模式(Insert mode)」,这时候你
就可以开始输入文字了。
c) Insert 的切换
您目前处于「插入模式(Insert mode)」,您就只能一直输入文字,如果您发现输错了字!想用光标键往回
4
CentOS 6.5 安装 Hadoop
移动,将该字删除,就要先按一下「ESC」键转到「命令行模式(command mode)」再删除文字。
d) 退出 vi 及保存文件
在「命令行模式(command mode)」下,按一下「:」冒号键进入「Last line mode」,例如:
: w filename (输入 「w filename」将文章以指定的文件名 filename 保存)
: wq (输入「wq」,存盘并退出 vi)
: q! (输入 q!, 不存盘强制退出 vi)
3、命令行模式(command mode)功能键
1). 插入模式
按「i」切换进入插入模式「insert mode」,按“i”进入插入模式后是从光标当前位置开始输入文件;
按「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;
按「o」进入插入模式后,是插入新的一行,从行首开始输入文字。
2). 从插入模式切换为命令行模式
按「ESC」键。
3). 移动光标
vi 可以直接用键盘上的光标来上下左右移动,但正规的 vi 是用小写英文字母「h」、「j」、「k」、「l」,分别控
制光标左、下、上、右移一格。
按「ctrl」+「b」:屏幕往“后”移动一页。
按「ctrl」+「f」:屏幕往“前”移动一页。
按「ctrl」+「u」:屏幕往“后”移动半页。
按「ctrl」+「d」:屏幕往“前”移动半页。
按数字「0」:移到文章的开头。
按「G」:移动到文章的最后。
按「$」:移动到光标所在行的“行尾”。
按「^」:移动到光标所在行的“行首”
按「w」:光标跳到下个字的开头
按「e」:光标跳到下个字的字尾
按「b」:光标回到上个字的开头
按「#l」:光标移到该行的第#个位置,如:5l,56l。
4). 删除文字
「x」:每按一次,删除光标所在位置的“后面”一个字符。
「#x」:例如,「6x」表示删除光标所在位置的“后面”6 个字符。
「X」:大写的 X,每按一次,删除光标所在位置的“前面”一个字符。
「#X」:例如,「20X」表示删除光标所在位置的“前面”20 个字符。
「dd」:删除光标所在行。
「#dd」:从光标所在行开始删除#行
5). 复制
「yw」:将光标所在之处到字尾的字符复制到缓冲区中。
「#yw」:复制#个字到缓冲区
「yy」:复制光标所在行到缓冲区。
「#yy」:例如,「6yy」表示拷贝从光标所在的该行“往下数”6 行文字。
「p」:将缓冲区内的字符贴到光标所在位置。注意:所有与“y”有关的复制命令都必须与“p”配合才能
完成复制与粘贴功能。
6). 替换
「r」:替换光标所在处的字符。
「R」:替换光标所到之处的字符,直到按下「ESC」键为止。
7). 回复上一次操作
「u」:如果您误执行一个命令,可以马上按下「u」,回到上一个操作。按多次“u”可以执行多次回复。
5