Confluent Platform 6.1.5 リリースノート

6.1.5 は Confluent Platform のメジャーリリースであり、Kafka の最新の安定版 Apache Kafka® 2.7.0 が組み込まれています。

このリリースの技術的な詳細について、以降で説明します。

6.1.5 リリースの詳細については、リリースに関するブログ および Streaming Audio のポッドキャスト をご確認ください。

商用版の機能

マルチリージョンクラスター

In-Sync Replica("ISR")リストには通常参加しない非同期トピックパーティションレプリカはオブザーバーとも呼ばれ、パーティションのレプリケーション数が不足したり、トピックに構成されている "min.insync.replicas" 設定をパーティションが下回ったりした場合に、自動的に ISR に昇格されるようになりました。これを有効にするには、トピックのレプリカ配置 JSON で "version" を 2 に設定し、"observerPromotionPolicy" の行を追加してその値を "under-replicated" または "under-min-isr" に設定します。

Self-Balancing

Confluent Platform 6.1 の Self-Balancing Clusters では、新しいブローカーを追加する際の Self-Balancing タスクをモニタリングする特別な REST API 呼び出しを追加することでオブザーバビリティが拡張されています。

Confluent Control Center

  • ksqlDB "Add stream/table" ボタンを廃止 - 以前はこれらのボタンを押すとモーダル UI が表示され、ユーザーが視覚的にストリームやテーブルを作成することができました。ストリームとテーブルの作成には単純に SQL クエリーを使用した方が望ましいという理由でこの UI は廃止されています。

既知の問題

  • UI 全体の中で RBAC で保護された一部のページは、その再ロード時に、ページが適切に読み込まれるまでの短い間、404 エラーが発生します。これはアクセス許可の応答における遅延が原因であり、今後のリリースで修正される予定です。
  • コネクターの構成を UI から行う際、トピック名とトピックの正規表現を指定すると、散発的にエラーメッセージが表示されることがあります。回避策として、構成の変更を再送信することをお勧めします。この問題は今後のパッチリリースで修正される予定です。

Confluent Community / Apache Kafka

Confluent Platform 6.1.5 features Apache Kafka® 2.7. For a full list of the 23 KIPs, features, and bug fixes, take a look at the official Apache Kafka release notes, the release overview podcast, and the release blog post. Or watch Confluent’s very own Tim Berglund give an overview of Apache Kafka 2.7.

Clients

Confluent Platform ||release| には、最新バージョンの Go(confluent-kafka-go)、Python(confluent-kafka-python)、.NET(confluent-kafka-dotnet)クライアントが含まれており、これらのクライアントはいずれも、やはりこのリリースに含まれる librdkafka v1.6 をベースとしています。これらのクライアントの最新情報について詳しくは、librdkafka v1.6 のリリースノートを参照してください。

Admin REST APIs

オペレーターは、api.endpoints.blocklist を使用して、REST Proxy インターフェイスで公開する API を簡単に選択できるようになりました。以下に例を示します。

api.endpoints.blocklist= api.v2.partitions.list
Copy

クラスター管理

Confluent Operator

Confluent Operator 1.7.0 では、Confluent Platform バージョン 6.0.x および 6.1.x を Kubernetes にデプロイして管理することができます。

Confluent Operator 1.6.2 の内容を超える注目すべき機能、機能強化、修正は加えられていません。

Ansible Playbooks for Confluent Platform

新機能

  • Ansible Playbooks for Confluent Platform を使用して、Confluent Replicator の構成とデプロイを行うことができます。Replicator を使用すると、1 つの Kafka クラスターから別のクラスターにトピックを信頼性の高い方法で簡単にレプリケートできます。メッセージのコピーに加えて、このコネクターは必要に応じてトピックを作成し、送信元クラスターにトピック構成を保持します。
  • Ansible Playbooks for Confluent Platform を使用すると、Confluent Platform のクラスターレジストリ内のクラスターに名前を付けることができます。cluster registry は、Metadata Service (MDS) における Kafka クラスターの登録と識別を一元的に行う手段を備えているため、RBAC ロールバインディングプロセスが単純化され、監査ログの一元化が可能となります。
  • Ansible Playbooks for Confluent Platform を使用して最新のインベントリファイルでプロビジョニングプレイブックを再実行することにより、Confluent Platform コンポーネントの構成をアップデートできます。ローリングデプロイ戦略と並列デプロイ戦略がサポートされます。

注目すべき機能強化

  • Audit Logs for RBAC を有効にすると、監査ログの送信先として異なる送信先 Kafka クラスターを
    指定できるようになりました。
  • Jolokia エージェントで基本認証を構成できるようになりました。
  • Kafka の正常性の確認は、今後 Jolokia エンドポイントには依存しません。Jolokia を有効にする必要はありません。

注目すべき修正

  • zookeeper_ssl_enabled: true の場合、ZooKeeper サーバーのセキュアな(TLS)ポートのみが有効になります。セキュアなポート以外は有効になりません。

  • プロセスに渡される 2 つの log4j 構成はなくなりました。

  • -vvv Ansible オプションでデバッグが有効になっている場合、パスワード、証明書、キーなどの機密情報が出力されます。Ansible は、-vvv で機密情報を抑制する方法を提供していません。このため、本稼働環境でデバッグモードを使用することはお勧めしません。

    代わりに、問題をトラブルシューティングする場合は、プレイブックを --diff オプションで使用します。このリリースでは、Ansible Playbooks for Confluent Platform の --diff オプションでの出力では、パスワード、証明書、キーなどの機密情報が出力されなくなりました。

    詳細については、「Ansible Playbooks for Confluent Platform のトラブルシューティング」を参照してください。

