近期在学习集群计算,尝试学习Apache Mesos 和 Spark 。期间遇到一些问题,现在记录下来以便能给遇到同样问题的童鞋以帮助。
1.spark 0.7.2 安装
a.建议直接下载 prebuilt packages,这样省去编译时过长时间的等待以及 twitter部分 报错!
b.由于spark 本身是scala 语言写的,需要有 scala 环境(scala-2.9.3.tgz),配置部分很简单,此处略
2.在解压spark后的主目录下执行各种 api shell 时,可能会遇到如下错误:
BlockManagerUI: Failed to create BlockManager WebUI. spark.SparkException: Failed to bind web UI to port XXXXX.
原因:因为在执行api shell(./spark-shell or ./pyspark) 时,spark 根据 (hostname) 所对应的 IP 地址来选择一个随机端口建立连接,
而Mesos 集群在配置时一般需要把/etc/hosts 中的 127.0.1.1 一行给注释掉,这样spark shell 就找不到一个合适的ip地址,故出现错误!
解决方法:
将本机的 (ifconfig 的地址) 添加到 /etc/hosts 中,即建立新的hostname 和 IP 之间的对应关系!