Project

General

Profile

Bug #6694

radosgw upstart script doesn't provide the -n parameter

Added by Walter Huf over 10 years ago. Updated over 10 years ago.

Status:
Duplicate
Priority:
Normal
Assignee:
-
Target version:
-
% Done:

0%

Source:
other
Tags:
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

I'm using the Ceph Chef Cookbook to create and manage the configuration of a new Ceph 0.67.4 cluster on Ubuntu 12.10, and the radosgw component seems to be having issues. The Upstart script itself seems to run, but the daemon stops immediately. Running the daemon manually shows that it can't find a keyring to use to authenticate with the cluster.

It seems that the radosgw daemon uses a default name different than the Chef configuration sets up. My hostname is swift1, and Chef creates a configuration block in /etc/ceph/ceph.conf called client.radosgw.swift1 and generates a keyring named ceph.client.radosgw.swift1.keyring. However, the radosgw seems to not find its keyring unless I explicitly add -n client.radosgw.swift1. Adding this -n parameter to the initctl line of /etc/init/radosgw-all-starter.conf seems to make it start right up.

I've attached the daemon startup output with the following commands:
radosgw cluster=ceph id=radosgw.swift1 -d --debug_ms=9 -c /etc/ceph/ceph.conf > /tmp/radosgw-without-name.log
radosgw cluster=ceph id=radosgw.swift1 -n client.radosgw.swift1 -d --debug_ms=9 -c /etc/ceph/ceph.conf > /tmp/radosgw-with-name.log

Is there a different way to set the name? Should ceph.conf have the radosgw settings in a different section?

ceph.conf View - Ceph configuration generated with Chef (440 Bytes) Walter Huf, 10/31/2013 12:18 PM

radosgw-without-name.log View (1.8 KB) Walter Huf, 10/31/2013 12:18 PM

radosgw-with-name.log View (64.3 KB) Walter Huf, 10/31/2013 12:18 PM


Related issues

Duplicates rgw - Bug #6706: radosgw init script and hostname variations Resolved 11/01/2013

History

#1 Updated by Josh Durgin over 10 years ago

  • Status changed from New to Duplicate

The name is determined by looking for client sections in ceph.conf that have 'host' matching the machine name. You have 'host = swift1' in your ceph.conf, but the radosgw init script was comparing that to the output of 'hostname', which may have returned the fqdn. https://github.com/ceph/ceph/commit/524aee6f95f9c397b7c8508934f3c0577f9df1dd was just merged which should fix this. If it still doesn't work, please reopen this bug.

Also available in: Atom PDF