Questions tagged [upstart]

Upstart is an event-based replacement for the /sbin/init daemon which handles starting of tasks and services during boot, stopping them during shutdown and supervising them while the system is running.

Upstart was created due to fundamental limitations in existing systems. Those systems can be categorized into two types:

  • System V init system
  • Dependency-based init systems

It was necessary to outline the limitations of the SysV and dependency-based init systems to appreciate why Upstart is special...

Upstart is revolutionary as it recognises and was designed specifically for a dynamic system. It handles asynchronicity by emitting events. This too is revolutionary.

Upstart emits "events" which services can register an interest in. When an event -- or combination of events -- is emitted that satisfies some service's requirements, Upstart will automatically start or stop that service. If multiple jobs have the same "start on" condition, Upstart will start those jobs ''in parallel''. To be manifest: Upstart handles starting the "dependent" services itself - this is not handled by the service file itself as it is with dependency-based systems.

Further, Upstart is being guided by the ultimate arbiter of hardware devices: the kernel.

In essence, Upstart is an event engine: it creates events, handles the consequences of those events being emitted and starts and stops processes as required. Like the best Unix software, it does this job very well. It is efficient, fast, flexible and reliable. It makes use of "helper" daemons (such as the upstart-udev-bridge and the upstart-socket-bridge) to inject new types of events into the system and react to these events. This design is sensible and clean: the init system itself must not be compromised since if it fails, the kernel panics. Therefore, any functionality which is not considered "core" functionality is farmed out to other daemons.

See more at The Upstart cookbook

284 questions
1
vote
1 answer

Nginx Process getting lost by Upstart

Usually I can reload my nginx configuration by typing sudo service nginx reload and everything is dandy. However, today I tried it and got reload: Not running I tried restarting nginx and at first I got a message saying there was no current instance…
SapphireSun
  • 113
  • 3
1
vote
1 answer

service in vagrant VM not picking up configuration

I want to setup a Vagrant configuration to create and launch an Ubuntu guest VM which will launch a supervisord service within the VM after Vagrant up. I'd like for this to work on Windows, Mac, and Linux hosts. I have a supervisord.conf file which…
laffoyb
  • 141
  • 6
1
vote
1 answer

Proper way to start application servers

I'm not a server admin by any means...but run a few small apps and need to learn how things should work... I start all my stuff manually; mostly rails with puma/thin. When I reboot, I need to start my puma apps. What's the correct way to do this?
Kevin Brown
  • 263
  • 2
  • 13
1
vote
2 answers

Thin process duplicates after upstart.conf run

I'm trying to run thin server in upstart. Here is what my upstart.conf file contains: description 'kitfaye' start on runlevel [12356] stop on runlevel [!12356] respawn script exec su -l deploy -c "export RAILS_ENV=production && cd …
m8labs
  • 113
  • 4
1
vote
0 answers

Init script to run overlapping servers at service restart

How can I create a init script that starts (and tracks) the new process before the old is completely terminated at restart? I am developing a node.js service that needs to be able to restart gracefully, for example at deploy of a new version. The…
Paso
  • 131
  • 1
  • 4
1
vote
1 answer

Creating a folder in `/var/run` when job is run as a non-privileged user

I have a few upstart scripts which are run as a non-priviledged user using setuid. Pid files should be created in /var/run/my-service: /var/run/my-service/v1.pid, /var/run/my-service/v2.pid and so on. The upstart scripts are created by a script,…
Mihai Rotaru
  • 113
  • 4
1
vote
1 answer

Upstart can't stop foreverjs services on shutdown?

Scenario We use a Vagrant-based virtual machine running Ubuntu 12.04 LTS for development of three Node.JS servers that are started using foreverjs. We run the services under the vagrant user and mount the projects from the host to the virtual…
msanford
  • 1,477
  • 15
  • 28
1
vote
4 answers

portable daemon management from bash (sysvinit/upstart/systemd)

I have a little shell script which needs to stop a service. This needs to work on ubuntu (14.04), debian and Arch. Right now what I do is similiar to case $(cat /etc/issue) in *Ubuntu*) service command *Debian*) …
1
vote
1 answer

Recommended way to disable atd (and other unnecessary startup processes) in Ubuntu 14.04 LTS?

I just spun up a new Ubuntu 14.04 server and have been having a bit of trouble getting the atd daemon to stop auto-launching. There's been a bit of changing around on the management of startup processes, and I've viewed dozens of web pages on…
rholmes
  • 256
  • 2
  • 10
1
vote
1 answer

Logrotate for node.js app deployed using monit and upstart

I deployed a web application in node.js by following the guide: Deploying Node.js With Upstart and Monit . The app produces some log via console.log(). In the upstart script, it's redirected to a log file (exec sudo -u www-data node app.js >>…
He Shiming
  • 283
  • 1
  • 3
  • 12
1
vote
1 answer

Upstart Log Not Rotating

I have a custom upstart script that manages a Node API service. That script pipes output to /var/log/upstart/api-access.log. What I keep seeing is that the old log gets archived to api-access.log.1.gz, but a new api-access.log file isn't…
Rob Wilkerson
  • 1,465
  • 4
  • 17
  • 25
1
vote
2 answers

Force stop upstart job

I accidentally deleted some upstart job conf (in /etc/init/). Unfortunately I didn't set any respawn limit, and those jobs are now unstoppable. I searched online but didn't find any answers, hope I will have better luck here. Regards R PS: I'm using…
rmonjo
  • 231
  • 2
  • 4
  • 12
1
vote
0 answers

supervisord with Upstart always hangs

I'm trying to start supervisord with Upstart. The Upstart job is very simple and traditional (start on, stop on, author description, respawn, exec). I've tried running supervisord in the foreground ("-n") and omitting the "expect" stanza from the…
Dustin Oprea
  • 560
  • 2
  • 8
  • 19
1
vote
1 answer

Windows process management tools

Unix has tools like upstart, angel, god, etc to keep processes running constantly on system start and can restart processes that have failed. Does windows have the ability to do this natively?
The Internet
  • 503
  • 2
  • 8
  • 19
1
vote
1 answer

ubuntu upstart - how to set global nofile limit?

ubuntu 12.04 I have change the setting: /etc/security/limits.conf * soft nofile 65000 * hard nofile 65000 but cat /proc/{PID}/limits: Limit Soft Limit Hard Limit …
leiyonglin
  • 151
  • 1
  • 5