I have used RabbitMQ but I haven't used Apache Kafka. Is it a similar problem that these products solve, or is there no connection?
I would say yes, they both implement asynchronous messaging. The way I look at Kafka is as a improvement to the old JMS/MQ model where queues and topics are unified into a single entity (called a topic.) This is an improvement because the decision of whether something was a queue or a topic had to be made very early on and there were major trade-offs in the choice. In Kafka, you don't have to make that choice at all.