NAME

Ubic::Manual::Intro - Initial introduction

VERSION

version 1.37_01

DESCRIPTION

Ubic is a perl-based service manager.

Ubic can run any program as a service and provides frontend script ubic to manage services.

Ubic includes centralized watchdog process which checks every service periodically and brings them back online if necessary.

INSTALLATION

Installing Ubic is easy.

First, install the module using your favorite CPAN client, for example, cpanm Ubic.

Second, invoke ubic-admin script to perform initial configuration: ubic-admin setup.

If you don't like that setup process asks too many questions, you can invoke it with batch-mode option: ubic-admin setup --batch-mode.

Alternatively, if you're using Debian or Ubuntu, you can install ubic .deb package from official launchpad PPA repository: https://launchpad.net/~berekuk/+archive/ubic.

WRITE YOUR FIRST SERVICE

Put this code in your service dir, i.e. in file /etc/ubic/service/example (or if you opted for home-dir installation, in ~/ubic/service/example):

use Ubic::Service::SimpleDaemon;
Ubic::Service::SimpleDaemon->new(
    bin => 'sleep 1000',
);

Start it:

$ ubic start example
Starting example... started (pid 41209)

Check its status:

$ ubic status
example running (pid 41209)
ubic
    ubic.ping   off
    ubic.update off
    ubic.watchdog   running (pid 93226)

Or:

$ ubic status example
example running (pid 41209)

Now let's see how watchdog works by killing the process (don't forget to change pid with the pid you got in status command above):

$ kill 41209

$ ubic status example
example not running

$ ubic-watchdog
[Thu May 26 20:20:54 2011]  example is broken, restarting

You don't have to run ubic-watchdog manually; it will do its work in background in a minute.

SEE ALSO

Ubic::Service::SimpleDaemon allows you to tune other service aspects other than bin. Check it out.

Series of blog posts written as tutorials

Don't forget to read Ubic::Manual::Overview, it explains everything else that ubic has to offer.

AUTHOR

Vyacheslav Matyukhin <mmcleric@yandex-team.ru>

COPYRIGHT AND LICENSE

This software is copyright (c) 2012 by Yandex LLC.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.