既知の問題

RBAC 対応 Kafka クラスターとの間で読み取りや書き込みを行うように Replicator を構成することができません。この問題は、将来のアップデートリリースで解決される予定です。

Kafka ブローカー

Confluent Server

既知の問題

多数のパーティション(100,000 を超えるなど)をご利用の場合、5.5.x から 6.1.x へのアップグレード後、クラスターが不安定になる場合があります。そのため、2.7 のブローカー間プロトコル(IBP)の使用はお勧めしません。この既知の問題についてご質問がある場合は、サポートにお問い合わせください。

Kafka Streams

ksqlDB

  • Java クライアントがストリーミング INSERT をサポート - Java クライアントから、1 回の接続で複数の INSERT を実行(ストリーミング INSERT)できるようになりました。
  • Java クライアントが管理操作をサポート - 従来 CLI または HTTP インターフェイスで提供されていた ksqlDB 管理操作を Java クライアントから実行できるようになりました。
  • Java クライアントが DDL/DML ステートメントをサポート - Java クライアントから CREATE STREAM、CREATE TABLE、CREATE STREAM AS SELECT、CREATE TABLE AS SELECT を実行できるようになりました。
  • CREATE OR REPLACE のサポート - 設定されている永続クエリを CREATE OR REPLACE .. で変更できるようになりました。永続クエリ変更後の新しいバージョンの読み取りは、前バージョンが終了したオフセットから開始されます。
  • ALTER STREAM | TABLE … ADD COLUMN のサポート - ALTER を使用してストリームおよびテーブルを変更できるようになりました。
  • DROP CONNECTOR での [IF EXISTS] のサポート - 省略可能な IF EXISTS 句が DROP CONNECTOR に追加されています。IF EXISTS を使用したときターゲットコネクターが存在していなくても、今後はステートメントからエラーがスローされることはありません。
  • DROP TYPE [IF EXISTS] のサポート - 省略可能な IF EXISTS 句が DROP TYPE に追加されています。IF EXISTS を使用したときターゲットの型が存在していなくても、今後はステートメントからエラーがスローされることはありません。
  • メタストアリカバリセマンティクスの堅牢性の向上 - 既存のメタストアとバックアップメタストアとの間で不整合が検出された場合はメタストアを復元できないように構成できます。
  • より多くのエラーを処理ログに記録 - キャッチされない Kafka Streams 例外が ksqlDB の処理ログに記録されるようになりました。
  • latest/earliest_by_offset で最新または最古の値を n 個格納可能に - latest_by_offset と earliest_by_offset から 1 つの値だけでなく、必要に応じて n 個の値を返すことができるようになりました。
  • ksqlDB コマンドトピックを復元するユーティリティを追加 - コマンドトピックの復元を合理化、自動化するためのユーティリティが追加されています。
  • CLI が非対話形式のコマンド実行をサポート - ksqlDB CLI で新たに非対話形式のコマンド実行がサポートされます。コマンドとともに -e/--execute フラグを CLI に渡すことにより、非対話型の CLI セッションで指定コマンドを実行できるようになりました。
  • JSON キー形式のサポート - 行キーで JSON シリアル化形式を使用できるようになりました。WITH (key_format=’JSON’, …) または WITH (format=’JSON’, …) で指定できます。
  • DELIMITED キー形式のサポート - 行キーで DELIMITED シリアル化形式を使用できるようになりました。WITH (key_format=’DELIMITED’, …) または WITH (format=’DELIMITED’, …) で指定できます。
  • Add stream/table ボタンを廃止 - 以前はこれらのボタンを押すとモーダル UI が表示され、ユーザーが視覚的にストリームやテーブルを作成することができました。ストリームとテーブルの作成には単純に SQL クエリーを使用した方が望ましいという理由でこの UI は廃止されています。

破壊的変更

ksqlDB サーバーで(サーバーのプロパティ ssl.client.auth=true を使用して)相互認証を有効にすると、ブラウザーのクライアント証明書選択ダイアログが、Confluent Control Center で自動的にはトリガーされなくなります。証明書選択ダイアログをトリガーするには、ksqlDB サーバー上のエンドポイント(https://my-ksqldb-server01.my-organization.net/info など)に手動で移動する必要があります。

ダウンロード方法

Confluent Platform は https://www.confluent.io/download/ からダウンロードできます。詳細については、「オンプレミスのデプロイ」セクションを参照してください。

重要

Confluent Platform パッケージにはデフォルトで Confluent Server が含まれており、server.properties ファイルに confluent.license キーが必要です。Confluent Platform 5.4.x 以降では、Confluent Server ブローカーは起動時にライセンスをチェックします。以下のように confluent.license プロパティを使用して、各ブローカーのプロパティファイルにライセンスの文字列を指定する必要があります。

confluent.license=LICENCE_STRING_HERE_NO_QUOTES
Copy

Kafka ブローカーを使用する場合は、confluent-community パッケージをダウンロードしてください。Kafka ブローカーは、すべての Debian、または RHEL および CentOS パッケージでデフォルトです。

Confluent Server への移行の詳細については、「Confluent Server への移行」を参照してください。

Confluent Platform を新しいバージョンにアップグレードするには、ドキュメント「Confluent Platform のアップグレード」を参照してください。

サポートされているバージョンおよび相互運用性

Confluent Platform およびそのコンポーネントのサポートされているバージョンと相互運用性については、「サポートされているバージョンおよび相互運用性」を参照してください。

お問い合わせ

本リリースに関してご不明な点がある場合は、コミュニティのメーリングリスト または コミュニティ Slack からご連絡ください。Confluent 製品を既にご利用の場合は直接サポートにお問い合わせください。