Project

General

Profile

Tasks #3118

QA: radosgw upstart: test the radosgw upstart script respawn functionality

Added by Anonymous over 11 years ago. Updated about 8 years ago.

Status:
Closed
Priority:
Low
Assignee:
-
Target version:
-
% Done:

0%

Tags:
Reviewed:
Affected Versions:
Pull request ID:

Description

I have a vague bug report from Carl that radosgw, using the upstart script, is not restarting properly. Let's reproduce that (and add this to our manual QA, for now!)

1. Deploy radosgw using the upstart scripts. Find out what the PID of the process is. Kill it.
Upstart should restart it immediately; that is: Check that radosgw s running.

2. Ensure radosgw is running again. Using e.g. killall, kill radosgw more than 5 times in 30 seconds. Upstart should NOT restart it anymore, to prevent busy looping etc (radosgw.conf says "respawn limit 5 30", http://upstart.ubuntu.com/cookbook/#respawn ). Check that radosgw is NOT running.

3. After the respawn limit was hit, confirm that radosgw is down ("sudo initctl list|grep radosgw"), and run "sudo start radosgw-all". Check that radosgw is running.

If these all match expected, then either Carl's findings are unexplained, or we get to talk about what are the right settings for "respawn limit".

History

#1 Updated by Anonymous over 11 years ago

  • Priority changed from Normal to Low

#2 Updated by Ken Franklin over 11 years ago

Using ceph version 0.51-516-gdfcb48d
My cluster is configured based off the examples in the web docs.
Following the doc instructions for starting radosgw I get:

sudo service radosgw start
start: Unknown parameter: id

also tried:
sudo start radosgw
start: Unknown parameter: id

initctl start radosgw
initctl: Unknown parameter: id

I can start radosgw with:
sudo /etc/init.d/radosgw start

Maybe that's how Carl got radosgw started - not using upstart.

#3 Updated by Anonymous over 11 years ago

There's no restarting ever with sysvinit, so I really don't expect Carl to have made that sort of a mistake. The "service" command also runs the sysvinit scripts, so that's just not the right thing here.

The upstart script was built so you can run multiple radosgw instances per server. Not sure if this was just copy-pasting from other scripts, or fully intentional, but that's how it is. So, to use it, you must pass in the id. The chef etc new-fangled deployment stuff uses the short hostname as id. So:

sudo restart radosgw id=myserver01

etc.

#4 Updated by Yehuda Sadeh about 8 years ago

  • Status changed from New to Closed

Also available in: Atom PDF