AivenがApache Kafka 3.0をサポートしました
はじめに
アライアンス統括部の佐々木です。AivenがApache Kafka 3.0をサポートしました。
早速やってみます!
やってみた
サービスの作成
Aiven Dashboardの[Services]画面から[+ Create a new service]をクリックします。
[Create Service]画面に遷移します。Kafka Version 3.0が選択可能になっていることがわかります。こちらをクリックして選択し、[Create Service]ボタンをクリックします。
Kafkaサービスがビルドされます。
しばらく待っているとステータスがRunningになります。
作成したサービスをクリックすると詳細画面に遷移します。
動作確認
KafkaにTopicを作成します。[Services]-[Topics]を選択し、[Topic name]にテスト用Topicの名前を入力します。[Add topic]ボタンをクリックします。
Topicが作成されます。
次に接続するための環境を作ります。ローカル環境はMacBook Pro、macOS Big Surです。Kafkaを試すために、簡易的なKafkaクライアントであるkcatをHomebrewを使ってインストールします。
% brew install kcat
kcatを使ってKafkaを試す手順は以下のドキュメントにあります。
まずはkcatのコンフィグファイルを作成し、接続情報などを記載します。service.key、service.cert、ca.pemはAiven管理コンソールでサービス詳細画面からダウンロードできます。コマンドを実行するディレクトリに一緒に置いておいてください。
% vi kcat.config bootstrap.servers=kafka-d2bac68-XXXXX.aivencloud.com:28815 security.protocol=ssl ssl.key.location=service.key ssl.certificate.location=service.cert ssl.ca.location=ca.pem
kcatを使って、作成したTopicに対し、「test-message-content」という文字列を投入します。
% echo test-message-content | kcat -F kcat.config -P -t test-topic -k test-message-key
引数は以下の通りです。
- -P: Producer modeで利用
- -t: Topicを指定
- -k: メッセージキーを指定
次に、Topicからメッセージを受信します。
% kcat -F kcat.config -C -t test-topic -o -1 -e % Reading configuration from file kcat.config test-message-content % Reached end of topic test-topic [0] at offset 1: exiting
引数は以下の通りです。
- -C: Consumer modeで利用
- -t: Topicを指定
- -o: Topicの開始位置
- -e: Topicの終わりに達するとkcatを停止する
ということで、無事にKafka 3.0が起動し、kcatを使ってメッセージの送受信が出来ました!
さいごに
フルマネージドなKafkaとしてはAmazon Managed Streaming for Apache Kafkaもありますが、クラウドベンダに依存せず使えるメッセージキューとして、AivenでのKafkaも選択肢の一つになるのではないでしょうか。