Difference between revisions of "Portal:Toolforge/Admin/Services"

From Wikitech-static
Jump to navigation Jump to search
imported>Arturo Borrero Gonzalez
(→‎Architecture: add note about how puppet code works for toolforge-stretch)
imported>Arturo Borrero Gonzalez
(→‎bigbrother: Add some notes about bigbrother)
Line 21: Line 21:


This script runs, as a service, from the active <code>tools-services-*</code> server, and wakes up every 120 seconds to populate the tables with new data.
This script runs, as a service, from the active <code>tools-services-*</code> server, and wakes up every 120 seconds to populate the tables with new data.
The database in use is <code>tools.labsdb</code> which is <code>tools.db.svc.eqiad.wmflabs</code>.


== apt repository ==
== apt repository ==
Line 28: Line 30:
== bigbrother ==
== bigbrother ==


'''TODO:''' fill me.
This daemon is used to restart grid jobs in case they are found not running. Users (tools) can instruct which jobs to monitor to the daemon via a <code>$HOME/.bigbrotherrc</code> file.
 
The daemon itself will log to <code>/var/log/upstart/bigbrother.log</code>.
 
== grid relationship ==
 
Services nodes are grid submit nodes apparently. We don't know why yet or if this can be replaced/deleted/deprecated.


= Admin operations =
= Admin operations =

Revision as of 19:11, 30 October 2018

This page contains information regarding the services that are provided internally to Toolforge nodes.

Architecture

The services run from a single VM (with a spare one already provisioned for maintenance and disaster recovery purposes):

  • tools-services-01
  • tools-services-02

The active one is determine by the value of role::toollabs::services::active_host in Hiera.

NOTE: in new toolforge-stretch, the puppet role is role::wmcs::toolforge::services and the relevant hiera key is profile::toolforge::services::active_node.

updatetools

updatetools is a Python script that updates tools and maintainers information to be used by tools.wmflabs.org (source code available at tool-admin-web).

It gets a list of tools (accounts starting with "tools."), reads their .description and toolinfo.json files and adds it to the tools table in the toollabs_p database. Maintainer information is retrieved by getting all users that belong to the tool's group and using getpwnam() to retrieve user information, which then gets added to the users table.

This script runs, as a service, from the active tools-services-* server, and wakes up every 120 seconds to populate the tables with new data.

The database in use is tools.labsdb which is tools.db.svc.eqiad.wmflabs.

apt repository

TODO: fill me. Are we going to use the aptly repo in the new toolforge version?

bigbrother

This daemon is used to restart grid jobs in case they are found not running. Users (tools) can instruct which jobs to monitor to the daemon via a $HOME/.bigbrotherrc file.

The daemon itself will log to /var/log/upstart/bigbrother.log.

grid relationship

Services nodes are grid submit nodes apparently. We don't know why yet or if this can be replaced/deleted/deprecated.

Admin operations

TODO: fill me.

See also