ui: CephInstallWizard: make first mon node static

Removes the possibility to select the node on which to create the first
monitor in the configuration / initialization step and always sets it to
the current node.

This prevents that a user might select another node on which the Ceph
packages have not yet been installed. If a user did that, they would get
an error, but the Ceph config file would have been written. If the user
then does not select a valid node to create the first mon, but aborts
the wizard, they are greeted with a rados_connect error because the
config file exists, but it does not contain any mon infos that are
needed to connect to the Ceph cluster.

Creating a mon manually will remedy such a situation, but especially for
new users, this behavior is not ideal and confusing.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
This commit is contained in:
Aaron Lauterer 2022-08-10 17:10:19 +02:00 committed by Thomas Lamprecht
parent 25eaf729d7
commit f25c38553e

View File

@ -401,11 +401,11 @@ Ext.define('PVE.ceph.CephInstallWizard', {
value: gettext('First Ceph monitor') + ':',
},
{
xtype: 'pveNodeSelector',
xtype: 'displayfield',
fieldLabel: gettext('Monitor node'),
name: 'mon-node',
selectCurNode: true,
allowBlank: false,
cbind: {
value: '{nodename}',
},
},
{
xtype: 'displayfield',
@ -461,8 +461,6 @@ Ext.define('PVE.ceph.CephInstallWizard', {
var wizard = me.up('window');
var kv = wizard.getValues();
delete kv.delete;
var monNode = kv['mon-node'];
delete kv['mon-node'];
var nodename = me.nodename;
delete kv.nodename;
Proxmox.Utils.API2Request({
@ -472,7 +470,7 @@ Ext.define('PVE.ceph.CephInstallWizard', {
params: kv,
success: function() {
Proxmox.Utils.API2Request({
url: `/nodes/${monNode}/ceph/mon/${monNode}`,
url: `/nodes/${nodename}/ceph/mon/${nodename}`,
waitMsgTarget: wizard,
method: 'POST',
success: function() {