oc-monitord/README.md
2025-05-15 17:29:33 +02:00

1.6 KiB

oc-monitor

DO : make build

Summary

oc-monitord is a daemon which can be run :

  • as a binary
  • as a container

It is used to perform several actions regarding the execution of an Open Cloud workflow :

  • generating a YAML file that can be interpreted by Argo Workflow to create and execute pods in a kubernetes environment
  • setting up the different resources needed to execute a workflow over several peers/kubernetes nodes with Admiralty : token, secrets, targets and sources
  • creating the workflow and logging the output from
    • Argo watch, which gives informations about the workflow in general (phase, number of steps executed, status...)
    • Pods : which are the logs generated by the pods

To execute, the daemon needs several options :

  • -u :
  • -m :
  • -d :
  • -e :

Notes features/admiralty-docker

  • When executing monitord as a container we need to change any url with "localhost" to the container's host IP.

    We can :

    • declare a new parameter 'HOST_IP'
    • decide that no peer can have "http://localhost" as its url and use an attribute from the peer object or isMyself() from oc-lib if a peer is the current host.

TODO

  • Allow the front to known on which IP the service are reachable

    • currently doing it by using kubectl get nodes -o wide
  • Implement writing and reading from S3 bucket/MinIO when a data resource is linked to a compute resource.

Adding ingress handling to support reverse proxing

  • Test wether ingress-nginx is running or not
    • Do something if not found : stop running and send error log OR start installation