--- title: Принципы инфраструктуры description: Основные принципы, обеспечивающие безопасную, предсказуемую среду с минимальными зависимостями. weight: 5 --- Общие модули построены на ключевых принципах, предназначенных для обеспечения безопасной, предсказуемой среды с минимальными зависимостями для независимых self-hosted проектов. ## Предсказуемость через структуру {#predictability} Ручная настройка сервера подвержена «дрейфу конфигурации» (configuration drift), когда хосты, которые должны быть идентичными, со временем начинают различаться. Общие модули решают эту проблему следующим образом: - **Git как источник истины**: Каждая конфигурация, от правил UFW до crontab, хранится в репозитории. - **Идемпотентная автоматизация**: [Action-скрипты](/root/glossary#action) разработаны так, чтобы их можно было запускать многократно без побочных эффектов, гарантируя, что хост всегда соответствует заданному состоянию. ## Минимальное количество зависимостей {#minimalism} Для обеспечения долгосрочной поддерживаемости общие модули избегают сложных инструментов управления конфигурацией (таких как Ansible или Salt). Вместо этого они полагаются на: - **Bash**: Универсальный язык Unix-систем. - **Docker**: Для изоляции приложений и согласованности окружения. - **Стандартные инструменты Linux**: Прямое использование `systemd`, `ufw` и `cron`. ## Децентрализация {#decentralization} Каждый [Узел (Node)](/root/glossary#node) является независимым. Хотя они используют библиотеку общих модулей ([Commons](/root/glossary#commons)), они не зависят от центрального «мастер»-сервера. Такая архитектура гарантирует, что сбой на одном хосте не повлияет на несвязанные сервисы. --- **См. также:** - [Концепция: Модель безопасности и изоляция](/root/concepts/security-model) - [Концепция: Модель многоуровневого хранения](/root/concepts/tiered-storage)