有什么方法可以启动例如同一个云铸造应用程序的 2 个实例,其中每个实例都有自己的实例特定设置作为参数或环境变量传递下来,例如instance1订阅Kafka 主题 A和instance2订阅Kafka 主题 B?
1 回答
有什么方法可以启动例如同一个云铸造应用程序的 2 个实例,其中每个实例都有自己的实例特定设置作为参数或环境变量传递下来,例如 instance1 订阅 Kafka 主题 A,instance2 订阅 Kafka 主题 B?
并不真地。您在谈论的是两个不同的应用程序,至少按照 Cloud Foundry 定义“应用程序”的方式。对于 CF,您的应用程序将具有源代码、Droplet、环境变量以及运行您的应用程序所需的一切,例如服务,这些对于您的应用程序的所有实例都是相同的。
如果您希望使用不同的配置、服务或环境变量运行相同的源代码,那么您需要将其作为单独的应用程序推送(在 Cloud Foundry 的术语中)。
最简单的方法是cf push
分隔应用程序名称。这有点多余,因为您必须推送相同的代码并多次执行。如果这会导致您浪费一些时间,我建议您走这条路。如果您有很多(数十、数百或更多)基于相同源代码的不同应用程序配置,您可能会考虑下一个选项。
如果您有很多不同的应用程序,您可以做的是从您的第一个应用程序下载液滴,然后再cf push --droplet
为其他所有应用程序下载。这将部署您从第一个应用程序下载的液滴,并以不同的配置(可能通过使用不同的manifest.yml
文件)为您的应用程序的所有副本重用它。
希望有帮助!