Как грамотно изолировать сервисы на linux-сервере?
Технологий конечно же есть.
1) Это виртуализация - KVM/Xen
На мой взгляд предпочтительнее KVM, лучше поддержка, не нужно специальное хост-ядро.
Немного, процента на 2-3 проигрывает перед XEN, но в удобстве выигрывает однозначно. XEN - только линукс, и только со специальными патчами в ядре на хосте и клиенте.
Фактически получаете полноценную виртуальную машину, ставите туже все, что душе угодно, хоть линукс, хоть BSD, хоть винду.
Проблема одна - требует жесткого выделения ресурсов. Поэтому только десяток-другой виртуалок (да и то заивисит от нагрузок).
По сравнению с железом, сожрет от 3 до 7-10 процентов производительности.
Тем не менее: мой выбор KVM.
2) Контейнеризация - Docker/LCX/Virtuozzo.
Сразу скажу за virtuozzo - ничего про нее говорить не буду. В принципе - очень похожа на XEN.
Остальные две основаны на CGroups, более того, docker внутри использует LXC.
Docker - очень распространен и популярен, фактически лидер рынка. Заточен на запуск одной задачи в одном контейнере. Контейнеры можно объединять в группы.
LXC/LXD - менее распростанен, но очень удобная технология, если нужно контейнеризировать окружение операционки с кучей процессов.

Мы пользуем и Docker и LXC/LCD. И даже в LXC пускаем Docker. 
Все зависит от задачи.
Нужен сервис с кучей процессов и окружением - LXC
Нужен один процесс - docker.
Нужно полноценное окружение с ядром, куртизанками и гусарами - KVM.

По факту - около 10 виртуалок KVM, порядка 10 контейнеров LXC, и порядка 20 контейнеров Docker.
Лучше разделить по стекам через KVM или другую нормальную виртуализацию. 
Например LAMP в одну VM, почту в другую и т.д.

LXC/LXD возможны проблемы из-за кастрированности технологии
Docker вообще не про это

Virtuozzo Containers пока единственная более или менее полноценная среди контейнеров. Если делить на виртуальные машины.