我熟悉厨师,并希望建立我的工作流程没有中央服务器(使用厨师零和刀零)。然而,一切工作正常,但厨师零存储在.json文件中的节点信息,这些信息相当大,并且经常更改以至于无法存储在git存储库中,并且我想在每个工作日重新扫描服务器,而不是将其定义存储在存储库中 - 这应该很容易自动化,因为我们没有很多服务器。是否有任何命令可以让我通过提供其ssh证书将现有的融合节点添加到chef-zero?我知道knife zero bootstrap <node-ip>
会做的伎俩,但它也触发额外的收敛我不想发生。刀零现有节点发现
Q
刀零现有节点发现
0
A
回答
0
整个问题是围绕错误的假设:
- 我想厨师节点仍然存在,并管理它自己的状态。不是这样。节点状态在主厨运行结束时序列化并传递给服务器,因此无法重新发现节点,因为我试图在没有主厨的情况下尝试。如果你需要服务器属性,你可以试着用空运行列表来聚合节点;由于运行列表不会保留在节点本身上,因此这应该是安全操作。
- 我还认为,厨师零是以某种方式管理节点状态以其他方式比使用json文件。那是我试图直接在json中指定节点角色的结果,而他们不断从
run_list
重建,所以我很困惑,看到我的角色不适用;这使得我发现“发现”根本就没有必要。
以下结构是足够的厨师零见到节点,并成功地收敛它:
{
"name": "sonarqube.srv.company.my",
"automatic": {
// automatic attributes are managed by ohai, so be ready that next
// chef run may use another fqdn if you haven't pinned it with
// any means possible
"fqdn": "99-199-255-99.srv.company.my"
},
"run_list": [
"role[role-1]"
"recipe[cookbook::recipe]"
]
}
如果您存储一样,在git的定义,你总是有你手头的基础设施,并可以做knife converge name:sonarqube.srv.company.my
在任何时刻,并且胜过我所有的需求。我的个人工作流程包含名为managed-nodes
的目录,其节点规格如上,覆盖nodes
目录bin/reset
包含的bash脚本。只要我将它们存储在适当的运行列表和属性中,一切都像魅力一样。但是,如果您选择类似的工作流程,请记住,如果没有成功的厨师在节点上运行,则不需要完整的属性列表。
没有持久服务器的纯粹基于git的厨师工作流程的必要性是由我想不透露的一些内部原因决定的。 好吧,我只是想幂等的可靠。
荣誉@Tensibai全力以赴。
0
只是要清楚,你基本上是在描述你自己的(坏)厨师服务器。如果你想要集中管理,你应该使用厨师服务器,并节省一些时间:)
相关问题
- 1. 发现节点
- 2. Xbee节点发现响应
- 3. 无线节点发现
- 4. 节点GYP 0.12.0未发现
- 5. 发现Zeroconf/Bonjour节点?
- 6. 发现,jQuery对象确实包含现有节点
- 7. 节点没有出现
- 8. 现有节点添加到另一个节点的子节点
- 9. 的XmlSlurper从未发现节点
- 10. prolog递归发现最大节点
- 11. 芹菜如何发现新的节点?
- 12. 呈现Drupal节点
- 13. 意外地发现零tableView.registerNib
- 14. 发现零可选值?
- 15. elasticsearch:EC2发现:主节点工作数据节点失败
- 16. 发现从字节
- 17. XQuery更新来包装现有节点
- 18. SpriteKit childNodeWithName无法找到现有节点
- 19. 如何将新节点添加到现有节点在XML
- 20. Neo4j MERGE创建新节点而不是使用现有节点
- 21. XSLT - 添加属性和新的节点到现有节点
- 22. 关联的节点到现有节点py2neo OGM
- 23. 用新节点替换cassandra集群中的现有节点
- 24. CSV加载和更新现有节点/创建新节点
- 25. 使用Java在JavaTree的现有节点中添加新节点
- 26. address.isReachable不会发现网络上的所有节点
- 27. 发现其中有最关系回到另一个节点
- 28. 节点没有文件发现错误ENOENT
- 29. 发现价值没有一些细节
- 30. 通过模态执行Segue后发现“发现零”异常
为那些谁可能会发现' - 无收敛'选项:可悲的是,这并不节省节点定义 – Etki
避免收敛去反对厨师的ide philosophy哲学(多次运行,只在需要时才采取行动)。所以不,厨师没有办法达到你想要的,重新思考你的需求/烹饪书籍在想要的状态下思考,你不会在乎多次运行厨师(如同任何其他SCM) – Tensibai
@Tensibai而idempotence是真正的主厨的方面,无需获取节点状态并注册它。 – Etki