I have two Centos 6 test servers: master and one slave.
The slave is added to Webmin Servers Index without problems (I checked the status).
I added both to the Cluster Software Packages module.
When I try to install the package "nc" from YUM on all hosts (ie, those two) the output is:
Failed to install on this server : An error occurred installing the specified updates Failed to install on 192.168.1.67 : An error occurred installing the specified updates
The first failure is seen immediately and then the output stalls forever. If we login via ssh on the other host and kill the rpc.cgi processes the second message appears.
On the master machine "this server" we see these messages on the logs:
"POST /cluster-software/install_pack.cgi?id=13429162297900 HTTP/1.1" 200 3143
On the slave machine we see messages such as this one:
"POST /rpc.cgi HTTP/1.0" 200 44
No package gets installed on either machine.
yum install nc
from the shell works correctly.
Comments
Submitted by ghomem on Sat, 07/21/2012 - 19:29 Comment #1
Note:
The normal Software Packages module works well. Package "nc" is installed without problems using the equivalent GUI location "Package from YUM".
Submitted by ghomem on Sat, 07/21/2012 - 19:39 Comment #2
It is not a clustering problem as the Cluster Users and Groups module works well.
Submitted by JamieCameron on Sat, 07/21/2012 - 22:37 Comment #3
Check that ports 10000 to 10010 are open on the remote system - most failures of cluster modules are due to RPC failures, and the RPC mechanism uses those ports.
Submitted by ghomem on Sun, 07/22/2012 - 05:30 Comment #4
The ports are available and iptables is not running.
Activating Fast RPC calls on the remote server we receive immediatly these messages:
Failed to install on this server : An error occurred installing the specified updates Failed to install on 192.168.1.67 : An error occurred installing the specified updates
Submitted by JamieCameron on Sun, 07/22/2012 - 23:53 Comment #5
Another thing to check - on the master system, go to Webmin -> Webmin Servers Index and click the (edit) link next to the problem slave. Change the "Make fast RPC calls?" setting to "Yes", click save, and re-try the cluster install.
Submitted by ghomem on Mon, 07/23/2012 - 15:03 Comment #6
Fast RPC calls are activated (see comment 4). With fast RPC calls it fails... faster :-)
Submitted by ghomem on Mon, 07/23/2012 - 15:03 Comment #7
I tried this on the Virtualmin demo
http://virtualmin-demo.virtualmin.com/
using only "this server" on the cluster and trying to install a package from YUM failed as well:
Installing cdrdao on all hosts ..
Failed to install on this server : An error occurred installing the specified updates
.. done
Submitted by JamieCameron on Mon, 07/23/2012 - 23:48 Comment #8
Ok, I see the issue now - thanks for your persistence on this bug. It will be fixed in the next Webmin release. Alternately, you can apply the patch from https://github.com/webmin/webmin/commit/044ae9913fc99ed1f45c099b4fe3ab3f...
Submitted by ghomem on Tue, 07/24/2012 - 10:25 Comment #9
Installation now works but the user feedback is wrong.
This is what I see when try to install package nmap on all hosts:
Installing nmap on all hosts ..
Failed to install on this server : Already installed Failed to install on 192.168.1.67 : Already installed
.. done
even if the packages is not installed and webmin DOES install it:
Jul 24 16:16:24 CentOS6 yum[2488]: Installed: 2:nmap-5.51-2.el6.i686
Submitted by JamieCameron on Tue, 07/24/2012 - 14:57 Comment #10
That's a separate bug that also effects non-cluster installs from YUM. It will also be fixed in the next Webmin release, although the fix is needed on the remote system..
https://github.com/webmin/webmin/commit/bb70afc414b0cccf5a74b83bec33b9d3...
Submitted by ghomem on Tue, 07/24/2012 - 17:37 Comment #11
Hi,
I tried again the normal (non-cluster) Software Packages module and it behaves as follows:
1- installs if the package is not installed 2- updates if the package is already installed
I don't see this problem happening on non-cluster...
Let me know if I can help with more testing.
Submitted by JamieCameron on Tue, 07/24/2012 - 18:24 Comment #12
Do you still see problems if you apply the github patch from #10 on the remote system?
Submitted by ghomem on Tue, 07/24/2012 - 21:34 Comment #13
Updated yum-lib.pl on both cluster master and remote.
Depending on the package I see 2 different errors:
Installing nmap on all hosts ..
Installed on this server. Failed to install on 192.168.1.67 : Already installed
.. done
Installing abrt-gui on all hosts ..
Installed on this server. Installed on this server. Cannot write to directory /etc/webmin/cluster-software/hosts/0/
Submitted by JamieCameron on Wed, 07/25/2012 - 13:20 Comment #14
I'm embarrassed to admit that installing multiple YUM packages at once still had a bunch of bugs :-(
However, they should be fixed by this commit : https://github.com/webmin/webmin/commit/bd4abb828943728d49496d12131bb306...
Submitted by ghomem on Thu, 07/26/2012 - 11:37 Comment #15
The result with the latest do_install.cgi and the previously mentioned yum-lib.pl is
Example:
Installing nmap on all hosts ..
Failed to install on Lurdes : Failed to install on Hugo :
Failed to install on Master Server :
.. done
Submitted by ghomem on Thu, 07/26/2012 - 11:42 Comment #16
And it doesn't accept multiple packages. If we insert
pkg1 pkg2
on the GUI it will try to install "pkg1pkg2".
Submitted by JamieCameron on Thu, 07/26/2012 - 13:50 Comment #17
Just to make sure we are on the same page, I have created a 1.592 development version of Webmin that includes all the fixes related to this issue - you can get it from http://download.webmin.com/devel/rpm/webmin-1.592-1.noarch.rpm
Try installing that on both your master and remote systems.
Submitted by ghomem on Thu, 07/26/2012 - 14:33 Comment #18
Jamie,
Here are the results:
Installing a new package -> OK Updating an existing packages -> OK Installing / updating a package across servers with different pkg versions -> OK
This is great!
Minors:
Since the install feature also updates packages when updates are available (and that's a good thing!) feedback messages should be:
Submitted by ghomem on Thu, 07/26/2012 - 14:38 Comment #19
I'm also encountering a feedback error from time to time:
Cannot write to directory /etc/webmin/cluster-software/hosts/1343329859
This happens after the feedback messages from some hosts are shown, and from this time one the next feedback messages won't be printed, although all the packages end up installed correctly.
Submitted by ghomem on Thu, 07/26/2012 - 14:43 Comment #20
Finally, Id like to report that the
Uninstall from [DROPBOX WITH OPTIONS]
GUI feature that we can use after searching for a package does not recognize the existence of server groups. Whereas the install feature presents all hosts, individual hosts and individual groups:
all hosts IP1 ... IPN Group1 members ... GroupN members
I hope I'm not being to painful with all this detailed reporting.
Let me know if/how I can help further.
I suspect I'll soon be testing this on Ubuntu based systems and will be glad to provide feedback as well.
Submitted by JamieCameron on Thu, 07/26/2012 - 15:36 Comment #21
I'll fix the issue in comment 19 in the next Webmin release.
For comment 18, it should already say "Already installed" .. at least, it does for me.
For comment 20, are you just looking for a way to un-install across multiple systems or systems in a group?
Submitted by ghomem on Thu, 07/26/2012 - 15:58 Comment #22
Hi Jamie,
It says "Already installed" but it would be better if it said
"the latest version of XXX is already installed"
which implicitly says that an update would be done in case it was already installed but not aligned with the latest available version.
Put in another way: "Fail to install on XXX: already installed" suggests that a package is not touched if it is already present on the system which is not true, if it is present but not the latest version. This is confusing: users will see webmin installing packages in some cases where the package is already installed and print and error in other cases.
My suggestions 1,2 and 3 would clear things up for users, thus making the GUI more ahem.. intuitive.
On comment 20: for logic consistency within this module the options for un-installing should be the same ones as for installing: all systems, single system, single group. Options "Install" and "Refresh package lists" support server groups created on Webmin Servers Index. Why doesn't the un-install option support them?
Note:
Even better than the drop down list present on "Install" , "Refresh package lists" and "Un-install" (although missing the groups in the latter) would be the list box that allows multiple choices, present on the Cluster Shell Commands module. This widget allows for an arbitrary combination of systems and groups, ie, maximum flexibility. But for now, making things consistent would be great already.
Hope I was clear enough in the explanations.
Submitted by JamieCameron on Thu, 07/26/2012 - 20:28 Comment #23
Make sense .. I will fix up the message when the package is already installed, and look into the other requests. Stay tuned.
Submitted by ghomem on Fri, 07/27/2012 - 04:55 Comment #24
Excellent.
Have a nice weekend.
Gustavo
Submitted by ghomem on Fri, 07/27/2012 - 07:41 Comment #25
Submitted by ghomem on Fri, 07/27/2012 - 07:46 Comment #26
Please also consider the extra option suggested in the attachment.
This would allow sysadmins to insert a superset of the critical packages (ex: apache, php, mysql, etc) across multiple non-uniform servers without the risk of installing unwanted software.
Example:
Server A: apache, php, mysql, openssh Server B: custom webserver, mysql, openssh Server C: apache, php, postgresql, perl, openssh
By using the "Perform only updates" checkbox the sysadmin can insert the following list:
php mysql openssh postgresql perl openssh
so that the Cluster Software Packages Module issues on every machine
yum update php mysql openssh postgresql perl openssh
Note that "yum update" is used, instead of "yum install".
Thus, for all servers each of the packages that are present is updated to the latest version, whereas the non-present packages are NOT installed.
Submitted by JamieCameron on Fri, 07/27/2012 - 14:17 Comment #27
Check out Cloudmin .. it can do a lot of those things already, as it is primarily focuses on updates rather than new package installs.
Submitted by ghomem on Sun, 07/29/2012 - 12:21 Comment #28
Will do. But we have customers that already know, use and like virtualmin. This feature would be nice to have on Virtualmin Pro and it is a good reason to spend money on.
Submitted by Issues on Sun, 08/12/2012 - 12:46 Comment #29
Automatically closed -- issue fixed for 2 weeks with no activity.
Submitted by ghomem on Fri, 10/26/2012 - 19:54 Comment #30
Was the message fixed, cf comment #23?
Submitted by JamieCameron on Sun, 10/28/2012 - 14:08 Comment #31
Yes, that was fixed in Webmin 1.600.