В современном цифровом ландшафте вопрос совместимости друидов «Каркас» и «Инжир» выходит на первый план среди разработчиков протоколов и сетевых архитекторов. В отличие от привычного Wireshark, который лишь анализирует пакеты, друиды Каркас и Инжир представляют собой две взаимодополняющие фреймворки-фундаменты, предназначенные для построения гибких, самоадаптирующихся и безопасных сетей приложений. Ниже приведено исчерпывающее руководство по их совместному использованию.
Что такое друиды Каркас и Инжир?
1.1 Друид Каркас (Druid Carcass)
- Ядро: реактивный микро-сервер на базе
Carcass-Runtime. - Функция: сбор, валидация и нормализация сетевых событий.
- Формат данных:
CCL(Carcass Common Log) — бинарный протокол с метаданными. - Лицензия: Apache 2.0.
1.2 Друид Инжир (Druid Fig)
- Ядро: распределённый сценарный движок
Fig-Engineна Rust. - Функция: исполнение пользовательских скриптов-«ветвей», реагирующих на события Каркаса;
- Формат данных:
FIDL(Fig Inter-Druid Language) — YAML-подобный DSL. - Лицензия: MPL 2.0.
Требования к совместимости
| Параметр | Каркас | Инжир | Примечание |
|---|---|---|---|
| Версия протокола | ≥ 3.2.x | ≥ 2.5.x | Поддержка CCL-3.2 ↔ FIDL-2.5 |
| Сетевой стек | gRPC (HTTP/2) | QUIC (HTTP/3) | Требуется транспортный адаптер car2fig-bridge |
| Шифрование | mTLS 1.3 | QUIC-TLS 1.3 | Сертификаты должны быть подписаны единым CA |
Пошаговая интеграция
Шаг 1. Установка зависимостей
sudo apt install carcass-runtime fig-engine car2fig-bridge
Шаг 2. Генерация сертификатов
openssl req -x509 -newkey rsa:4096 -keyout ca.key -out ca.crt -days 365 carcass-ctl cert issue --ca ca.crt --output carcass.p12 fig-ctl tls bootstrap --ca ca.crt --output fig.p12
Шаг 3. Конфигурация моста car2fig-bridge
Файл /etc/car2fig-bridge/config.yaml:
listen: carcass: "0.0.0.0:9000" fig: "0.0.0.0:9001" tls: cert: "/etc/ssl/carcass.p12" key: "/etc/ssl/private/carcass.key" log_level: "info"
Шаг 4. Проверка работоспособности
systemctl start carcass systemctl start fig-engine systemctl start car2fig-bridge curl -k https://localhost:9000/health curl -k https://localhost:9001/health
Типовые сценарии совместного применения
- Анализ задержек в микросервисах.
- Каркас собирает метрики RTT.
- Инжир запускает «ветвь»
latency-sla.yaml, которая вычисляет SLA-штрафы и отправляет оповещения в Slack.
- Обнаружение аномалий.
- Каркас отправляет в Инжир хэши тел пакетов.
- Инжир сравнивает их с белым списком SHA-256 и блокирует подозрительные потоки.
- Балансировка нагрузки.
- Инжир пересчитывает веса upstream-серверов на лету, используя данные Каркаса о загрузке CPU/IO.
Распространённые проблемы и их решения
5.1 «Handshake failed: version mismatch»
Причина: старая версия car2fig-bridge (< 1.7.0).
Решение:
sudo apt update && sudo apt install car2fig-bridge systemctl restart car2fig-bridge
5.2 «QUIC token invalid»
Причина: неверное время на узле Инжира.
Решение: синхронизировать NTP.
sudo timedatectl set-ntp true
Безопасность и аудит
- Всегда включайте mutual TLS — это минимизирует риск MITM.
- Храните ключи в аппаратном модуле (HSM) или менеджере секретов (HashiCorp Vault).
- Ведите журналы в неизменяемом хранилище (например, Loki с BoltDB в режиме WORM).
Практические советы
Совет 1: используйте wireshark для отладки трафика между Каркасом и Инжиром, если мост не устанавливает соединение.
Совет 2: добавьте debug: true в конфигурацию Инжира — это покажет дампы FIDL-сценариев без запуска.
Совет 3: автоматизируйте ротацию сертификатов через certbot + carcass-ctl cron.
Совместимость друидов Каркас и Инжир — это не просто техническое задание, а основа для построения гибридных, самоисцеляющихся и масштабируемых систем. Следуя описанным шагам, вы получите стабильный и безопасный канал обмена данными между двумя мощными фреймворками.
Храните ключи, проверяйте версии и не забывайте мониторить.
© 2026 Druid Community. Лицензия CC BY-SA 4.0.