8.7. 最適化プロポーザルの生成
KafkaRebalance リソースを作成または更新すると、Cruise Control は 設定済みの最適化ゴールを基にして、Kafka クラスターの 最適化プロポーザル を生成します。
最適化プロポーザルの情報を分析して、プロポーザルを承認するかどうかを決定します。
前提条件
- AMQ Streams クラスターに Cruise Control がデプロイされている 必要があります。
- 最適化ゴール が設定され、任意で ブローカーリソースに容量制限 が設定されている必要があります。
手順
KafkaRebalanceリソースを作成します。Kafkaリソースに定義された デフォルトの最適化ゴール を使用するには、specプロパティーを空のままにします。apiVersion: kafka.strimzi.io/v1alpha1 kind: KafkaRebalance metadata: name: my-rebalance labels: strimzi.io/cluster: my-cluster spec: {}デフォルトのゴールを使用する代わりに ユーザー定義の最適化ゴール を設定するには、
goalsプロパティーを追加し、1 つ以上のゴールを入力します。以下の例では、ラックアウェアネス (Rack Awareness) およびレプリカの容量はユーザー定義の最適化ゴールとして設定されています。
apiVersion: kafka.strimzi.io/v1alpha1 kind: KafkaRebalance metadata: name: my-rebalance labels: strimzi.io/cluster: my-cluster spec: goals: - RackAwareGoal - ReplicaCapacityGoal設定されたハードゴールを無視するには、
skipHardGoalCheck: trueプロパティを追加します。apiVersion: kafka.strimzi.io/v1alpha1 kind: KafkaRebalance metadata: name: my-rebalance labels: strimzi.io/cluster: my-cluster spec: goals: - RackAwareGoal - ReplicaCapacityGoal skipHardGoalCheck: true
リソースを作成または更新します。
oc apply -f your-fileCluster Operator は Cruise Control から最適化プロポーザルを要求します。Kafka クラスターのサイズによっては処理に数分かかることがあります。
KafkaRebalanceリソースの状態をチェックします。oc describe kafkarebalance rebalance-cr-nameCruise Control は以下の 2 つの状態の 1 つを返します。
-
PendingProposal:リバランス operator は Cruise Control API をポーリングして、最適化プロポーザルの準備が整っているかどうかを確認します。 -
ProposalReady:最適化プロポーザルを確認し、希望する場合は承認することができます。最適化プロポーザルはKafkaRebalanceカスタムリソースのStatus.Optimization Resultプロパティーに含まれます。
-
最適化プロポーザルを確認します。
oc describe kafkarebalance rebalance-cr-name以下はプロポーザルの例になります。
Status: Conditions: Last Transition Time: 2020-05-19T13:50:12.533Z Status: ProposalReady Type: State Observed Generation: 1 Optimization Result: Data To Move MB: 0 Excluded Brokers For Leadership: Excluded Brokers For Replica Move: Excluded Topics: Intra Broker Data To Move MB: 0 Monitored Partitions Percentage: 100 Num Intra Broker Replica Movements: 0 Num Leader Movements: 0 Num Replica Movements: 26 On Demand Balancedness Score After: 81.8666802863978 On Demand Balancedness Score Before: 78.01176356230222 Recent Windows: 1 Session Id: 05539377-ca7b-45ef-b359-e13564f1458cOptimization Resultセクションのプロパティーには、保留クラスターリバランス操作の詳細が表示されます。各プロパティーの説明は、「最適化プロポーザルの内容」を参照してください。
次のステップ
その他のリソース