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

时间:2016-07-06 11:24:53

标签: etcd calico project-calico

我正在使用ubuntu 14.04和Im配置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")

可能是什么问题?

2 个答案:

答案 0 :(得分:1)

尝试使用sudo

运行
sudo service etcd start   

然后如果你得到错误:

start: Job failed to start

添加用户etcd后重新运行:

sudo adduser etcd

更新

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

1:你的etcd start命令是正确的,在你的情况下,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

答案 1 :(得分:0)

Etcd标志“名称”和“ initial-cluster ”必须匹配。

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