ansible - 如何反向安装ansible角色?(如何卸载角色)
问题描述
我已经在我的服务器上安装了一个角色。现在我想删除它。执行此操作的正确命令是什么?
例如:
roles:
- role: lean_delivery.java
- role: lean_delivery.solr_standalone
如何删除lean_delivery.java 角色?
解决方案
您需要了解的是,ansible 不是包管理器。您不是在服务器上“安装”一个可以再次删除的角色,例如使用 apt 安装和删除软件包。
使用 ansible 时,您在配置(角色、剧本等)中定义一个状态,并且 ansible 会注意机器稍后将具有该状态。它不会记录所做的更改,因此可以在以后撤消它们。(例如,如果您包含自定义脚本,这是不可能的)。
因此,要恢复更改,您需要在运行 playbook 之前定义机器的状态,以便 ansible 可以创建该状态。
这很容易,对于很多模块,您可以指定state: absent
(例如文件,已安装的软件包)将删除添加的内容。但这也可能非常困难,如果您有在原始角色上运行的自定义脚本,您需要编写一个脚本来恢复原始脚本在系统上所做的所有更改。
但是您需要撤消的操作取决于您在这些角色中所做的工作。
推荐阅读
- python-3.x - 我怎样才能使用时代
- python-3.x - pandas_market_calendars 库的导入错误
- c++ - 为什么不能接受开始和结束作为参数
- java - 如何设置创建的随机名称的最小/最大长度?
- ios - 如何使用 iOS 上的约束将视图附加到键盘顶部边缘
- python - 在这个问题上得到一个值错误,不完全确定为什么
- java - 有人可以解释我如何编写这个程序吗?
- android - 升级后 Flutter 无法在 IOS 和 Android 上运行
- ruby - 方法 GET 响应错误 – URI 必须仅为 ascii
- python - 是否可以减少 gridspec/Matplotlib 中单个子图的宽度?