Hello, I came upon a problem the previous month that I figured it would be good to discuss here. I'm sorry I didn't post here earlier but time slipped me.
I have set up a glustered, hyperconverged oVirt environment for experimental use as a means to see its behaviour and get used to its management and performance before setting it up as a production environment for use in our organization. The environment is up and running since 2018 October. The three nodes are HP ProLiant DL380 G7 and have the following characteristics: Mem: 22GB CPU: 2x Hexa Core - Intel Xeon Hexa Core E56xx HDD: 5x 300GB Network: BCM5709C with dual-port Gigabit OS: Linux RedHat 7.5.1804(Core 3.10.0-862.3.2.el7.x86_64 x86_64) - Ovirt Node 4.2.3.1 As I was working on the environment, the engine stopped working. Not long before the time the HE stopped, I was in the web interface managing my VMs, when the browser froze and the HE was also not responding to ICMP requests. The first thing I did was to connect via ssh to all nodes and run the command #hosted-engine --vm-status which showed that the HE was down in nodes 1 and 2 and up on the 3rd node. After executing #virsh -r list the VM list that was shown contained two of the VMs I had previously created and were up; the HE was nowhere. I tried to restart the HE with the #hosted-engine --vm-start but it didn't work. I then put all nodes in maintenance mode with the command #hosted-engine --set-maintenance --mode=global (I guess I should have done that earlier) and re-run #hosted-engine --vm-start that had the same result as it previously did. After checking the mails the system sent to the root user, I saw there were several mails on the 3rd node (where the HE had been), informing of the HE's state. The messages were changing between EngineDown-EngineStart, EngineStart-EngineStarting, EngineStarting-EngineMaybeAway, EngineMaybeAway-EngineUnexpectedlyDown, EngineUnexpectedlyDown-EngineDown, EngineDown-EngineStart and so forth. I continued by searching the following logs in all nodes : /var/log/libvirt/qemu/HostedEngine.log /var/log/libvirt/qemu/win10.log /var/log/libvirt/qemu/DNStest.log /var/log/vdsm/vdsm.log /var/log/ovirt-hosted-engine-ha/agent.log After that I spotted and error that had started appearing almost a month ago in node #2: ERROR Internal server error Traceback (most recent call last): File "/usr/lib/python2.7/site-packages/yajsonrpc/__init__.py", line 606, in _handle_request res = method(**params) File "/usr/lib/python2.7/site-packages/vdsm/rpc/Bridge.py", line 197, in _dynamicMethod result = fn(*methodArgs) File "/usr/lib/python2.7/site-packages/vdsm/gluster/apiwrapper.py", line 85, in logicalVolumeList return self._gluster.logicalVolumeList() File "/usr/lib/python2.7/site-packages/vdsm/gluster/api.py", line 90, in wrapper rv = func(*args, **kwargs) File "/usr/lib/python2.7/site-packages/vdsm/gluster/api.py", line 808, in logicalVolumeList status = self.svdsmProxy.glusterLogicalVolumeList() File "/usr/lib/python2.7/site-packages/vdsm/common/supervdsm.py", line 55, in __call__ return callMethod() File "/usr/lib/python2.7/site-packages/vdsm/common/supervdsm.py", line 52, in <lambda> getattr(self._supervdsmProxy._svdsm, self._funcName)(*args, AttributeError: 'AutoProxy[instance]' object has no attribute 'glusterLogicalVolumeList' The outputs of the following commands were also checked as a way to see if there was a mandatory process missing/killed, a memory problem or even disk space shortage that led to the sudden death of a process #ps -A #top #free -h #df -hT Finally, after some time delving in the logs, the output of the #journalctl --dmesg showed the following message "Out of memory: Kill process 5422 (qemu-kvm) score 514 or sacrifice child. Killed process 5422 (qemu-kvm) total-vm:17526548kB, anon-rss:9310396kB, file-rss:2336kB, shmem-rss:12kB" which after that the ovirtmgmt started not responding. I tried to restart the vhostd by executing #/etc/rc.d/init.d/vhostmd start but it didn't work. Finally, I decided to run the HE restart command on the other nodes as well (I'd figured that since the HE was last running on the node #3, that's where I should try to restart it). So, I run #hosted-engine --vm-start and the output was "Command VM.getStats with args {'vmID':'...<το ID της HE>....'} failed: (code=1,message=Virtual machine does not exist: {'vmID':'...<το ID της HE>....'})" And then I run the command again and the output was "VM exists and its status is Powering Up." After that I executed #virsh -r list and the output was the following: Id Name State ---------------------------------------------------- 2 HostedEngine running After the HE's restart two mails came that stated: ReinitializeFSMEngineStarting and EngineStarting-EngineUp After that and after checking that we had access to the web interface again, we executed hosted-engine --set-maintenance --mode=none to get out of the maintenance mode. The thing is, I still am not 1000% sure what the problem was that led to the shutdown of the hosted engine and I think that maybe some of the steps I took were not needed. I believe it was because the process qemu-kvm was killed after there was not enough memory for it but is this the real cause? I wasn't doing anything unusual before the shutdown to believe it was because of the new VM that was still in shutdown mode or anything of the sort. Also, I believe it may be because of memory shortage because I hadn't executed the #sync ; echo 3 > /proc/sys/vm/drop_caches command for a couple of weeks. What are your thoughts on this? Could you point me to where to search for more information on the topic or tell me what is the right process to follow when something like this happens? Also, I have set up a few VMs but only three are Up and they have no users yet, even so the buffers fill almost to the brim when the usage is almost non-existant. If you have an environment that has some users or you use the VMs as virtual servers of some sort, what is the consumption of the memory? What's the optimal size for the memory? Thank you all very much. _______________________________________________ Users mailing list -- users@ovirt.org To unsubscribe send an email to users-le...@ovirt.org Privacy Statement: https://www.ovirt.org/site/privacy-policy/ oVirt Code of Conduct: https://www.ovirt.org/community/about/community-guidelines/ List Archives: https://lists.ovirt.org/archives/list/users@ovirt.org/message/PKRB26GSDQ5JVHD75HEPK346NTI7UQK2/