我们安装了猎户座、天鹅座和Cosmos,并试图使它们之间的连接正常工作:通过代理,猎户座消息将被转发到天鹅座,天鹅座反过来将这些消息写入Cosmos数据库。
我们知道Orion工作正常(它之前已经过测试和使用),并且已经使用测试python脚本测试了Cygnus (如https://github.com/telefonicaid/fiware-cygnus/blob/master/doc/quick_start_guide.md中所解释的)。目前我们正在尝试配置天鹅座,以便它接收来自猎户座的消息,并随后将它们写入Cosmos数据库。
1)我们如何配置天鹅座/需要设置哪些参数,以便获得从猎户座通过天鹅座到宇宙的最简单工作链路?有没有简单的工作示例可供我们查看?( agent_1.conf是唯一需要在Cygnus中设置的配置文件吗?)
2)我们如何/通过什么方式让天鹅座订阅猎户座?
3)我们如何将数据持久化到Cosmos?
我们已经在StackOverflow上阅读了相当多类似问题的答案;并且已经在Github或Fiware网站上阅读了有关上述问题的文档,但似乎无法使其工作……
非常感谢!
发布于 2015-10-16 13:47:52
假设您从RPM安装了Cygnus,您需要的最低配置是在一个/usr/cygnus/conf/agent_1.conf文件(存在一个您可以复制的/usr/cygnus/conf/agent.conf.template文件)中为这组参数赋值:
cygnusagent.sources = http-source
cygnusagent.sinks = hdfs-sink
cygnusagent.channels = hdfs-channel
cygnusagent.sources.http-source.type = org.apache.flume.source.http.HTTPSource
cygnusagent.sources.http-source.channels = hdfs-channel
cygnusagent.sources.http-source.port = 5050
cygnusagent.sources.http-source.handler = com.telefonica.iot.cygnus.handlers.OrionRestHandler
cygnusagent.sources.http-source.handler.notification_target = /notify
cygnusagent.sources.http-source.handler.default_service = def_serv
cygnusagent.sources.http-source.handler.default_service_path = def_servpath
cygnusagent.sources.http-source.handler.events_ttl = 10
cygnusagent.sources.http-source.interceptors = ts gi
cygnusagent.sources.http-source.interceptors.ts.type = timestamp
cygnusagent.sources.http-source.interceptors.gi.type = com.telefonica.iot.cygnus.interceptors.GroupingInterceptor$Builder
cygnusagent.sources.http-source.interceptors.gi.grouping_rules_conf_file = /usr/cygnus/conf/grouping_rules.conf
cygnusagent.sinks.hdfs-sink.type = com.telefonica.iot.cygnus.sinks.OrionHDFSSink
cygnusagent.sinks.hdfs-sink.channel = hdfs-channel
cygnusagent.sinks.hdfs-sink.enable_grouping = false
cygnusagent.sinks.hdfs-sink.hdfs_host = cosmos.lab.fiware.org
cygnusagent.sinks.hdfs-sink.hdfs_port = 14000
cygnusagent.sinks.hdfs-sink.hdfs_username = hdfs_username
cygnusagent.sinks.hdfs-sink.hdfs_password = xxxxxxxx
cygnusagent.sinks.hdfs-sink.oauth2_token = xxxxxxxx
cygnusagent.sinks.hdfs-sink.file_format = json-column
cygnusagent.sinks.hdfs-sink.hive_server_version = 2
cygnusagent.sinks.hdfs-sink.hive_host = cosmos.lab.fiware.org
cygnusagent.sinks.hdfs-sink.hive_port = 10000
cygnusagent.sinks.hdfs-sink.krb5_auth = false
cygnusagent.channels.hdfs-channel.type = memory
cygnusagent.channels.hdfs-channel.capacity = 1000
cygnusagent.channels.hdfs-channel.transactionCapacity = 100除了上述功能外,您还需要:
创建这个文件,你可以从/usr/cygnus/conf/grouping_rules.conf.template.
/usr/cygnus/conf/grouping_rules.conf的全局实例中有一个帐户,你可以在https://cosmos.lab.fiware.org上得到它。注册后,门户将打印您的凭据。用户名和密码都必须在上面的文件中配置。现在,您可以将Cygnus作为标准应用程序运行:
$ /usr/cygnus/bin/cygnus-flume-ng agent --conf /usr/cygnus/conf -f /usr/cygnus/conf/agent_1.conf -n cygnusagent -Dflume.root.logger=INFO,console如果您想要将Cygnus作为服务运行,您将需要一个额外的/usr/cygnus/conf/cygnus_instance_1.conf (安装中有另一个模板),其中包含以下默认内容:
CYGNUS_USER=cygnus
CONFIG_FOLDER=/usr/cygnus/conf
CONFIG_FILE=/usr/cygnus/conf/agent_<id>.conf
AGENT_NAME=cygnusagent
LOGFILE_NAME=cygnus.log
ADMIN_PORT=8081
POLLING_INTERVAL=30然后,您可以像处理任何其他服务一样继续:
$ service cygnus starthttps://stackoverflow.com/questions/33079133
复制相似问题