安装介质:
jdk-8u162-linux-x64.tar.gz 提取码:2bh8
hadoop-2.7.3.tar.gz 提取码:d4g2
scala-2.12.6.tgz 提取码:s2ly
spark-2.1.0-bin-hadoop2.7.tgz 提取码:5kcf
准备3台Linux主机,按照下面的步骤在每台主机上执行一遍,设置成如下结果:
安装Linux *** 作系统比较简单,这里不再详细。参考:《 Linux从入门到精通1:使用 VMware Workstation 14 Pro 安装 CentOS 7 详细图文教程 》
编辑hosts配置文件:# vi /etc/hosts,追加3行:
测试主机名是否可用:
(1)使用ssh-keygen工具生成秘钥对:
(2)将生成的公钥发给三台主机:master、slave1、slave2:
(3)测试秘钥认证是否成功:
由于各个主机上的时间可能不一致,会导致执行Spark程序出现异常,因此需要同步各个主机的时间。在实际生成环境中,一般使用时间服务器来同步时间,但是搭建时间服务器相对较为复杂。这里介绍一种简单的方法来快速同步每台主机主机的时间。我们知道,使用date命令可以设置主机的时间,因此这里使用putty的插件MTPuTTY来同时向每一台主机发送date命令,以到达同步时间的目的。
(1)使用MTPuTTY工具连接三台主机,点击MTPuTTY工具的Tools菜单下的“Send script…”子菜单,打开发送脚本工具窗口。
(2)输入命令:date -s 2018-05-28,然后回车(注意:一定要回车,否则只发送不执行),在下面服务器列表中选择要同步的主机,然后点击“Send script”,即可将时间同步为2018-05-28 00:00:00。
使用winscp工具将JDK安装包 jdk-8u144-linux-x64.tar.gz 上传到/root/tools/目录中,该目录是事先创建的。
进入/root/tools/目录,将jdk安装包解压到/root/training/目录中,该目录也是事先创建的。
使用winscp工具将Hadoop安装包 hadoop-2.7.3.tar.gz 上传到master节点的/root/tools/目录中,该目录是事先创建的。
进入/root/tools/目录,将hadoop安装包解压到/root/training/目录中,该目录也是事先创建的。
进入Hadoop配置文件目录:
(1) 配置hadoop-env.sh文件:
(2) 配置hdfs-site.xml文件:
(3) 配置core-site.xml文件:
(4) 配置mapred-site.xml文件:
将模板文件mapred-site.xml.template拷贝一份重命名为mapred-site.xml然后编辑:
(5) 配置yarn-site.xml文件:
(6) 配置slaves文件:
将master上配置好的Hadoop安装目录分别复制给两个从节点slave1和slave2,并验证是否成功。
第一次启动需要输入yes继续。
启动成功后,使用jps命令查看各个节点上开启的进程:
使用命令行查看HDFS的状态:
使用浏览器查看HDFS的状态:
使用浏览器查看YARN的状态:
(1) 在HDFS上创建输入目录/input:
(2) 将本地数据文件data.txt上传至该目录:
(3) 进入到Hadoop的示例程序目录:
(4) 执行示例程序中的Wordcount程序,以HDFS上的/input/data.txt作为输入数据,输出结果存放到HDFS上的/out/wc目录下:
(5) 查看进度和结果:
可以通过终端打印出来的日志信息知道执行进度:
执行结束后可以在HDFS上的/out/wc目录下查看是否有_SUCCESS标志文件来判断是否执行成功。
如果执行成功,可以在输出目录下看到_SUCCESS标志文件,且可以在part-r-00000文件中查看到wordcount程序的结果:
由于Scala只是一个应用软件,只需要安装在master节点即可。
使用winscp工具将Scala安装包上传到master节点的/root/tools目录下:
进入/root/tools目录,将Scala安装包解压到安装目录/root/training/:
将Scala的家目录加入到环境变量PATH中:
使环境变量生效:
输入scala命令,如下进入scala环境,则证明scala安装成功:
我们先在master节点上配置好参数,再分发给两个从节点slave1和slave2。
使用winscp工具将Spark安装包上传到master节点的/root/tools目录下:
进入/root/tools目录,将Spark安装包解压到安装目录/root/training/下:
注意:由于Spark的命令脚本和Hadoop的命令脚本有冲突(比如都有start-all.sh和stop-all.sh等),
所以这里需要注释掉Hadoop的环境变量,添加Spark的环境变量:
按Esc:wq保存退出,使用source命令使配置文件立即生效:
进入Spark的配置文件目录下:
(1) 配置spark-env.sh文件:
(2) 配置slaves文件:
将master上配置好的Spark安装目录分别复制给两个从节点slave1和slave2,并验证是否成功。
启动后查看每个节点上的进程:
使用浏览器监控Spark的状态:
使用spark-shell命令进入SparkContext(即Scala环境):
启动了spark-shell之后,可以使用4040端口访问其Web控制台页面(注意:如果一台机器上启动了多个spark-shell,即运行了多个SparkContext,那么端口会自动连续递增,如4041,4042,4043等等):
注意:由于我们将Hadoop从环境变量中注释掉了,这时只能手动进入到Hadoop的sbin目录停止Hadoop:
Spark中常用的端口总结:
在 SSH 下远程使用 IDE 编译和调试步骤如下:本地机安装运行xming,运行putty,设置putty的Enable X11 forwarding
跳板机上解压一个eclipse cdt,目录无所谓,哪有权限哪方便就丢哪,这解压到/opt目录,修改自己主目录下的.profile文件,添加eclipse的执行文件目录到PATH环境中
putty用ssh登录到跳板机,直接输入命令eclipse &运行
至于eclipse的remote gdb就直接贴网上的了
linux下用eclipse和gdbserver远程调试嵌入式linux上(目标机)的程序_BBKK_新浪博客
默认的xming显示出来的界面可能字体会比较小,修改启动参数,在后面加-dip 100
有时会需要开多个session,或者还得用putty连开发板,这样用putty会开很多个窗口出来,推荐一个mtputty,可以把putty当作标签显示,切换方便很多,看起来也舒服很多
再继续就是本地和跳板之间的文件共享传输了,在跳板机上配置samba服务器,本地直接映射网络硬盘,访问跳板机跟访问本地硬盘一样方便,如果开机够快而且服务器从不关机的,还可以勾选登陆时重连
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)