Workflow Management OVHcloud

De tool om met scenario's uw infrastructuur te automatiseren

In de cloud geïmplementeerde architecturen zijn zelden statisch. Ze veranderen en passen zich aan de omstandigheden of de eisen van het bedrijf aan. Deze wijzigingen industrialiseren wordt dus noodzakelijk om kwaliteit en effectiviteit te behouden gedurende de hele life-cycle van een applicatie. Met Workflow Management kunt u bijvoorbeeld back-ups automatiseren, machines op bepaalde tijden uit- en aanzetten of de grootte van een cluster wijzigen tijdens drukke periodes.

Automatische back-up

Omdat het zo belangrijk is, is een back-up zeker een van de eerste dingen waaraan u denken moet, als u uw infrastructuur wilt automatiseren. OVHcloud heeft het creëren van back-upscenario's vereenvoudigd door ze direct toegankelijk te maken vanuit uw Control Panel.

Taakplanner

Het systeem kan werken als een planner, net zoals cron in een Linux-omgeving. Als de workflow (of het scenario) eenmaal gedefinieerd is, zorgt de service voor de uitvoering ervan. Dat kan voor een simpele API-call zijn, die een paar seconden duurt, of een logische aaneenschakeling van taken die meerdere uren vergt.

Scenario's starten op basis van voorwaarden

U kunt het starten van scenario's definiëren, evenals bepaalde voorwaarden tijdens de uitvoering ervan, volgens het principe „if this, then that“. De start kan op een bepaalde tijd zijn of door een externe trigger (een API-call), waarna begonnen wordt met de verificatie van de geprogrammeerde voorwaarden.

Automatiseren van complexiteit

Scenario's kunnen uit een groot aantal taken zijn opgebouwd, als er sprake is van een complexe situatie. Workflow Management regelt deze hele opeenvolging van handelingen om de uitvoeringen gescheiden te houden. Hiermee kunnen meerdere honderden handelingen geautomatiseerd worden, zoals bijvoorbeeld complexe updateprocessen.

Gebruik

Definieer een workflow in een YAML-bestand

...

  tasks:
    create_server:
      action: nova.servers_create
      input:
        name: <% $.vm_name %>
        image: <% $.image_ref %>
        flavor: <% $.flavor_ref %>
...
      on-success:
        - wait_for_instance
 
    wait_for_instance:
      action: nova.servers_find id={{ _.vm_id }} status='ACTIVE' action_region=<% $.region %>
...
      publish:
        vm_status: "{{ task().result.status }}"

Creëer uw workflow

openstack workflow create workflow.yaml

Programmeer wanneer het uitgevoerd wordt

openstack cron trigger create --count 3 --pattern '*/2 * * * *' \
    trigger01 create_vm '{"vm_name": "foobar", \
    "image_ref": "Debian 9", "flavor_ref": "b2-30"}'

Functies

Mistral API

Workflow Management werkt via een officiële bouwsteen van OpenStack: Mistral. Deze orchestratietool ondersteunt de talen YAQL en Jinja2.

Meerdere workflows parallelliseren

Om de uitvoering van bepaalde scenario's te versnellen, kunnen er meerdere „workers“ ingezet worden. Op die manier kunnen taken geparallelliseerd worden.

Afhankelijkheden (dependencies) managen

Het aaneenschakelen van taken kan aan afhankelijkheidsregels onderworpen worden om voor een goede uitvoering te zorgen, of om te zorgen voor een synchronisatie vóór een volgende stap.

Triggering of external HTTP/HTTPS calls

On top of being able to manage all of the OpenStack resources via APIs, Workflow Management can also trigger external calls.

Pricing Public Cloud

Facturering van Workflow Management

Workflows aanmaken en uitvoeren is gratis. Alleen de gegenereerde cloud-resources (instances, volumes...) worden tegen het gebruikelijke tarief gefactureerd.