Использование точки Graphviz или Neato для размещения кластеров - PullRequest
2 голосов
/ 03 марта 2011

Я пытаюсь нарисовать схему развертывания сервисов и серверов на нашем предприятии, используя точку.Для первой итерации я использовал neato для рисования каждого сервиса в виде блока и Предотвращение перекрывающихся записей с использованием graphviz и neato , а также разрешение сплайнов позволило мне получить приличный макет с ребрами в качестве зависимостей.

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

Надеюсь, это имеет смысл.Есть ли способ заставить neato держать узлы в кластере сгруппированными?

1 Ответ

4 голосов
/ 10 марта 2011

Я переосмыслил то, что делал, и вместо того, чтобы использовать подграф для каждого сервиса с подузлами для каждого сервера, я вместо этого использовал формат запись . Каждый узел теперь выглядит как

+------------------------------+
|         Service name         |
+------------------------------+
| server1 | server2 | server 3 |
+------------------------------+

и намного проще их выложить:)

...