On Fri, Sep 20, 2013 at 3:58 PM, Gruher, Joseph R
<joseph.r.gru...@intel.com> 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.

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: ceph-users@lists.ceph.com
>>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
> ceph-users@lists.ceph.com
> http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
_______________________________________________
ceph-users mailing list
ceph-users@lists.ceph.com
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com

Reply via email to