在EC2中设置和管理Apache Spark集群
项目描述
CGCloud插件为Spark允许您在几分钟内设置一个完全配置的Apache Spark集群在EC2中,无论节点数多少。虽然Apache Spark已经包含一个名为spark-ec2的脚本,可以用来在EC2中构建集群,但CGCloud Spark与spark-ec2有以下不同之处
Tachyon或Yarn不包含在内
设置时间不与节点数成线性比例。设置一个100节点的集群所需时间与设置一个10节点的集群所需时间相同(2-3分钟,而spark-ec2则需要45分钟)。这是通过将所有所需的软件打包到一个AMIs中实现的。所有从属节点同时启动,并在几分钟内自主加入集群。
与spark-ec2不同,可以通过EC2 API或EC2控制台停止和启动集群,无需涉及cgcloud。
Spark服务(主节点和从节点)以非特权用户身份运行,而不是像spark-ec2那样以root身份运行。同样适用于HDFS服务(NameNode、DataNode和SecondaryNameNode)。
Spark和Hadoop服务通过常规init脚本在实例启动时自动启动。
可以通过从AMI启动新实例轻松添加节点。它们将自动加入集群。之后可能需要重新平衡HDFS。
可以通过扩展SparkMaster和SparkSlave类来自定义从集群节点启动的AMI。
CGCloud Spark使用CGCloud Agent,负责维护每个节点上的授权密钥对列表。
CGCloud Spark基于官方Ubuntu Trusty 14.04 LTS,而不是Amazon Linux AMI。
先决条件
“cgcloud-spark”软件包需要安装“cgcloud-core”软件包及其先决条件。
安装
在粘贴任何命令之前,请仔细阅读本节内容,并确保已安装所有先决条件。建议将此插件安装到为CGCloud创建的虚拟环境中。
source ~/cgcloud/bin/activate pip install cgcloud-spark
如果您遇到DistributionNotFound: No distributions matching the version for cgcloud-spark错误,请尝试运行pip install --pre cgcloud-spark。
在继续之前,请确保已配置“cgcloud-core”。
配置
通过添加以下行修改您的.profile或.bash_profile文件
export CGCLOUD_PLUGINS="cgcloud.spark:$CGCLOUD_PLUGINS"
登录和注销(或在OS X上,打开一个新的终端标签/窗口)。
通过运行以下命令验证安装
cgcloud list-roles
输出应包括spark-box角色。
用法
创建一个t2.micro实例作为集群节点的模板
cgcloud create -IT spark-box
I选项会在设置完成后停止实例并创建其(AMI)镜像。而T选项则在之后终止实例。
现在,通过从该AMI启动主节点和从节点来创建一个集群
cgcloud create-cluster spark -s 2 -t m3.large
这将使用m3.large实例类型启动一个主节点和两个从节点。
通过SSH连接到主节点
cgcloud ssh spark-master
… 或第一个从节点
cgcloud ssh -o 0 spark-slave
… 或第二个从节点
cgcloud ssh -o 1 spark-slave
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于 安装软件包 的信息。
源代码发行版
构建发行版
cgcloud-spark-1.6.0.tar.gz 的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 9fa7bd71a1d8083de1146439826cb8a0bef60726fc4a9e1e4f5374faf30d0eb9 |
|
MD5 | ffc970ce94e4590cecb00634d44f8f54 |
|
BLAKE2b-256 | 9cbc0b0c98bd7af80ae9a7fd26c09892781e940a4afe7c11b36574d915804e2e |
cgcloud_spark-1.6.0-py2.7.egg 的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 8c6bb0748d4fe5e498d6eb6c556c2543480b35ad5a3b011194f4d0dfad0b1890 |
|
MD5 | 96bf1642bc03685540726dbb1fcae38a |
|
BLAKE2b-256 | f9ab92694ce6d36a0d6ed8862685a687fbf44dc5897bec09f605383253aac9e3 |