저는 CentOS Linux 서버를 관리하기 위해 Spacewalk 버전 2.9를 사용하고 있습니다. 다음 spacecmd
명령을 사용하여 새 패키지를 푸시합니다. 내 컴퓨터에 모든 패키지를 설치한 후 서버를 다시 시작하고 싶습니다. 패키지 업그레이드를 모니터링하고 다시 시작 명령을 실행하는 방법을 잘 모르겠습니다. 이를 달성하는 방법에 대한 제안이 있으십니까? Ansible 플레이북을 사용하여 다시 시작하고 싶습니다.
spacecmd system_upgradepackage <hostname> '*' -y
고마워요 SR
답변1
spacecmd
Ansible은 명령을 사용하지 않고도 서버를 다시 시작할 수 있습니다 reboot
.
- name: Upgrading via spacewalk
shell: spacecmd system_upgradepackage <hostname> '*' -y
- name: Reboot after upgrades
shell: reboot
async: 0
poll: 0
- name: Waiting for host to come up
local_action: wait_for host={{ ansible_ssh_host }} state=started
다음에서 적응:https://www.linux.com/tutorials/ansible-reboot-server-play-book-and-wait-it-come-back
답변2
나는 그것에 익숙하지 않지만 spacecmd
이 wait_for
모듈을 사용하여 PID를 모니터링할 수 있습니다.
문서에서:
- name: Wait until the process is finished and PID was destroyed
wait_for:
path: /proc/3466/status
state: absent