如何使用 Cygnus 将 Orion 与 public cosmos.lab.fi-ware.org 实例连接

How to connect Orion with the public cosmos.lab.fi-ware.org instance using Cygnus

我正在尝试使用 Cygnus 将我的 Orion 数据保存到 public cosmos.lab.fi-ware.org 实例中。 Cygnus 已启动,运行 和我的 /usr/cygnus/conf/agent_1.confHDFSSink 部分如下所示:

# OrionHDFSSink configuration cygnusagent.sinks.hdfs-sink.channel = hdfs-channel cygnusagent.sinks.hdfs-sink.type = com.telefonica.iot.cygnus.sinks.OrionHDFSSink cygnusagent.sinks.hdfs-sink.enable_grouping = false cygnusagent.sinks.hdfs-sink.backend_impl = rest cygnusagent.sinks.hdfs-sink.hdfs_host = cosmos.lab.fi-ware.org cygnusagent.sinks.hdfs-sink.hdfs_port = 14000 cygnusagent.sinks.hdfs-sink.hdfs_username = myUsernameInCosmosLabInstance cygnusagent.sinks.hdfs-sink.hdfs_password = myPasswordInCosmosLabInstance cygnusagent.sinks.hdfs-sink.oauth2_token = myTokenForCosmosLabInstance cygnusagent.sinks.hdfs-sink.hive = true cygnusagent.sinks.hdfs-sink.hive.server_version = 2 cygnusagent.sinks.hdfs-sink.hive.host = cosmos.lablfi-ware.org cygnusagent.sinks.hdfs-sink.hive.port = 10000 cygnusagent.sinks.hdfs-sink.hive.db_type = default-db

我添加了一个以 Cygnus 作为参考端点的新订阅,并将更新发送到之前创建的 NGSIEntity,但我的 cosmos.lab.fi-ware.org[=27 中没有任何内容=] 实例。 在查看 /var/log/cygnus/cygnus.log 时,我找不到任何有用的东西,并且发现了一些 Java 错误。

我正在使用 Orion v. 0.28 和 Cygnus v. 0.13。

正如日志所说:

Could not open connection to jdbc:hive2://cosmos.lablfi-ware.org:10000/default: java.net.UnknownHostException: cosmos.lablfi-ware.org

您必须配置正确的 Hive 端点:

cygnusagent.sinks.hdfs-sink.hive.host = cosmos.lab.fiware.org

而不是:

cygnusagent.sinks.hdfs-sink.hive.host = cosmos.lablfi-ware.org

注意:您可能已经注意到我使用了 cosmos.lab.fiware.orgcosmos.lab.fiware.orgcosmos.lab.fi-ware.org都有效,第一个位优先。

要查找 Orion 在我的 Cosmos 全局实例中持久保存的数据:

  1. 来自 Hadoop:

# hive hive> select * from myUsernameInCosmosLabInstance_def_serv_def_servpath_room1_room_column;

  1. 替代方法:

# hadoop fs -ls /user/myUsernameInCosmosInstance/def_serv/def_servpath/Room1_Room/Room1_Room.txt