There is a number of possible improvements to the architecture of SUSE Manager / Salt integration that should be investigated in order to improve the reliability and scalability of the backend:

  1. Actions are currently scheduled in the minions using the schedule module of Salt. This brings problems with reliability as for instance a minion can be down at the specified schedule time which leads to actions not being executed. Scalability can be an issue as actions being scheduled for many minions might return results to the server at the same time. Instead it might be better to keep control over scheduled actions on the server to allow batching of actions as well as downtimes of minions or even the server. There is a work in progress branch to get started.
  2. For receiving action results we are currently relying on a websocket connection to the Salt event bus in order to receive job return events. This is problematic as the connection might be interrupted leading to the server missing events. Instead we could make use of a master-side returner to write the action results directly into the postgresql database. This would further allow to have setups with multiple Salt masters returning job results to the same database.

Looking for hackers with the skills:

susemanager salt backend java python postgresql

This project is part of:

Hack Week 15

Activity

  • about 6 years ago: dvosburg liked this project.
  • over 6 years ago: whdu liked this project.
  • over 6 years ago: moio joined this project.
  • over 6 years ago: moio liked this project.
  • over 6 years ago: j_renner added keyword "python" to this project.
  • over 6 years ago: j_renner added keyword "postgresql" to this project.
  • over 6 years ago: dmacvicar liked this project.
  • over 6 years ago: j_renner started this project.
  • over 6 years ago: j_renner liked this project.
  • over 6 years ago: j_renner added keyword "susemanager" to this project.
  • over 6 years ago: j_renner added keyword "salt" to this project.
  • over 6 years ago: j_renner added keyword "backend" to this project.
  • over 6 years ago: j_renner added keyword "java" to this project.
  • over 6 years ago: j_renner originated this project.

  • Comments

    Be the first to comment!

    Similar Projects

    UYUNI - synchronize content between registry servers by RDiasMateus

    [comment]: # (Please use the project descriptio...


    Deploy Uyuni proxy using Elemental and Fleet by cbosdonnat

    Project Description

    Now that Uyuni proxy ...


    Testing and adding GNU/Linux distributions on Uyuni by juliogonzalezgil

    Join the Gitter channel! [https://gitter.im/uy...


    Improve OpenSCAP support in Uyuni by admehmood

    [comment]: # (Please use the project descriptio...


    Uyuni test suite improvements by dgedon

    Project Description

    Uyuni is the upstream...


    Uyuni test suite improvements by dgedon

    Project Description

    Uyuni is the upstream...


    Improve OpenSCAP support in Uyuni by admehmood

    [comment]: # (Please use the project descriptio...


    Testing and adding GNU/Linux distributions on Uyuni by juliogonzalezgil

    Join the Gitter channel! [https://gitter.im/uy...


    OSSelot collaboration on legal reviews of community packages by lkocman

    [comment]: # (Please use the project descriptio...


    One of couple of Python projects (update M2Crypto) by mcepl

    There are couple of projects I work on, which n...


    Give some love to spec-cleaner by kstreitova

    Project Description

    spec-cleaner is an open...


    zypper plugin for discovering reverse dependencies by bzoltan1

    Often when we test maintenance updates or when ...


    Linux Immersive Learning System (LILS) by dgarcia

    [comment]: # (Please use the project descriptio...


    Learn PostgreSQL advanced features by okurz

    Motivation

    The PostgreSQL database implement...


    Port the Minion job queue to TypeScript by kraih

    Project Description

    As part of the [mojo....