Amazon web services awslogs代理重复创建僵尸进程
我在ubuntu 16上运行 当我启动awslogs代理时,创建了两个进程Amazon web services awslogs代理重复创建僵尸进程,amazon-web-services,amazon-cloudwatch,Amazon Web Services,Amazon Cloudwatch,我在ubuntu 16上运行 当我启动awslogs代理时,创建了两个进程 $ sudo systemctl start awslogs root 25973 1 0 Feb13 ? 00:00:00 /bin/sh /var/awslogs/bin/awslogs-agent-launcher.sh --start --background --pidfile --user awslogs --chuid awslogs & root 25976
$ sudo systemctl start awslogs
root 25973 1 0 Feb13 ? 00:00:00 /bin/sh /var/awslogs/bin/awslogs-agent-launcher.sh --start --background --pidfile --user awslogs --chuid awslogs &
root 25976 25973 0 Feb13 ? 02:16:01 /var/awslogs/bin/python /var/awslogs/bin/aws logs push --config-file /var/awslogs/etc/awslogs.conf --additional-configs-dir /var/awslogs/etc/config
而且,当我停止awslogs时,只有一个进程被杀死。另一个进程仍然存在
$ sudo systemctl stop awslogs
root 25976 25973 0 Feb13 ? 02:16:01 /var/awslogs/bin/python /var/awslogs/bin/aws logs push --config-file /var/awslogs/etc/awslogs.conf --additional-configs-dir /var/awslogs/etc/config
当我再次启动awslogs代理时,创建了两个进程。所以整个过程的计数是3。我遇到了同样的问题
root@ip-192-168-101-176:~# ps -ef |grep aws
root 500 32151 0 16:17 pts/0 00:00:00 grep --color=auto aws
root 31644 1 0 16:02 ? 00:00:00 /bin/sh /var/awslogs/bin/awslogs-agent-launcher.sh --start --background --pidfile --user awslogs --chuid awslogs &
root 31645 31644 0 16:02 ? 00:00:06 /var/awslogs/bin/python /var/awslogs/bin/aws logs push --config-file /var/awslogs/etc/awslogs.conf --additional-configs-dir /var/awslogs/etc/config
进程id“31644”是僵尸进程
我正在考虑是否在crond上使用低于shell的程序
kill $(ps -ef |egrep "\/var\/awslogs\/bin\/python \/var\/awslogs\/bin\/aws logs push --config-file \/var\/awslogs\/etc\/awslogs.conf --additional-configs-dir \/var\/awslogs\/etc\/config"|awk '{ ppid=$3; if (ppid==1) print $2}')
如果父进程名为1,则此shell程序将终止awslogs进程
我不承担任何责任