执行spark-shell时遇到的主机地址的错误

下载了spark 1.4,执行spark-shell时遇到以下错误:

java.net.UnknownHostException: UKON-M-Q0EP: UKON-M-Q0EP: nodename nor servname provided, or not known

at java.net.InetAddress.getLocalHost(InetAddress.java:1473)

这并非spark特有的错误,而是Mac上使用java常见的一个问题,是application在查询主机相应的ip地址时无法查询到ip地址。

当中UKON-M-Q0EP是我Mac的主机名,可以通过Mac terminal的hostname命令查询到:

UKON-M-Q0EP:~ ukon$ hostname

UKON-M-Q0EP

可是系统却不能找到此主机名的ip地址,(事实上我是不太能理解为什么不能找到。系统就不能智能一点吗?但的确是不能),这可以通过以下的命令来验证:

UKON-M-Q0EP:~ ukon$ ping UKON-M-Q0EP

^C

可是假设我在/etc/hosts文件里增加此主机名与127.0.0.1就行ping到了:

UKON-M-Q0EP:~ ukon$ ping UKON-M-Q0EP

PING ukon-m-q0ep (127.0.0.1): 56 data bytes

64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.056 ms

64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.133 ms

64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.121 ms

64 bytes from 127.0.0.1: icmp_seq=3 ttl=64 time=0.134 ms

^C

可见,系统的确须要我们手动的在/etc/hosts中配置才可以找到主机的ip地址。

再次执行./bin/spark-shell,就行成功了

UKON-M-Q0EP:spark-1.4.0-bin-hadoop2.6 ukon$ ./bin/spark-shell

2015-07-04 00:12:04.604 java[31755:1803488] Unable to load realm info from SCDynamicStore

Welcome to

__

/ / _ _/ /__

\ \/ \/ _ `/ _/ ‘/

// ./_,// //_\ version 1.4.0

/_/

Using Scala version 2.10.4 (Java HotSpot(TM) 64-Bit Server VM, Java 1.7.0_45)

Type in expressions to have them evaluated.

Type :help for more information.

Spark context available as sc.

SQL context available as sqlContext.

scala>

DONE!

然后。成功的执行了一段spark代码,统计一个本地文件的行数和查询第一行的文本内容:

scala> val textFile = sc.textFile(“README.md”)

textFile: org.apache.spark.rdd.RDD[String] = MapPartitionsRDD[1] at textFile at :21

scala> textFile.count()

res0: Long = 98

scala> textFile.first()

res1: String = # Apache Spark

非常酷!

时间: 2024-08-24 12:25:25

执行spark-shell时遇到的主机地址的错误的相关文章

运行spark-shell时遇到的主机地址的错误

下载了spark 1.4,运行spark-shell时遇到以下错误: java.net.UnknownHostException: UKON-M-Q0EP: UKON-M-Q0EP: nodename nor servname provided, or not known at java.net.InetAddress.getLocalHost(InetAddress.java:1473) 这并不是spark特有的错误,而是Mac上使用java常见的一个问题,是application在查询主机对

运维规范:执行写入操作时,一定不要开两个分别连入不同主机的securCRT窗口

运维规范:执行写入操作时,一定不要开两个分别连入不同主机的securCRT窗口. 本文说的是写入操作,若是查询操作,能只打开一个主机的securCRT窗口,就不要打开两个主机的securCRT窗口. 由于ogg复制环境中需要单表数据重新同步的关系,我经常在生产环境的ogg源头库中expdp,在ogg目的端库中impdp 当我在生产环境的ogg源头库中expdp完成并scp dmp 文件到目的端os之后,我会立即exit退出ogg源头的securCRT窗口. 原因是我怕impdp之前的drop t

执行某个shell命令时出现shell-init的一个错误(目录不存在)

执行service命令时出现 shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directorychdir: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory 此错误是因为get

【原】Android 设备,如何root,执行adb shell,查看设备中的数据库信息等

(一)第一步:root 使用百度一键root 等app,一键就可root,步骤略 (二) 1.执行 adb shell su 获得root权限 ls 查看当前目录 cd data/data ls 选com.tencent.cm为例 cd com.tencent.cm/database ls 看到里边有一些 .db数据库文件 这时候,执行 sqlite3 tes_db.db 如果你的设备中有sqlite3,这句应该会执行成功,接下来就可以 执行select 语句了, ---------------

Java通过SSH2协议执行远程Shell脚本(ganymed-ssh2-build210.jar)

 该工具Jar包可在:http://download.csdn.net/detail/shenjianox/7769783及文档下载地址 ganymed-ssh2简介: Ganymed SSH-2 for Java是用纯Java实现SSH-2协议的一个包.在使用它的过程中非常容易,只需要指定合法的用户名口令, 或者授权认证文件,就可以创建到远程Linux主机的连接,在建立起来的会话中调用该Linux主机上的脚本文件,执行相关操作. 使用方法: 将 ganymed-ssh2-build210.

开源私有云平台 Nano v0.6.1发布 - 新增云主机地址池管理/Windows server虚

大家好,新一轮迭代完成,我们距离1.0正式发布又近了一步. 上一轮社区投票中得票最多的地址池管理功能在0.6.1中已经开发完成.地址池功能允许管理员添加多个IP地址网段绑定到计算资源池,当该资源池新建实例时,就会自动从地址段中分配IP地址,并且通过DHCP方式通知虚拟机操作系统.实例删除时,该IP地址释放回地址段,可以重新分配给其他实例. Nano为云主机分配的IP地址由平台管理,保持稳定,即使实例出现故障切换或者手工迁移到其他宿主机节点上,IP依然保持不变. 地址池功能能够让管理员更有效地规划

批量复制及执行命令shell脚本

平时在处理一个或几个机器运行环境时,一个机器一个机器处理也能接受,但是如果是一批机器,几十或几百台,要是一台一台去安装环境,光是输入同一的命令,估计你自己都想吐,所有聪明的人会想一些偷懒的办法,确实可以找到一些省时省力的方法,比如写一个批量处理shell脚本,这几天在处理一批(八九十台)机器环境,找了一些批量处理的脚本,包括批量传输(scp)文件到多台机器上.批量执行命令到多台机器.还有需要交互的命令,下面记录一些这些命令: 机器IP文件:ip.txt 192.168.10.201 192.16

命令行执行python模块时提示包找不到的问题

庄稼人不是专职python开发的道友,虽然与python相识已多年,可惜相识不相知,只是偶尔借助pydev写一些简单的小工具. 多年来,一直困惑于这样一个问题:同样的工程,同样的代码,使用pydev可以运行任意一个python脚本,而使用命令行运行却不行?命令行下(或者双击执行)总是提示"ImportError: No module named xxx"?pydev究竟做了什么魔术呢? 长话短说,以上面工程为例,如果是在命令行中直接执行 python c.py , 都会提示"

IP地址、子网掩码、网络号、主机号、网络地址、主机地址

对于192.168.0.0到192.168.0.255这个网络来说,以下说法中正确的是____. 正确答案: D   你的答案: D (正确) 网段内可用来作为主机IP的范围是:192.168.0.0到192.168.0.255 Network IP是192.168.0.255 Broadcast IP是192.168.0.0 网段内的主机可以通过网卡对网卡传递数据 192.168.0.1和192.168.0.2的主机需要使用Router传递数据包 是class B等级 添加笔记 求解答(4)