Ответ
В AWS это полностью управляемый сервис Amazon Managed Streaming for Apache Kafka (MSK).
Ключевые особенности:
- Полностью управляемый: AWS автоматически настраивает, масштабирует, обновляет и обслуживает инфраструктуру Kafka (брокеры, Zookeeper).
- Высокая доступность: Данные реплицируются между зонами доступности (AZ).
- Безопасность: Поддержка шифрования данных в покое и при передаче, аутентификация с помощью IAM, SASL/SCRAM или TLS-сертификатов, и сегментация сети через VPC.
- Совместимость: Полная совместимость с API Apache Kafka, что позволяет использовать существующие клиентские приложения и инструменты.
Пример создания кластера через AWS CLI:
aws kafka create-cluster
--cluster-name "production-msk-cluster"
--kafka-version "3.5.1"
--number-of-broker-nodes 3
--broker-node-group-info file://broker-config.json
--encryption-info '{"EncryptionInTransit": {"ClientBroker": "TLS", "InCluster": true}}'
--enhanced-monitoring "PER_TOPIC_PER_BROKER"
Альтернативы в других облаках:
- Azure: Azure Event Hubs (PaaS-сервис с Kafka-совместимым endpoint) или Azure HDInsight с Kafka.
- Google Cloud (GCP): Confluent Cloud (управляемый сервис от создателей Kafka) или Pub/Sub (родной сервис обмена сообщениями GCP, не является Kafka, но решает схожие задачи).