Are services hosted in the runner VM or are they in a different one? E.g. If I have a service that takes 3GB of memory, will that memory be taken from the runner VM or a different place?
Anything started via
jobs.<job_id>.services is a Docker container on the runner, so yes, memory for services will be taken out of the RAM of the runner.