Главная/Разработка/Kafka
Установка Kafka на свой сервер или в облаке
Установка Kafka на сервер в ветке 4.x обходится без ZooKeeper: брокеру нужны Java 17 или новее, одна команда форматирования хранилища и порт 9092 для клиентов. Самая частая ошибка новичков в другом: клиенты подключаются, но получают чужой адрес из-за неверного advertised.listeners. Если администрировать кластер некому, у провайдера есть управляемая Kafka.
Ответ за 30 секунд
Для проверки и небольшого потока событий хватит одного брокера на 4 ГБ памяти, запущенного в режиме KRaft. Все сложности дальше связаны с адресами: advertised.listeners должен совпадать с тем, как клиент видит сервер. Готовая Kafka у провайдера стоит от 2 900 ₽ в месяц на 14 октября 2026.
Кластер с копиями и обновлениями, брокеры настраивать не нужно.
Сколько памяти и диска нужно Kafka9092порт брокера Kafka
Java 17+нужна брокеру Kafka 4.x
от 2 900 ₽управляемая Kafka в месяц
01 · 1 мин
Для чего нужна Kafka и чем она отличается от RabbitMQ#
Kafka хранит поток событий как журнал: сообщения пишутся в темы (topics), делятся на разделы (partitions) и лежат на диске заданный срок, даже когда их уже прочитали. Новый читатель может вернуться к началу потока и прочитать всё заново. Так Kafka используют для логов, событий приложения, переноса данных между системами и аналитики.
Очередь задач для воркеров устроена иначе: сообщение выдаётся одному исполнителю и удаляется после подтверждения. Для такой работы чаще подходит RabbitMQ. Данные из Kafka нередко складывают в ClickHouse для отчётов.
02 · 1 мин
Где запускать Kafka: свой VPS или управляемая Kafka#
| Маршрут | Что делаете вы | Цена на 14 октября 2026 |
|---|---|---|
| Свой VPS, архив или Docker | Ставите Java, форматируете хранилище, настраиваете адреса, следите за диском и обновлениями | Сервер от 1 920 ₽ в месяц; для старта разумно 4 ГБ, это MSK Ultra 50 за 5 480 ₽ |
| Управляемая Kafka в Таймвеб Клауд | Создаёте кластер, получаете адреса брокеров | От 2 900 ₽ в месяц, публичный IP 200 ₽ |
Один брокер подходит для разработки и тестов, но при его отказе сообщения недоступны. Для рабочей среды используют не меньше трёх брокеров. Управляемый кластер снимает эту задачу, а приватная сеть провайдера не берёт плату за внутренний трафик.
03 · 1 мин
Установка Kafka на Linux: архив, Java 17 и режим KRaft#
Начиная с ветки 4.0 Kafka работает без ZooKeeper: брокер сам хранит метаданные кластера в режиме KRaft. Инструкции с ZooKeeper относятся к старым выпускам, на новых они не нужны.
- Поставьте Java 17 или новее, например пакет OpenJDK из репозитория.
- Скачайте архив с kafka.apache.org и распакуйте его в рабочий каталог.
- Создайте идентификатор кластера и отформатируйте хранилище: без этого брокер не запустится.
- Запустите брокер и создайте тестовую тему.
KAFKA_CLUSTER_ID="$(bin/kafka-storage.sh random-uuid)"
bin/kafka-storage.sh format --standalone -t $KAFKA_CLUSTER_ID -c config/server.properties
bin/kafka-server-start.sh config/server.properties
bin/kafka-topics.sh --create --topic events --bootstrap-server localhost:9092
Для постоянной работы оформите запуск службой systemd, чтобы брокер поднимался после перезагрузки. Каталог данных задаёт параметр log.dirs, срок хранения сообщений по умолчанию семь дней (log.retention.hours=168).
04 · 1 мин
Kafka в Docker: образ apache/kafka и адрес для клиентов#
У проекта есть официальный образ apache/kafka с тегом нужной версии, внутри которого уже собран режим KRaft. Для проверки достаточно одной команды:
docker run -d --name kafka -p 127.0.0.1:9092:9092 apache/kafka:4.3.1
Такой брокер объявляет себя клиентам как localhost:9092, поэтому он доступен только с того же сервера. Если приложение работает в другом контейнере или на другом сервере, брокеру нужен свой адрес: задайте параметр advertised.listeners с именем или IP, по которому клиент реально достучится. Брокер отдаёт клиенту именно этот адрес при первом подключении, и если он указывает на localhost, клиент снаружи упрётся в самого себя.
Образ apache/kafka-native собран на GraalVM и стартует быстрее, а обычный образ построен на JVM. Для рабочей среды чаще берут обычный.
Инструмент · 1 мин
Сколько памяти и диска нужно Kafka#
Куча JVM у брокера по умолчанию равна 1 ГБ, остальная память нужна файловому кэшу операционной системы: Kafka читает и пишет последовательно, и кэш делает это быстрым. Поэтому на сервере с 4 ГБ не отдавайте всю память Java.
- Диск: поток данных в сутки, умноженный на срок хранения в днях и на число копий каждого раздела. Запас оставляйте не меньше трети.
- Срок хранения: задаётся параметрами
log.retention.hoursиlog.retention.bytes, что наступит раньше, то и сработает. - Разделы: их число определяет параллелизм читателей; начинайте с небольшого числа и увеличивайте по мере роста.
Какой сервер взять под Kafka
Три ответа про поток сообщений, калькулятор подберёт конфигурацию
06 · 1 мин
Как защитить Kafka и копировать её данные#
По умолчанию брокер принимает подключения без шифрования и без проверки логина. Порт 9092 не публикуют в интернет: приложения в одной приватной сети ходят по внутреннему адресу, внешним клиентам включают TLS и SASL и открывают порт только нужным адресам.
Копий в виде одного файла у Kafka нет: данные хранятся в нескольких копиях разделов на разных брокерах, а рабочие данные дублируют в другое хранилище. Если Kafka у вас служит основным журналом, снимайте снимки диска сервера по расписанию: сервер для бэкапов описывает порядок копий и проверки.
07 · 1 мин
Вопросы об установке Kafka#
Как развернуть Kafka в Docker?
Запустите образ apache/kafka с нужным тегом и пробросьте порт 9092 на 127.0.0.1. Если клиенты на другом сервере, задайте advertised.listeners с внешним адресом брокера, иначе подключение не заработает.
Нужен ли ZooKeeper для Kafka?
В ветках 4.x нет: брокер хранит метаданные сам в режиме KRaft. ZooKeeper нужен только в старых выпусках, и инструкции с ним в новых версиях не работают.
Как установить Kafka на Windows?
Запускайте брокер в WSL2 или в контейнере Docker Desktop с Java 17 или новее. Для рабочей среды берите Linux, на нём проще службы и копии.
Сколько брокеров Kafka нужно для рабочей среды?
Не меньше трёх, чтобы потеря одного не останавливала запись и чтение. Один брокер подходит для разработки.
Почему этому можно верить
Как мы проверяли
Источники цифр на этой странице: VPS и VDS серверы Таймвеб Клауд, timeweb.cloud/services/vds-vps, проверено 14 октября 2026; Облачные базы данных Таймвеб Клауд, timeweb.cloud/services/dbaas, проверено 14 октября 2026; Документация Apache Kafka: Quickstart (Java 17+, образ apache/kafka), kafka.apache.org/quickstart, проверено 15 октября 2026; endoflife.date: сроки поддержки PostgreSQL, MySQL, MariaDB, MongoDB, Redis, Valkey, ClickHouse, Kafka, RabbitMQ, Magento, Joomla, PHP, endoflife.date, проверено 15 октября 2026.
Отдайте базу данных провайдеру
Обновления, мониторинг и резервные копии делает провайдер, вы работаете с подключением.
- PostgreSQL, MySQL, MongoDB от 790 ₽
- Valkey (совместим с Redis) от 670 ₽
- Kafka, RabbitMQ, ClickHouse, OpenSearch
- Автобэкапы 6 ₽ в месяц за ГБ