尝试启动服务时出现 etcd 错误,拒绝发送消息

etcd error when trying to start service rejected send message

我正在使用 ubuntu 14.04,我正在配置 etcd 以与 calico 一起使用,但该服务无法正常工作。

这是我的 etcd.conf 文件:

# vim:set ft=upstart ts=2 et:
description "etcd"
author "etcd maintainers"

start on stopped rc RUNLEVEL=[2345]
stop on runlevel [!2345]

respawn

setuid etcd

env ETCD_DATA_DIR=/var/lib/etcd
export ETCD_DATA_DIR

exec /usr/bin/etcd --name="uno" \
--advertise-client-urls="http://172.16.8.241:2379,http://172.16.8.241:4001" \
--listen-client-urls="http://0.0.0.0:2379,http://0.0.0.0:4001" \
--listen-peer-urls "http://0.0.0.0:2380" \
--initial-advertise-peer-urls "http://172.16.8.241:2380" \
--initial-cluster-token $(uuidgen) \
--initial-cluster "node1=http://172.16.8.241:2380" \
--initial-cluster-state "new"

当我尝试开始时:

ikerlan@uno:~$ service etcd start

start: Rejected send message, 1 matched rules; type="method_call", sender=":1.128" (uid=1000 pid=7374 comm="start etcd ") interface="com.ubuntu.Upstart0_6.Job" member="Start" error name="(unset)" requested_reply="0" destination="com.ubuntu.Upstart" (uid=0 pid=1 comm="/sbin/init")

可能是什么问题?

尝试 运行 与 sudo:

sudo service etcd start   

然后,如果您遇到如下错误:

start: Job failed to start

Re运行 添加用户后 etcd:

sudo adduser etcd

更新:

如果etcd实例无法启动,请检查以下两点:

1:你的 etcd 启动命令是正确的,在你的情况下,etcd 命令不能 运行 因为你会得到错误消息,如:

etcd: couldn't find local name "uno" in the initial cluster configuration

所以将 /etc/init/etcd.conf 中的内容更改为:

--initial-cluster "uno=http://172.16.8.241:2380" \

您的原始配置所在的位置:

--initial-cluster "node1=http://172.16.8.241:2380" \

2: 用户 etcd 应该有权限写入 /var/lib/etcd

Etcd 标志“name”和“initial-cluster”必须匹配在一起。

....
    --name="keukenhof" \
    --initial-cluster="keukenhof=http://localhost:2380"
....