«

批量关闭虚拟机telegraf服务

指尖二进制 • 1 年前 • 774 次点击 • BASH


批量关闭虚拟机telegraf服务需要修改虚拟机密码循环关闭telegraf服务

#!/bin/bash
for vm_name in `virsh list --all|grep running|awk '{print $2}'`
do
virsh set-user-password ${vm_name} root P@ssw0rd
expect << EOF
spawn virsh console ${vm_name}
expect "]" {send "\r"}
expect ":" {send "root\r"}
expect ":" {send "P@ssw0rd\r"}
expect "#" {send "systemctl stop telegraf;systemctl disable telegraf\r"}
expect "#" {send "exit\r"}
EOF
done

查找虚拟机进程并关闭服务

for i in `virsh list|grep running|awk '{print $2}'`; do ii=$(safe-guest-sh ${i} 'ps -aux|grep pytagent|grep -v grep |wc -l'); if [ ${ii} -gt 0 ]; then echo ${i} ${ii};fi;done
for i in `virsh list|grep running|awk '{print $2}'`; do ii=$(safe-guest-sh ${i} 'ps -aux|grep pytagent|grep -v grep |wc -l'); if [ ${ii} -gt 0 ]; then echo ${i} ${ii};safe-guest-sh ${i} 'systemctl stpo tagent && systemctl disable tagent';fi;done
还没收到回复