First of all Thanks a lot for introducing me pkill way otherwise i would
have written one more task to register the process id.
Many thanks Todd.
Secondly, as its impossible to explore entire tool like ansible hence just
asking you the question, Does it even possible to do above things using
ansible module in single task???
like find process id of process and kill if it doesnt exist do not proceed
with other hosts as well.
On Tuesday, July 11, 2023 at 9:59:59 PM UTC+5:30 Todd Lewis wrote:
> Regrettably, pgrep and pkill seem widely unknown.
>
> - name: Kill zookeeper processes and restart service
> ansible.builtin.shell: |
> if pkill --signal 9 -f zookeeper.properties ; then
> sleep 6
> systemctl start confluent-zookeeper510
> fi
> systemctl status confluent-zookeeper510
> register: zkstart
>
>
> On 7/11/23 10:26 AM, Sameer Modak wrote:
>
> I have used shell module and failed when combination to achieve this.
>
> - name: Get running processes list from remote host
>
> shell: "ps -efw | grep -e zookeeper.properties | grep -v grep |awk
> '{print $2}'"
>
> register: runningzkprc
>
> - name: Kill running processes
>
> throttle: 1
>
> # ignore_errors: yes
>
> shell: |
>
> kill -9 "{{ runningzkprc.stdout_lines[0] }}"
>
> sleep 3
>
> sleep 3
>
> systemctl start confluent-zookeeper510
>
> systemctl status confluent-zookeeper510 -l| grep -i error
>
> register: zkstart
>
> failed_when: zkstart.rc != 0
>
> when: not zkmode.stdout_lines is search('leader')
>
> On Tuesday, July 11, 2023 at 12:47:04 AM UTC+5:30 Sameer Modak wrote:
>
>> Hello team,
>>
>> I am trying to restart zookeeper service on all 3 nodes sequentially , we
>> want restart zookeeper service one by one but it will be only run on 2nd
>> server if 1st server zookeeper service was successful. How do i achieve
>> this in 1 task .
>>
>> task should fail if service is not properly restarted.
>>
>> - name: restart zookeeper one by one on follower first and ensure all is
>> good
>>
>> throttle: 1
>>
>> service:
>>
>> name: 'confluent-zookeeper'
>>
>> state: restarted
>>
>> when: not zkmode.stdout_lines is search('leader')
>>
>>
>> - name: check follower zookeeper are up and running
>>
>> shell: 'systemctl status confluent-zookeeper -l| grep -i error ||
>> systemctl status confluent-zookeeper | grep failed'
>>
>> register: zkstatus
>>
>> failed_when: zkstatus.rc == 0
>>
>>
>> Now in this case , 1 task is getting executed on all hosts despite having
>> error in logs . I want it to be failed as soon as it has error and should
>> not continue on next server.
>>
>>
>>
>> --
> You received this message because you are subscribed to the Google Groups
> "Ansible Project" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/ansible-project/7b8e12de-8c99-4f85-ba9a-618f7308cdc9n%40googlegroups.com
>
> <https://groups.google.com/d/msgid/ansible-project/7b8e12de-8c99-4f85-ba9a-618f7308cdc9n%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>
>
> --
> Todd
>
>
--
You received this message because you are subscribed to the Google Groups
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/ansible-project/2a584fc0-29d7-4c64-bbd0-f0d36312e8d0n%40googlegroups.com.