Den här artikeln innehåller svar på några av de vanliga frågorna om migrering till Event Hubs för Apache Kafka.
Körs Azure Event Hubs på Apache Kafka?
Nej. Azure Event Hubs är en molnbaserad multi-tier broker med stöd för flera protokoll som utvecklas och underhålls av Microsoft och inte använder någon Apache Kafka-kod. Ett av de protokoll som stöds är Kafka RPC-protokollet för Kafka-klientens konsument- och producent-API:er. Event Hubs fungerar med många av dina befintliga Kafka-program. Mer information finns i Event Hubs för Apache Kafka. Eftersom begreppen Apache Kafka och Azure Event Hubs är mycket lika (men inte identiska) kan vi erbjuda den oöverträffade tillförlitligheten hos Azure Event Hubs till kunder med befintliga Apache Kafka-investeringar.
Event Hubs-konsumentgrupp jämfört med Kafka-konsumentgrupp
Vad är skillnaden mellan en Event Hubs-konsumentgrupp och en Kafka-konsumentgrupp på Event Hubs? Kafka-konsumentgrupper på Event Hubs skiljer sig helt från standardkonsumentgrupper för Event Hubs.
Event Hubs-konsumentgrupper
- De hanteras med crud-åtgärder (create, retrieve, update och delete) via portalen, SDK eller Azure Resource Manager-mallar. Event Hubs-konsumentgrupper kan inte skapas automatiskt.
- De är underordnade entiteter till en händelsehubb. Det innebär att samma konsumentgruppnamn kan återanvändas mellan händelsehubbar i samma namnområde eftersom de är separata entiteter.
- De används inte för att lagra förskjutningar. Orkestrerad AMQP-förbrukning görs med hjälp av extern förskjutningslagring, till exempel Azure Storage.
Kafka-konsumentgrupper
- De skapas automatiskt. Kafka-grupper kan hanteras via API:er för Kafka-konsumentgruppen.
- De kan lagra förskjutningar i Event Hubs-tjänsten.
- De används som nycklar i vad som i praktiken är ett förskjutet nyckel/värde-lager. För ett unikt par av
group.id
ochtopic-partition
lagrar vi en förskjutning i Azure Storage (3x replikering). Event Hubs-användare debiteras inte extra lagringskostnader vid lagring av Kafka-förskjutningar. Förskjutningar är manipulerbara via Api:erna för Kafka-konsumentgruppen, men förskjutningslagringskontona är inte direkt synliga eller manipulerbara för Event Hubs-användare. - De sträcker sig över ett namnområde. Om du använder samma Kafka-gruppnamn för flera program i flera ämnen innebär det att alla program och deras Kafka-klienter balanseras om när endast ett enda program behöver balanseras om. Välj gruppnamn på ett klokt sätt.
- De skiljer sig helt från Event Hubs-konsumentgrupper. Du behöver inte använda "$Default", och du behöver inte heller oroa dig för att Kafka-klienter stör AMQP-arbetsbelastningar.
- De kan inte visas i Azure Portal. Information om konsumentgrupper är tillgänglig via Kafka-API:er.
Stöder Azure Event Hubs för Apache Kafka autentisering med signaturtoken för delad åtkomst?
Autentisering med OAuth 2.0 och signatur för delad åtkomst stöds.
Signaturtoken för delad åtkomst genereras med hjälp av en auktoriseringsregel och en av dess signeringsnycklar. Det stöds inte när du använder Event Hubs för Apache Kafka-slutpunkten.
Har Azure Event Hubs stöd för Apache Kafka idempotent-producenter och konsumenter?
Ja. Azure Event Hubs stöder Apache Kafka idempotent-producenter och konsumenter.
Nästa steg
Mer information om Event Hubs och Event Hubs för Kafka finns i följande artiklar: