我在FILAB中部署了一个Orion实例,并且我已经配置了Cygnus inyector,以便在Cosmos中存储信息。
但是......让我们想象一下实体数量急剧增加的情景。在这个假设的场景中,Orion GE的一个实例是不够的,因此需要部署更多的实例。
比例程序是什么?考虑到最大配额是:
VM实例:5 VCPU:10 硬盘:100 GB 内存:10240 MB 公共IP:1
我了解配额可能会有所变化,但免费帐户限额是多少?
Cosmos Head Node中的硬盘限制是多少? (理论上5GB配额)
是否可以使用单个公共IP部署更多Orion Context Broker实例,或者是否需要请求多个公共IP?怎么样?
总而言之,我要求提供有关建议方案的规模程序和免费帐户限制(可能的最大配额)的信息。
提前谢谢你。 亲切的问候。
Ramon的。
答案 0 :(得分:3)
关于Orion可扩展性,它可能涉及两个方面:
实体数量的可扩展性。在这种情况下,稀缺资源是DB,因此您需要扩展MongoDB层。扩展MongoDB的常用程序是使用分片,请查看MongoDB官方文档。
操作中的可伸缩性请求管理此类实体。在这种情况下,您可以使用其他Orion节点(每个节点都在一个单独的VM中运行,另外还有一个运行负载均衡器软件的虚拟机,以在Orion节点之间分配负载)。 Orion是一个无状态进程,可以在这种水平扩展配置中运行,只要: 1)您不使用ONTIMEINTERVAL订阅(请参阅this post) 中的详细信息(请参阅UPDATE2注释)下面),2)您必须使用足够小的值配置-subCacheIval
CLI参数,以确保最终的一致性(基本上,-subCacheIval
参数的值是可能通过的最大时间来自具有实体模式的订阅,直到它在所有Orion节点中合并为止。
在任何情况下,您都需要其他VM。您不需要额外的IP,只要系统只需要公共IP(分配给负载均衡器的IP),所有其他通信都可以在内部完成。 @flopez已在另一篇文章中回答了云配额信息。
通过Cygnus来控制Cosmos中数据的持久性,就像创建Orion进程场一样,您可以添加更多Cygnus进程来负责接收来自Orion服务器场的通知。只需为所有实体定义一个映射策略,定义哪些实体将被通知哪个实体,哪些实体将通知哪个Cygnus进程A,哪个实体将通知Cygnus进程B等等。问题在于这些Cygnus服务器场和全局实例之间的连接宇宙(位于互联网上)。假设这些cygnus服务器场运行在具有私有寻址的VM之上,则必须在另一个VM中安装某种代理才能访问Cosmos。
关于HDFS配额,是的,默认情况下为5 GB,但可以根据需要进行更改。值得一提的是,新的HDFS集群将在短期内发布,具有更高的存储容量。
更新:this separated Q&A post中提供了有关订阅更新通知案例的更详细的工作流说明。
UPDATE2 :在Orion 1。0。0(2016年3月)中删除了ONTIMEINTERVAL订阅。
答案 1 :(得分:0)
提供给试用用户的容量(您提到的免费帐户)如下:
如果您要求更多容量,则应升级到社区帐户(请按照此文档Upgrade to Community Account