-
Notifications
You must be signed in to change notification settings - Fork 2.9k
Alluxio compatibility definition(draft)
maobaolong edited this page Nov 11, 2022
·
2 revisions
We provide compatibility with old version alluxio service and client within a big version(Alluxio-BIG_VERSION-SMALL_VERSION-TINY_VERSION), so that we can support user rolling upgrade
clients, workers and masters through multiply thread
in the same period.
Concretely, we should keep the old behavior work with the original configuration under the following situation.
- Rolling upgrade Clients: NewClient1, OldClient2, NewMasters, NewWorker1, NewWorker2.
- Rolling upgrade Workers: NewClient1, OldClient2, NewWorker1, OldWorker2, NewMasters.
-
Rolling upgrade Masters: NewClient1, OldClient2, NewWorker1, OldWorker2, NewMaster1, OldMaster2, OldMaster3
- First, we will transfer leadership from Master1 to Other Masters, let's say Master2, then upgrade master1 to NewMaster1.
- Second, we transfer leadership from Master2 to NewMaster1, if NewMaster1 didn't run as good as expected, just transfer leadership back to the OldMaster2 at once.
- Finally, after we observe NewMaster1 for a certain time and we can brave enough to upgrade all masters to New Version.
Same with job service.