In the product compatibility support matrix page it says that Elasticsearch 8.10.X is compatible with Elastic Agent 7.17.x - 8.10.X, so I would expect the there is no incompatibility issues between patch versions.
For example, Elastic Agent 8.10.3 should be compatible with the stack on version 8.10.2.
However, if I go to fleet page to try to upgrade an agent, the upgrade option is grayed out.
The Upgrade agent option is grayed out if an upgrade is unavailable or the Kibana version is lower than the agent version.
So, in this case I cannot upgrade an agent to version 8.10.3 if I'm using Kibana 8.10.2, and to use Kibana 8.10.3 I would need to upgrade the entire stack to 8.10.3, the documentation about Kibana compatilibity states that running different patch versions is generally supported, but it does not make clear if this applies to Kibana patch being higher than Elasticsearch patch version.
Is there any way to force the upgrade of a single agent without the need to upgrade the entire stack?
Upgrade the entire stack to be able to upgrade a single agent to fix a bug is really not the best approach and it is not what is described in the support matrix page.
Maybe an elastic-agent developer can chime in,
but reading that code, I can't understand if you have an
elastic-agent at version: MAJOR.MINOR.PATCH,
if the Kibana logic kicks out the ability to update to an elastic agent with a PATCH version which is higher than the PATCH version of the currently running Kibana.
I already opened an feature request issue on Github.
If the support matrix says that Elastic Agent 8.10.X is compatible with Elasticsearch 8.10.X, then the user should be able to upgrade it through Kibana, the version should be pinned on the minor version, not the patch version.
But if the Elastic Agent version needs to be pinned to the patch version of Kibana, then the Support Matrix should reflect this and says that patch versions are not fully compatible.
If you manually (outside of Kibana UI)
try to run elastic-agent 8.10.3 and try to connect it to Kibana Fleet 8.10.2 does that work, or does that get kicked out at the API level.
If you manually upgrade the agents usind ./elastic-agent upgrade version it will work, there is no issue.
I'm on 8.10.2 (Elasticsearch, Kibana, Fleet Server) but have agents on 8.10.4, both agents that I upgraded manually and new agents on version 8.10.4 enrolled without any issue.
But you can't upgrade through the Fleet UI because the version is pinned on Kibana version.
Thanks for the feedback. I'm not sure if you
have an Enterprise contract with Elastic, but I do,
so I filed a ticket at https://support.elastic.co, and referred to your GitHub issue.
I also have interest in having this problem fixed.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.