On Mon, 23 Sep 2013, Alfredo Deza wrote:
> On Fri, Sep 20, 2013 at 3:58 PM, Gruher, Joseph R
> <[email protected]> wrote:
> > Sorry, not trying to repost or bump my thread, but I think I can restate my
> > question here and for better clarity. I am confused about the "--cluster"
> > argument used when "ceph-deploy mon create" invokes "ceph-mon" on the
> > target system. I always get a failure at this point when running
> > "ceph-deploy mon create" and this then halts the whole ceph quick start
> > process.
> >
> > Here is the line where "ceph-deploy mon create" fails:
> > [cephtest02][INFO ] Running command: ceph-mon --cluster ceph --mkfs -i
> > cephtest02 --keyring /var/lib/ceph/tmp/ceph-cephtest02.mon.keyring
> >
> > Running the same command manually on the target system gives an error. As
> > far as I can tell from the man page and the built-in help and the website
> > (http://ceph.com/docs/next/man/8/ceph-mon/) it seems "--cluster" is not a
> > valid argument for ceph-mon? Is this a problem in ceph-deploy? Does this
> > work for anyone else?
> >
> > ceph@cephtest02:~$ sudo ceph-mon --cluster ceph --mkfs -i cephtest02
> > --keyring /var/lib/ceph/tmp/ceph-cephtest02.mon.keyring
> > too many arguments: [--cluster,ceph]
> > usage: ceph-mon -i monid [--mon-data=pathtodata] [flags]
> > --debug_mon n
> > debug monitor level (e.g. 10)
> > --mkfs
> > build fresh monitor fs
> > --conf/-c Read configuration from the given configuration file
> > -d Run in foreground, log to stderr.
> > -f Run in foreground, log to usual location.
> > --id/-i set ID portion of my name
> > --name/-n set name (TYPE.ID)
> > --version show version and quit
> >
> > --debug_ms N
> > set message debug level (e.g. 1)
> > ceph@cephtest02:~$
> >
> > Can anyone clarify if "--cluster" is a supported argument for ceph-mon?
>
> This is a *weird* corner you've stumbled upon. The flag is indeed used
> by ceph-deploy and that hasn't changed in a while. However, as you
> point out, there is no trace of that flag anywhere! I can't find where
> is that defined at all.
>
> Running the latest version of ceph-deploy + ceph, that flag *does* work
> for me.
--cluster is parsed by everything after bobtail (or thereabouts). Mostly
all it does is change the internal value of $cluster that get substituted
into other config options. I'll add it to the usage.
sage
> What version of ceph are you using?
> >
> > Thanks!
> >
> > Here's the more complete output from the admin system when this fails:
> >
> > ceph@cephtest01:/my-cluster$ ceph-deploy --overwrite-conf mon create
> > cephtest02
> > [ceph_deploy.mon][DEBUG ] Deploying mon, cluster ceph hosts cephtest02
> > [ceph_deploy.mon][DEBUG ] detecting platform for host cephtest02 ...
> > [ceph_deploy.sudo_pushy][DEBUG ] will use a remote connection with sudo
> > [ceph_deploy.mon][INFO ] distro info: Ubuntu 12.04 precise
> > [cephtest02][DEBUG ] determining if provided host has same hostname in
> > remote
> > [cephtest02][DEBUG ] deploying mon to cephtest02
> > [cephtest02][DEBUG ] remote hostname: cephtest02
> > [cephtest02][INFO ] write cluster configuration to /etc/ceph/{cluster}.conf
> > [cephtest02][DEBUG ] checking for done path:
> > /var/lib/ceph/mon/ceph-cephtest02/done
> > [cephtest02][DEBUG ] done path does not exist:
> > /var/lib/ceph/mon/ceph-cephtest02/done
> > [cephtest02][INFO ] creating keyring file:
> > /var/lib/ceph/tmp/ceph-cephtest02.mon.keyring
> > [cephtest02][INFO ] create the monitor keyring file
> > [cephtest02][INFO ] Running command: ceph-mon --cluster ceph --mkfs -i
> > cephtest02 --keyring /var/lib/ceph/tmp/ceph-cephtest02.mon.keyring
> > [cephtest02][ERROR ] Traceback (most recent call last):
> > [cephtest02][ERROR ] File
> > "/usr/lib/python2.7/dist-packages/ceph_deploy/hosts/common.py", line 72, in
> > mon_create
> > [cephtest02][ERROR ] File
> > "/usr/lib/python2.7/dist-packages/ceph_deploy/util/decorators.py", line 10,
> > in inner
> > [cephtest02][ERROR ] File
> > "/usr/lib/python2.7/dist-packages/ceph_deploy/util/wrappers.py", line 6, in
> > remote_call
> > [cephtest02][ERROR ] File "/usr/lib/python2.7/subprocess.py", line 511,
> > in check_call
> > [cephtest02][ERROR ] raise CalledProcessError(retcode, cmd)
> > [cephtest02][ERROR ] CalledProcessError: Command '['ceph-mon', '--cluster',
> > 'ceph', '--mkfs', '-i', 'cephtest02', '--keyring',
> > '/var/lib/ceph/tmp/ceph-cephtest02.mon.keyring']' returned non-zero exit
> > status 1
> > [cephtest02][INFO ] --conf/-c Read configuration from the given
> > configuration file
> > [cephtest02][INFO ] -d Run in foreground, log to stderr.
> > [cephtest02][INFO ] -f Run in foreground, log to usual
> > location.
> > [cephtest02][INFO ] --id/-i set ID portion of my name
> > [cephtest02][INFO ] --name/-n set name (TYPE.ID)
> > [cephtest02][INFO ] --version show version and quit
> > [cephtest02][INFO ] --debug_ms N
> > [cephtest02][INFO ] set message debug level (e.g. 1)
> > [cephtest02][ERROR ] too many arguments: [--cluster,ceph]
> > [cephtest02][ERROR ] usage: ceph-mon -i monid [--mon-data=pathtodata]
> > [flags]
> > [cephtest02][ERROR ] --debug_mon n
> > [cephtest02][ERROR ] debug monitor level (e.g. 10)
> > [cephtest02][ERROR ] --mkfs
> > [cephtest02][ERROR ] build fresh monitor fs
> > [ceph_deploy.mon][ERROR ] Failed to execute command: ceph-mon --cluster
> > ceph --mkfs -i cephtest02 --keyring
> > /var/lib/ceph/tmp/ceph-cephtest02.mon.keyring
> > [ceph_deploy][ERROR ] GenericError: Failed to create 1 monitors
> >
> > ceph@cephtest01:/my-cluster$
> >
> > -Joe
> >
> >>-----Original Message-----
> >>From: Gruher, Joseph R
> >>Sent: Thursday, September 19, 2013 11:14 AM
> >>To: [email protected]
> >>Cc: Gruher, Joseph R
> >>Subject: monitor deployment during quick start
> >>
> >>Could someone make a quick clarification on the quick start guide for me?
> >>On
> >>this page: http://ceph.com/docs/next/start/quick-ceph-deploy/. After I do
> >>"ceph-deploy new" to a system is that system then a monitor from that point
> >>forward? Or do I then have to do "ceph-deploy mon create" to that same
> >>system before it is really a monitor?
> >>
> >>Regardless of the combinations of systems I try I seem to get a failure at
> >>the
> >>add a monitor step. Should this be a correct sequence?
> >> ceph@cephtest01:~$ ceph-deploy new cephtest02
> >> ceph@cephtest01:~$ ceph-deploy install --no-adjust-repos
> >>cephtest02 cephtest03 cephtest04
> >> ceph@cephtest01:~$ ceph-deploy mon create cephtest02
> >>
> >>Here is the failure I get:
> >>
> >>ceph@cephtest01:~$ ceph-deploy mon create cephtest02
> >>[ceph_deploy.mon][DEBUG ] Deploying mon, cluster ceph hosts cephtest02
> >>[ceph_deploy.mon][DEBUG ] detecting platform for host cephtest02 ...
> >>[ceph_deploy.sudo_pushy][DEBUG ] will use a remote connection with sudo
> >>[ceph_deploy.mon][INFO ] distro info: Ubuntu 12.04 precise
> >>[cephtest02][DEBUG ] determining if provided host has same hostname in
> >>remote [cephtest02][DEBUG ] deploying mon to cephtest02
> >>[cephtest02][DEBUG ] remote hostname: cephtest02 [cephtest02][INFO ]
> >>write cluster configuration to /etc/ceph/{cluster}.conf [cephtest02][DEBUG ]
> >>checking for done path: /var/lib/ceph/mon/ceph-cephtest02/done
> >>[cephtest02][DEBUG ] done path does not exist: /var/lib/ceph/mon/ceph-
> >>cephtest02/done
> >>[cephtest02][INFO ] creating keyring file: /var/lib/ceph/tmp/ceph-
> >>cephtest02.mon.keyring
> >>[cephtest02][INFO ] create the monitor keyring file [cephtest02][INFO ]
> >>Running command: ceph-mon --cluster ceph --mkfs -i cephtest02 --keyring
> >>/var/lib/ceph/tmp/ceph-cephtest02.mon.keyring
> >>[cephtest02][ERROR ] Traceback (most recent call last):
> >>[cephtest02][ERROR ] File "/usr/lib/python2.7/dist-
> >>packages/ceph_deploy/hosts/common.py", line 72, in mon_create
> >>[cephtest02][ERROR ] File "/usr/lib/python2.7/dist-
> >>packages/ceph_deploy/util/decorators.py", line 10, in inner
> >>[cephtest02][ERROR ] File "/usr/lib/python2.7/dist-
> >>packages/ceph_deploy/util/wrappers.py", line 6, in remote_call
> >>[cephtest02][ERROR ] File "/usr/lib/python2.7/subprocess.py", line 511, in
> >>check_call
> >>[cephtest02][ERROR ] raise CalledProcessError(retcode, cmd)
> >>[cephtest02][ERROR ] CalledProcessError: Command '['ceph-mon', '--cluster',
> >>'ceph', '--mkfs', '-i', 'cephtest02', '--keyring', '/var/lib/ceph/tmp/ceph-
> >>cephtest02.mon.keyring']' returned non-zero exit status 1
> >>[cephtest02][INFO ] --conf/-c Read configuration from the given
> >>configuration file
> >>[cephtest02][INFO ] -d Run in foreground, log to stderr.
> >>[cephtest02][INFO ] -f Run in foreground, log to usual
> >>location.
> >>[cephtest02][INFO ] --id/-i set ID portion of my name
> >>[cephtest02][INFO ] --name/-n set name (TYPE.ID)
> >>[cephtest02][INFO ] --version show version and quit
> >>[cephtest02][INFO ] --debug_ms N
> >>[cephtest02][INFO ] set message debug level (e.g. 1)
> >>[cephtest02][ERROR ] too many arguments: [--cluster,ceph]
> >>[cephtest02][ERROR ] usage: ceph-mon -i monid [--mon-data=pathtodata]
> >>[flags]
> >>[cephtest02][ERROR ] --debug_mon n
> >>[cephtest02][ERROR ] debug monitor level (e.g. 10)
> >>[cephtest02][ERROR ] --mkfs
> >>[cephtest02][ERROR ] build fresh monitor fs
> >>[ceph_deploy.mon][ERROR ] Failed to execute command: ceph-mon --cluster
> >>ceph --mkfs -i cephtest02 --keyring /var/lib/ceph/tmp/ceph-
> >>cephtest02.mon.keyring
> >>[ceph_deploy][ERROR ] GenericError: Failed to create 1 monitors
> >>
> >>
> >>Trying to run the failing command myself:
> >>
> >>ceph@cephtest01:~$ ssh cephtest02 "sudo ceph-mon --cluster ceph --mkfs -i
> >>cephtest02 --keyring /var/lib/ceph/tmp/ceph-cephtest02.mon.keyring"
> >>--conf/-c Read configuration from the given configuration file
> >>-d Run in foreground, log to stderr.
> >>-f Run in foreground, log to usual location.
> >>--id/-i set ID portion of my name
> >>--name/-n set name (TYPE.ID)
> >>--version show version and quit
> >>
> >> --debug_ms N
> >> set message debug level (e.g. 1) too many arguments:
> >> [--cluster,ceph]
> >>usage: ceph-mon -i monid [--mon-data=pathtodata] [flags]
> >> --debug_mon n
> >> debug monitor level (e.g. 10)
> >> --mkfs
> >> build fresh monitor fs
> >>
> >>
> >>Not clear if I should be using the same system from "ceph-deploy new" for
> >>"ceph-deploy mon" but the same thing happens either way:
> >>
> >>ceph@cephtest01:~$ ssh cephtest03 "sudo ceph-mon --cluster ceph --mkfs -i
> >>cephtest02 --keyring /var/lib/ceph/tmp/ceph-cephtest02.mon.keyring"
> >>--conf/-c Read configuration from the given configuration file
> >>-d Run in foreground, log to stderr.
> >>-f Run in foreground, log to usual location.
> >>--id/-i set ID portion of my name
> >>--name/-n set name (TYPE.ID)
> >>--version show version and quit
> >>
> >> --debug_ms N
> >> set message debug level (e.g. 1) too many arguments:
> >> [--cluster,ceph]
> >>usage: ceph-mon -i monid [--mon-data=pathtodata] [flags]
> >> --debug_mon n
> >> debug monitor level (e.g. 10)
> >> --mkfs
> >> build fresh monitor fs
> > _______________________________________________
> > ceph-users mailing list
> > [email protected]
> > http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
> _______________________________________________
> ceph-users mailing list
> [email protected]
> http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
>
>
_______________________________________________
ceph-users mailing list
[email protected]
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com