2.4. クラスターの作成
AMQ Streams がインストールされている状態で、Kafka クラスターを作成し、クラスター内でトピックを作成します。
クラスターの作成時に、AMQ Streams のインストール時にデプロイされた Cluster Operator によって新規の Kafka リソースが監視されます。
前提条件
- Kafka クラスターでは、Cluster Operator がデプロイされている必要があります。
- トピックでは、Kafka クラスターが稼働中である必要があります。
手順
ユーザー
developerとしてmy-kafka-projectnamespace にログインします。以下に例を示します。
oc login -u developer oc project my-kafka-project新規ユーザーが OpenShift Container Platform にログインした後に、そのユーザーのアカウントが作成されます。
3 つの Zookeeper ノードと 3 つのブローカーノードで、新しい
my-clusterKafka クラスターを作成します。-
ephemeralストレージの使用 routeを使用するよう設定された外部リスナーを使用して、OpenShift クラスター外部の Kafka クラスターを公開します。cat << EOF | oc create -f - apiVersion: kafka.strimzi.io/v1beta1 kind: Kafka metadata: name: my-cluster spec: kafka: replicas: 3 listeners: plain: {} tls: {} external: type: route storage: type: ephemeral zookeeper: replicas: 3 storage: type: ephemeral entityOperator: topicOperator: {} EOF
-
クラスターがデプロイされるまで待機します。
oc wait my-kafka-project/my-cluster --for=condition=Ready --timeout=300s -n kafkaクラスターの準備ができたら、パブリッシュするトピックを作成し、外部クライアントからサブスクライブします。
my-clusterKafka クラスターで 3 つのレプリカと 3 つのパーティションを使用して、以下のmy-topicカスタムリソース定義を作成します。cat << EOF | oc create -f - apiVersion: kafka.strimzi.io/v1beta1 kind: KafkaTopic metadata: name: my-topic labels: strimzi.io/cluster: "my-cluster" spec: partitions: 3 replicas: 3 EOF