docs(connect): clarifies image/version config for kafka connect#11779
docs(connect): clarifies image/version config for kafka connect#11779PaulRMellor merged 3 commits intostrimzi:mainfrom
Conversation
Signed-off-by: prmellor <pmellor@redhat.com>
scholzj
left a comment
There was a problem hiding this comment.
I left some nits. I also wonder, if we have the upgrades covered here, because they are pretty tricky with the custom images. Beause you basically need to update the imahge field at the same point when the upgrade is happpening which is not possible. So the user likely needs to:
- Pause the reconciliation
- Upgrade the operator
- Upgrade the
.spec.image - Unpause the reconciliation
| |=== | ||
| | `image` | `version` | Result | ||
|
|
||
| | ✗ | ✗ | Uses Cluster Operator's default image and corresponding Kafka version | ||
| | ✓ | ✗ | Uses specified image and default Kafka version | ||
| | ✗ | ✓ | Uses image from environment variable for specified Kafka version | ||
| | ✓ | ✓ | Uses specified image and assumes specified Kafka version matches | ||
| |=== |
There was a problem hiding this comment.
This table is fine, but I'm not sure it captures the main issue which is What is the right configuration. The version field specifies two things:
- What image will be used if not set in the custom resoruce directly
- What is the expected Kafka version, which defines how the operator will manage the operand
As a result, some of these settings are possibly both valid and invalid.
Maybe we need to add some second table showing some valid and invalid configurations as examples? E.g.
- Imagine operator which supports Kafka 4.0.0, 4.0.1 and 4.1.0
- The configuration without custom image and verison is valid
- The configuration with custom image based on Kafka 4.0.0 with version set to 4.0.0 is valid
- The configuration with custom image based on Kafka 4.0.0 without version set is invalid because
versiondefaults to 4.1.0 in this case - etc.
There was a problem hiding this comment.
Thanks. I've added a table with some examples where the config mismatches produce invalid results.
| This approach is useful for individual cluster configurations. | ||
| + | ||
| If set, this property overrides the `STRIMZI_KAFKA_CONNECT_IMAGES` environment variable in the Cluster Operator. | ||
| If set, this property overrides the values for the `STRIMZI_KAFKA_CONNECT_IMAGES` environment variable in the Cluster Operator. |
There was a problem hiding this comment.
IF we want to include this, we should have a warning that this would possibly impact other Connect clusters as well. In general, I do not expect STRIMZI_KAFKA_CONNECT_IMAGES to be used for manually build custom images as it does not make much sense
There was a problem hiding this comment.
Okay. I've changed so the spec.image is shown in the step. The intro mentions this but also mentions what happens if the env var is updated instead.
Signed-off-by: prmellor <pmellor@redhat.com>
Great feedback, thanks. |
scholzj
left a comment
There was a problem hiding this comment.
One more comment. But LGTM otherwise. Thanks for incorporating the changes.
Signed-off-by: prmellor <pmellor@redhat.com>
…mzi#11779) Signed-off-by: prmellor <pmellor@redhat.com>
Documentation
Updates docs on using custom image for Kafka Connect to explain that a Kafka version should be specified.
Also refreshes content on image config for Kafka components to make it easier to scan
Checklist
Please go through this checklist and make sure all applicable tasks have been done