【问题标题】:Translating Puppet to Ansible将 Puppet 翻译成 Ansible
【发布时间】:2021-09-06 23:20:20
【问题描述】:

这是管理service的傀儡代码:

class fred::service {

service { 'bob':
        enable => true,
        ensure => 'running',
        require => Package['bob-5.4']
    }
}

我在 Ansible 中的翻译

---
- name: check bob
    service:
    name: bob
    enabled: true
    state: running
    package:
    name: bob-5.4
    state: present

我的问题是:

  1. 翻译正确吗?
  2. 有人告诉我包裹先于服务?
  3. 我需要package:

【问题讨论】:

  • 这将是 Ansible 中的两个任务,顺序相反(首先安装包)

标签: ansible task puppet roles


【解决方案1】:

顺序不正确。您应该首先尝试安装该软件包。如果包已经存在,它将自动跳过这个(导致ok)。

检查服务是否运行时,state: running在Ansible中无效,应该是state: started

- name: Install package
  apt:
    name: bob-5.4
    state: present

- name: Check if service is running
  service:
    name: bob
    state: started
    enabled: yes

根据您安装软件包的方式,这可能需要稍作修改(例如packageyum 而不是apt)。

【讨论】:

    猜你喜欢
    • 2016-11-28
    • 1970-01-01
    • 1970-01-01
    • 2012-10-13
    • 2010-11-07
    • 1970-01-01
    • 2015-09-22
    • 2015-10-11
    • 2017-10-12
    相关资源
    最近更新 更多