Skip to content

A way to remotely check system_version on nodes with "status" command #643

Closed
@vstax

Description

Right now, there seem to be no way to check LeoFS version that some node runs on. This is needed to ensure that every node was indeed updated and is running latest version - since during node-by-node upgrade on running system nothing prevents you to run different version on different nodes, it is possible to overlook upgrade of some node (missing a number, or maybe some node was offline during upgrade and so on) and forget to upgrade it.

Example, with LeoFS 1.3.2.1:

[root@leo-m0 1.3.2.1]# rpm -q leofs
leofs-1.3.2.1-1.x86_64
[root@leo-m0 1.3.2.1]# grep system_version leo_manager_0/etc/app.config
      {system_version,"1.3.2"},
[root@leo-m0 1.3.2.1]# ./leofs-adm status |grep 'version'
                    system version | 1.3.2

(note that this shows another problem: there is no way to differentiate between 1.3.2 and 1.3.2.1. I understand that it was a rushed bugfix release, still, it would be nice if release version was synchronized with system_version in repo. But this is another matter)

Gateway and storage nodes:

[root@leo-m0 1.3.2.1]# ./leofs-adm status gateway_0@192.168.3.52|grep 'version'
                       version | 1.3.1
                    vm version | 7.3.1.2
[root@leo-m0 1.3.2.1]# ./leofs-adm status storage_0@192.168.3.53|grep 'version'
                              version | 1.3.1
                           vm version | 7.3.1.2
[root@leo-g0 1.3.2.1]# grep system_version leo_gateway/etc/app.config
      {system_version,"1.3.2"},
[root@leo-s0 1.3.2.1]# grep system_version leo_storage/etc/app.config
      {system_version,"1.3.2"},

They are running the same 1.3.2.1, but show "version" as 1.3.1. As I understand, it's something internal and different from system_version parameter. I'm not sure if it's needed for something, but showing "system version" just like management nodes do in addition to just "version" (or maybe replacing it) is needed to check the real version of gateway/storage nodes.

(there is also "leofs-adm version" command which isn't that useful right now because it shows only management node version - which is available from "status" command anyway - and can't show version of remote nodes. Would be totally great if it could show version of all nodes directly instead, akin to "leofs-adm status" command which shows node list and information)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions