0

我正在尝试使用 streamparse 开发拓扑并将其提交到风暴集群。

由于 streamparse 有它的默认字数拓扑来帮助用户测试集群,我可以在网上找到的大多数教程都是关于将这个默认字数示例提交到风暴集群。

我的问题是如何提交我自己的拓扑?例如,我有一个名为“mytopology”的拓扑。根据streamparse的文档,我试过了

sparse submit --environment prod --name mytopology

我的配置文件是

{
    "serializer": "json",
    "topology_specs": "topologies/",
    "virtualenv_specs": "virtualenvs/",
    "envs": {
        "prod": {
            "user": "userx",
            "ssh_password": "mypasswd",
            "nimbus": "10.XXX.XX.210",
            "workers": ["10.XXX.XX.206"],
            "log": {
                "path": "/home/userx/stormapp/splog",
                "max_bytes": 1000000,
                "backup_count": 10,
                "level": "info"
            },
            "virtualenv_root": "/home/userx/stormapp/venv"
        }
    }
}

然而,日志显示

JAR created: _build/wordcount-0.0.1-SNAPSHOT.jar

已创建并提交给 Nimbus。

是不是

--name mytopology

应该找到 mytopology.py 并构建类似 mytopology.jar 的东西并提交吗?

然后我检查了project.clj文件,最上面一行是

defproject wordcount "0.0.1-SNAPSHOT"

现在很混乱。我还应该配置这个文件吗?当我做

sparse submit --environment prod --name mytopology

它是否执行与此文件相关的操作?请帮忙...

4

1 回答 1

0

我假设您首先使用以下命令创建了 wordcount 项目:sparse quickstart wordcount 在这种情况下,“wordcount”将是使用该sparse run命令提交给 Storm 的拓扑的名称。现在,如果您想提交另一个拓扑,例如mytopology,您必须创建另一个名为的快速入门项目mytopology并编辑该config.json文件以适应您的技术环境。您不能像我猜的那样复制和重命名“wordcount”项目的文件夹,因为“wordcount”出现在您的project.clj文件中。

于 2018-10-03T11:17:08.877 回答