Установка Kafka на свой сервер или в облаке: термины и чек-лист
Подробности, цифры, термины и чек-лист по теме «Установка Kafka на свой сервер или в облаке». Страница справочника целиком: Установка Kafka на сервер.
Коротко о теме
Установка Kafka без ZooKeeper: режим KRaft, образ apache/kafka, настройка advertised.listeners для клиентов и управляемая Kafka от 2 900 ₽.
Подробности по разделам
Для чего нужна Kafka и чем она отличается от RabbitMQ
Очередь задач для воркеров устроена иначе: сообщение выдаётся одному исполнителю и удаляется после подтверждения. Для такой работы чаще подходит RabbitMQ. Данные из Kafka нередко складывают в ClickHouse для отчётов.
Установка Kafka на Linux: архив, Java 17 и режим KRaft
Каталог данных задаёт параметр log.dirs, срок хранения сообщений по умолчанию семь дней ( log.retention.hours=168 ).
Kafka в Docker: образ apache/kafka и адрес для клиентов
Брокер отдаёт клиенту именно этот адрес при первом подключении, и если он указывает на localhost, клиент снаружи упрётся в самого себя. Образ apache/kafka-native собран на GraalVM и стартует быстрее, а обычный образ построен на JVM. Для рабочей среды чаще берут обычный.
Как защитить Kafka и копировать её данные
Если Kafka у вас служит основным журналом, снимайте снимки диска сервера по расписанию: сервер для бэкапов описывает порядок копий и проверки.
Ключевые цифры
- Запустите образ apache/kafka с нужным тегом и пробросьте порт 9092 на 127.0.0.1.
- В ветках 4.x нет: брокер хранит метаданные сам в режиме KRaft.
- Запускайте брокер в WSL2 или в контейнере Docker Desktop с Java 17 или новее.
Термины на странице
- Apache
- Apache это веб-сервер. На хостинге с ним работают файлы .htaccess.
- Linux
- Linux это семейство операционных систем для серверов: Ubuntu, Debian, AlmaLinux и другие.
- MySQL
- MySQL и MariaDB это базы данных, с которыми работают WordPress, Битрикс и другие популярные CMS.
- PostgreSQL
- PostgreSQL это база данных для приложений с большими объёмами и сложными запросами.
- Redis
- Redis это хранилище данных в памяти. Его используют как кеш и очередь задач.
- PHP
- PHP это язык, на котором работают WordPress, Битрикс и другие CMS. Версия PHP влияет на скорость и совместимость сайта.
- TLS
- TLS это протокол шифрования, на котором работает HTTPS. Название SSL осталось по привычке.
- Облачный сервер
- Облачный сервер это VPS, ресурсы которого можно менять на ходу, а оплата часто почасовая.
Что проверить
- Выберите конфигурацию по памяти и диску под задачу, процессор обычно вторичен.
- Проверьте тип виртуализации: KVM даёт свою систему и гарантированные ресурсы.
- Уточните, входит ли IPv4 и сколько стоит трафик сверх пакета.
- Храните данные контейнеров в томах.
- Закрепляйте версии образов, а не latest.
- Ограничьте ресурсы контейнеров, чтобы один не съел весь сервер.