spdfg / elektron

Elektron is a lightweight, power-aware, pluggable Mesos framework that behaves as a playground to experiment with different scheduling policies to schedule ad-hoc jobs in docker containers.
GNU General Public License v3.0
4 stars 3 forks source link

docker compose setup #15

Open pradykaushik opened 4 years ago

pradykaushik commented 4 years ago
  1. Added Dockerfile to help containerize Elektron.
  2. Added docker-compose yaml file to setup mesos cluster for elektron.

The docker image tagged rdelvalle/mesos-master:1.5.1 was used as the mesos master. As the mesos agent for Elektron requires additional software (docker, PCP) pkaushi1/mesos-agent-elektron:1.5.1 was built using rdelvalle/mesos:1.5.1 as the base image.

Use the below commands to run elektron.

docker-compose run elektron
ridv commented 4 years ago

Were you able to find a workaround for getting RAPL metrics?

pradykaushik commented 4 years ago

Were you able to find a workaround for getting RAPL metrics?

Not yet. Currently, the CPU and Memory utilization is measured of the physical host (not the containers). There are multiple ways forward from here.

  1. If we stick to the current approach (the one in the PR), then it would require PCP to be installed on the host machine. Definitely not the ideal scenario.
  2. If we want to monitor the CPU and Memory utilization of the docker containers then we could do so by using pmdadocker and monitoring the below metrics. However, note that PCP would still need to be installed on the host machine. If we want to measure RAPL metrics, we would need to pull data from the host machine.
    • docker.cpu_stats.cpu_usage.usage_in_kernelmode
    • docker.cpu_stats.cpu_usage.usage_in_usermode
    • docker.memory_stats.usage
  3. If we want to refrain from having to install anything on the host machine, then I believe the only way forward is to read off a PCP log file baked into the image (this is the approach you suggested the other day). I can see two advantages with this.
    • Testing becomes easier as now we have a fixed PCP log.
    • Power measurements can also be part of the PCP log file. If we go with option 3, it would not require installation of PCP on the host machine.

Let me know your thoughts on this.