Merge pull request #10820 from JimMoen/fix-license-checker-update
fix: reboot `emqx_license` app for join cluster
This commit is contained in:
commit
e287cf9a09
|
@ -24,6 +24,7 @@
|
||||||
-export([stop_port_apps/0]).
|
-export([stop_port_apps/0]).
|
||||||
|
|
||||||
-dialyzer({no_match, [basic_reboot_apps/0]}).
|
-dialyzer({no_match, [basic_reboot_apps/0]}).
|
||||||
|
-dialyzer({no_match, [basic_reboot_apps_edition/1]}).
|
||||||
|
|
||||||
-ifdef(TEST).
|
-ifdef(TEST).
|
||||||
-export([sorted_reboot_apps/1, reboot_apps/0]).
|
-export([sorted_reboot_apps/1, reboot_apps/0]).
|
||||||
|
@ -126,39 +127,40 @@ reboot_apps() ->
|
||||||
BaseRebootApps ++ ConfigApps.
|
BaseRebootApps ++ ConfigApps.
|
||||||
|
|
||||||
basic_reboot_apps() ->
|
basic_reboot_apps() ->
|
||||||
CE =
|
?BASIC_REBOOT_APPS ++
|
||||||
?BASIC_REBOOT_APPS ++
|
[
|
||||||
[
|
emqx_prometheus,
|
||||||
emqx_prometheus,
|
emqx_modules,
|
||||||
emqx_modules,
|
emqx_dashboard,
|
||||||
emqx_dashboard,
|
emqx_connector,
|
||||||
emqx_connector,
|
emqx_gateway,
|
||||||
emqx_gateway,
|
emqx_resource,
|
||||||
emqx_resource,
|
emqx_rule_engine,
|
||||||
emqx_rule_engine,
|
emqx_bridge,
|
||||||
emqx_bridge,
|
emqx_plugin_libs,
|
||||||
emqx_plugin_libs,
|
emqx_management,
|
||||||
emqx_management,
|
emqx_retainer,
|
||||||
emqx_retainer,
|
emqx_exhook,
|
||||||
emqx_exhook,
|
emqx_authn,
|
||||||
emqx_authn,
|
emqx_authz,
|
||||||
emqx_authz,
|
emqx_slow_subs,
|
||||||
emqx_slow_subs,
|
emqx_auto_subscribe,
|
||||||
emqx_auto_subscribe,
|
emqx_plugins
|
||||||
emqx_plugins
|
] ++ basic_reboot_apps_edition(emqx_release:edition()).
|
||||||
],
|
|
||||||
case emqx_release:edition() of
|
basic_reboot_apps_edition(ce) ->
|
||||||
ce ->
|
[emqx_telemetry];
|
||||||
CE ++ [emqx_telemetry];
|
basic_reboot_apps_edition(ee) ->
|
||||||
ee ->
|
[
|
||||||
CE ++
|
emqx_license,
|
||||||
[
|
emqx_s3,
|
||||||
emqx_s3,
|
emqx_ft,
|
||||||
emqx_ft,
|
emqx_eviction_agent,
|
||||||
emqx_eviction_agent,
|
emqx_node_rebalance
|
||||||
emqx_node_rebalance
|
];
|
||||||
]
|
%% unexcepted edition, should not happen
|
||||||
end.
|
basic_reboot_apps_edition(_) ->
|
||||||
|
[].
|
||||||
|
|
||||||
sorted_reboot_apps() ->
|
sorted_reboot_apps() ->
|
||||||
Apps = [{App, app_deps(App)} || App <- reboot_apps()],
|
Apps = [{App, app_deps(App)} || App <- reboot_apps()],
|
||||||
|
|
|
@ -0,0 +1,6 @@
|
||||||
|
In case the cluster updated license before the new node join in. The new node will not apply the updated license.
|
||||||
|
After this change, the new joined node will use the cluster's license key.
|
||||||
|
|
||||||
|
Sometimes the new node must start with a outdated license.
|
||||||
|
e.g. use emqx-operator deployed and needed to scale up after license expired.
|
||||||
|
At the time the cluster's license key already updated by API/CLI, but the new node won't use it.
|
Loading…
Reference in New Issue