Я пытаюсь нарисовать схему развертывания сервисов и серверов на нашем предприятии с помощью точки. Для первой итерации я использовал neato, чтобы нарисовать каждую службу в виде блока и Предотвращение наложения записей с помощью graphviz и neato, плюс разрешение сплайнов, позволило мне получить приличный макет с краями в качестве зависимостей.
Теперь мне нужно разместить физические серверы внутри каждого из этих ящиков. Сначала я сделал каждую службу подграфом с именем, начинающимся с cluster, а затем поместил узлы, представляющие физические серверы, внутри каждого блока. Опять же, с помощью GraphViz - Как соединить подграфы? я подделал края для соединения кластеров, а не узлов. Проблема в том, что это работает только с точкой. Когда я использую neato для создания макета, он не понимает, что края находятся между кластерами, поэтому перемещает только узел кластера, который я использовал для привязки края. В результате блоки кластера огромны и перекрываются.
Я надеюсь, что в этом есть смысл. Есть ли способ заставить neato сохранять узлы в кластере сгруппированными?