Ansible yum 모듈을 사용하여 보안 업데이트 나열

Ansible yum 모듈을 사용하여 보안 업데이트 나열

Ansible의 yum 모듈을 사용하여 다음과 같은 보안 관련 업데이트만 나열하려고 합니다.

- name: check for updates yum
  yum: 
    list: updates
    update_cache: true
    security: yes
    bugfix: no
  register: yumoutput

보안 옵션을 false 로 변경하더라도 security: no항상 사용 가능한 모든 업데이트를 받습니다.

이 옵션이 설치에만 해당되고 목록에는 없는지 확실하지 않습니다.

어떤 권장 사항이 있습니까?

답변1

CentOS/RHEL 7.9, Ansible 2.9.25, Python 버전 = 2.7.5에서 테스트를 설정했습니다.

---
- hosts: test
  become: no
  gather_facts: no

  tasks:

  - name: Gather available security updates
    yum:
      list: updates
      update_cache: yes
      security: yes
      bugfix: no
    register: result

  - name: Show result
    debug:
      msg: "{{ result }}"

  - name: Gather available security updates
    shell:
      cmd: yum updateinfo list security
      warn: false
    register: result
    changed_when: false
    failed_when: result.rc != 0

  - name: Show result
    debug:
      msg: "{{ result.stdout }}"

출력을 발생시키는 것은

TASK [Gather available security updates] ******
ok: [test.example.com]

TASK [Show result] ******
ok: [test.example.com] =>
  msg:
    changed: false
    failed: false
    results:
    - arch: x86_64
      envra: 0:golang-bin-1.16.13-2.el7.x86_64
      epoch: '0'
      name: golang-bin
      release: 2.el7
      repo: EPEL-7
      version: 1.16.13
      yumstate: available
    - arch: noarch
      envra: 0:golang-src-1.16.13-2.el7.noarch
      epoch: '0'
      name: golang-src
      release: 2.el7
      repo: EPEL-7
      version: 1.16.13
      yumstate: available
    - arch: x86_64
      envra: 0:golang-1.16.13-2.el7.x86_64
      epoch: '0'
      name: golang
      release: 2.el7
      repo: EPEL-7
      version: 1.16.13
      yumstate: available
    - arch: x86_64
      envra: 1:java-1.8.0-openjdk-headless-1.8.0.322.b06-1.el7_9.x86_64
      epoch: '1'
      name: java-1.8.0-openjdk-headless
      release: 1.el7_9
      repo: RHEL-7
      version: 1.8.0.322.b06
      yumstate: available


TASK [Gather available security update] ******
ok: [test.example.com]

TASK [Show result] ******
ok: [test.example.com] =>
  msg: |-
    Loaded plugins: product-id, search-disabled-repos, subscription-manager
    FEDORA-EPEL-2022-246382d5dc Important/Sec. golang-1.16.13-2.el7.x86_64
    FEDORA-EPEL-2022-246382d5dc Important/Sec. golang-bin-1.16.13-2.el7.x86_64
    FEDORA-EPEL-2022-246382d5dc Important/Sec. golang-src-1.16.13-2.el7.noarch
    RHSA-2022:0306              Moderate/Sec.  java-1.8.0-openjdk-headless-1:1.8.0.322.b06-1.el7_9.x86_64
    updateinfo list done

따라서 두 방법 모두 작동하며 동일한 예상 결과를 얻습니다.

필요할 수도 있으니 참고하세요yum-security-plugin설치하다.

관련 정보