diff --git a/hack/lib/etcd.sh b/hack/lib/etcd.sh index b8b03fe85b..0685da4f13 100755 --- a/hack/lib/etcd.sh +++ b/hack/lib/etcd.sh @@ -27,10 +27,10 @@ kube::etcd::validate() { exit 1 } - # validate it is not running - if pgrep -x etcd >/dev/null 2>&1; then - kube::log::usage "etcd appears to already be running on this machine (`pgrep -xl etcd`) (or its a zombie and you need to kill its parent)." - kube::log::usage "retry after you resolve this etcd error." + # validate etcd port is free + if netstat -nat | grep "[\.:]${ETCD_PORT:?} .*LISTEN" >/dev/null 2>&1; then + kube::log::usage "unable to start etcd as port ${ETCD_PORT} is in use. please stop the process listening on this port and retry." + kube::log::usage "`netstat -nat | grep "[\.:]${ETCD_PORT:?} .*LISTEN"`" exit 1 fi