Fix HA cluster creation
pull/375/head
Aidaho 2023-12-27 16:35:59 +03:00
parent dbcb5558dc
commit 63a7d4c09a
4 changed files with 16 additions and 13 deletions

View File

@ -42,14 +42,14 @@
</div>
{% else %}
{% if role <= 2 %}
<div class="add-button add-button-status-page" title="{{lang.phrases.create_ha}}" onclick="createHaClusterStep1();">+ {{lang.ha_page.create_ha}}</div>
<div class="add-button add-button-big" title="{{lang.phrases.create_ha}}" onclick="createHaClusterStep1();">+ {{lang.ha_page.create_ha}}</div>
{% endif %}
<div class="up-pannel">
{% for cluster in clusters %}
<div id="cluster-{{cluster.id}}" class="div-server-hapwi animated-background"></div>
{% endfor %}
</div>
<div id="create-status-page-step-1" style="display: none;">
<div id="create-ha-cluster-step-1" style="display: none;">
<table class="overview" id="create-ha-cluster-step-1-overview"
title="{{lang.words.create|title()}} {{lang.ha_page.ha}} {{lang.words.cluster}}"
data-edit="{{lang.words.edit|title()}} {{lang.ha_page.ha}} {{lang.words.cluster}}">
@ -107,7 +107,7 @@
</table>
<div class="checks"></div>
</div>
<div id="create-status-page-step-2" style="display: none;">
<div id="create-ha-cluster-step-2" style="display: none;">
<table class="overview" id="create-ha-cluster-step-2-overview"
title="{{lang.words.create|title()}} {{lang.ha_page.ha}} {{lang.words.cluster}}"
data-edit="{{lang.words.edit|title()}} {{lang.ha_page.ha}} {{lang.words.cluster}}">

View File

@ -25,7 +25,7 @@
<h4>{{lang.smon_page.desc.run_smon}} <a href="/app/users/services" title="Roxy-WI services" target="_blank">{{lang.words.here}}</a> {{lang.smon_page.desc.before_use}}</h4>
</div>
{% else %}
<div class="add-button add-button-status-page" title="SMOM: {{lang.phrases.create_page_status}} - Roxy-WI" onclick="createStatusPageStep1();">+ {{lang.phrases.create_page_status}}</div>
<div class="add-button add-button-big" title="SMOM: {{lang.phrases.create_page_status}} - Roxy-WI" onclick="createStatusPageStep1();">+ {{lang.phrases.create_page_status}}</div>
<div id="pages">
{% include 'ajax/smon/status_pages.html' %}
</div>

View File

@ -94,7 +94,7 @@ h4 {
float: left;
margin-top: 3px;
}
.add-button-status-page {
.add-button-big {
font-size: 15px;
float: unset;
margin: var(--indent);

View File

@ -344,6 +344,7 @@ function saveCluster(jsonData, cluster_id=0, edited=0, reconfigure=0) {
$.ajax({
url: "/app/ha/cluster",
type: req_method,
async: false,
data: {
jsonData: JSON.stringify(jsonData),
},
@ -352,7 +353,8 @@ function saveCluster(jsonData, cluster_id=0, edited=0, reconfigure=0) {
toastr.error(data);
} else {
if (!edited) {
getHaCluster(data, true);
cluster_id = data;
getHaCluster(cluster_id, true);
} else {
getHaCluster(cluster_id);
$("#cluster-" + cluster_id).addClass("update", 1000);
@ -364,10 +366,10 @@ function saveCluster(jsonData, cluster_id=0, edited=0, reconfigure=0) {
}
});
if (reconfigure) {
Reconfigure(jsonData);
Reconfigure(jsonData, cluster_id);
}
}
function Reconfigure(jsonData) {
function Reconfigure(jsonData, cluster_id) {
servers = JSON.parse(JSON.stringify(jsonData));
$("#wait-mess").html(wait_mess);
$("#wait-mess").show();
@ -397,17 +399,18 @@ function Reconfigure(jsonData) {
server_creating.dialog('open');
let li_id = 'creating-'
let progress_step = 100 / total_installation;
$.when(installServiceCluster(jsonData, 'keepalived', progress_step)).done(function () {
$.when(installServiceCluster(jsonData, 'keepalived', progress_step, cluster_id)).done(function () {
if (servers['services']['haproxy']['enabled']) {
installServiceCluster(jsonData, 'haproxy', progress_step);
installServiceCluster(jsonData, 'haproxy', progress_step, cluster_id);
}
if (servers['services']['nginx']['enabled']) {
installServiceCluster(jsonData, 'nginx', progress_step);
installServiceCluster(jsonData, 'nginx', progress_step, cluster_id);
}
});
}
function installServiceCluster(jsonData, service, progress_step) {
function installServiceCluster(jsonData, service, progress_step, cluster_id) {
servers = JSON.parse(JSON.stringify(jsonData));
servers['cluster_id'] = cluster_id;
var li_id = 'creating-' + service + '-';
var install_mess = $('#translate').attr('data-installing');
var timeout_mess = $('#translate').attr('data-roxywi_timeout');
@ -426,7 +429,7 @@ function installServiceCluster(jsonData, service, progress_step) {
},
},
data: {
jsonData: JSON.stringify(jsonData),
jsonData: JSON.stringify(servers),
},
success: function (data) {
try {