Is it important to upgrade kafka version from 2.8 to 3.1 and what are the advantages? - apache-kafka

What kind of benefits do you think upgrading the kafka version will provide and is it important? What are the advantages of switching from 2.8 to 3.1?

The Kafka release notes cover all added features and fixes. For example, as of Kafka 3.3.1 release, Zookeeper is no longer required.
Kafka 3.0 removed support for Scala 2.11, and maybe Java 7/8, and enables transactions by default, I believe.
Make sure that you read the upgrade notes for protocol changes that will make it impossible to downgrade in the event of errors.

Related

Kafka - which kafka version I should start with

I wanted to get started with kafka ( i had little experience with kafka 0.10 , and now, it seems there are "major" changes happened)
I am going through release changes of kafk. However, I am stuck with which version I should choose in terms of stability , community support . I am little reluctant to use the latest version 2.5
Please suggest me a version which didn't get a lot of "major" changes . I heard kafka 2.1 is good start as it had some breaking changes from previous version .
If you're making the leap from 0.10, I don't see any point in stopping part-way with 2.1.
In terms of releases, the latest stable release is 2.5.0. If you prefer, 2.4 was released in December 2019 and has had a dot release since (2.4.1).
Check out this excellent talk which addresses why you should upgrade.
I didn't find a lot of material about 2.5
The majority of material is version agnostic (unless it's based on super-old versions, like 0.10 etc). If you want to see breaking changes specifically, look at the download page which notes major changes and links to the release notes for each version which lists every single change.

Is apache kafka Mirror maker officially released, I would like to use the stable version in our prod environment for disaster recovery

I would like to use Mirror Maker 2 for our data pipeline and take advantage of its features in prod but I don't find anything related to whether its officially release or still beta version.
MirrorMaker 2 was released as part of Apache Kafka 2.4.0. You can verify this in the release notes, and see the specific JIRA here.

Is kafka 2.0.0 a stable version that can be used for production?

I have to upgrade Kafka from 0.10.0 to 2.0.0 for a production system. Is it a stable release? Also, is there a concept of GA, RC, and M2 for Kafka releases?
Yes Kafka 2.0.0 is a stable release and it can be used in production.
Apache Kafka also uses Release Candidates before releasing new stable versions. For example 2.0.0 went through 3 RCs before reaching GA. (RC0, RC1, RC2).
Apache Kafka however does not use Milestone Releases. A Timed-based release plan was voted by the community and is used to produce regular GA (production ready) releases.

Confluent schema-registry 2.0.1 version with SSL configuration

I need to use confluent schema-registry to connect to 0.9 kafka. But for schema-registry 2.0.1 version I didn't see SSL configuration available. Is there a way to enable ssl for schema-registry and kafka-rest to talk to 0.9 kafka?
That functionality was only added as of the 3.0 release line. If you want support for 0.9/2.0 releases, you could try either a) taking a 3.0 release and reducing the Kafka dependency to 0.9 versions (this might work, but I think there were other unrelated changes that might require additional changes), or b) backport the SSL changes to a 2.0 version (although I can't be sure off the top of my head whether this version supports everything required to enable security support).
Note that if you follow the upgrade docs, upgrading brokers to enable use of newer client versions is generally relatively painless these days.

Upgrading Mercurial 1.5 to 2.2

I am upgrading my server from an old version of Mercurial, 1.5 to the newest version. I am wondering if the 2.2 build of Mercurial is stable for use by multiple users at a time. Also are there any gotchas when upgrading like my custom hooks not working, or a buildslave object not working? I have not done a major upgrade on a source control server before so help would be appreciated.
Mercurial is famouse for being very strict regarding compatibility. Have you checked upgrade notes? It list all breaking changes between version. Biggest change for me is introduction of hgweb in 1.6.
Biggest exception from compatibility rules are hooks. Mercurial doesn't guarantee anything so only way is to try.
Also consider making update in two stages. For example first to 1.9 and than to 2.2.