How to re-initialize storage?
by Peter Wood
Hi,
I inherited a small oVirt cluster with 3 nodes using iSCSI storage.
The LUNs used by the oVirt nodes were also accessible by some VMware nodes.
By mistake an action was started on VMware to initialize and start using
the same LUNs, which it happily did. This rendered the storage no longer
usable by oVirt nodes. All VMs went down, their image files no longer
accessible, the whole cluster became unusable without access to the shared
storage.
We have recovered from backups and moved the VMs to another cluster and now
I want to get this oVirt cluster back up and running.
I'm not an oVirt expert so everything I tried was through the web interface
and everything failed because storage is not accessible. I can't remove
VMs, I can't remove nodes, I can't remove the storage domain.
What is the right approach to destroy the cluster and rebuild it and
re-initialize the storage?
Even better if I can just remove all VMs from the inventory and somehow
tell it to make the storage LUNs usable again?
Any help is highly appreciated?
Thank you,
-- Peter
7 years, 9 months
problems with serial console in 4.1.1
by Gianluca Cecchi
Hello,
trying serial console in 4.1.1 I have some problems.
I have not understood if it depends on my client, or the guest or oVirt...
My client is Fedora 25 updated
My guest is a CentOS 7.3 VM updated (my latest successful attempts were
when in 7.2)
My oVirt is 4.1.1 (my latest successful attempts were when in 4.0.x)
Some tests
$ ssh -i .ssh/id_dsa.pub ovirt-vmconsole@ovmgr1 -p 2222
Available Serial Consoles:
00 c7service[2e571c77-bae1-4c1c-bf98-effaf9fed741]
01 c7testovn1[63818176-cfb5-4a00-912d-ce0e812be76c]
02 c7testovn2[f00c8f30-a658-4a18-bf85-3b523de93183]
03 dbatest6[633b58b6-5e99-491b-a312-0976d4e8d979]
04 nas4free[6b9013d1-1837-4b0f-aa34-c9130d4f1229]
05 raclab1[1775d180-288d-4116-af1e-d90b2989cb8a]
06 raclab2[852aa8b1-a3e2-4658-be91-0ab51b6b7260]
SELECT> 00
and it stays here without giving the os prompt.
In 7.3 guest I have VirtIO serial console enabled and this situation
[root@c7service ~]# cat /proc/cmdline
BOOT_IMAGE=/vmlinuz-3.10.0-514.6.1.el7.x86_64 root=/dev/mapper/cl-root ro
rd.lvm.lv=cl/root rd.lvm.lv=cl/swap rhgb quiet console=ttyS0
[root@c7service ~]#
[root@c7service ~]# ps -ef|grep agetty
root 718 1 0 11:15 ttyS0 00:00:00 /sbin/agetty --keep-baud
115200 38400 9600 ttyS0 vt220
root 1760 1541 0 11:29 pts/0 00:00:00 grep --color=auto agetty
[root@c7service ~]#
So it seems ok.
I have not understood the error I get connecting this way:
$ ssh -i .ssh/id_dsa.pub ovirt-vmconsole@ovmgr1 -p 2222 connect --vm-name
c7service
ERROR: No pty support, please enable at client side
$
What is "client" in the error message, my Fedora 25..?
At engine side I have:
[root@ovmgr1 ovirt-engine]# systemctl status
ovirt-vmconsole-proxy-sshd.service -l
● ovirt-vmconsole-proxy-sshd.service - oVirt VM Console SSH server daemon
Loaded: loaded
(/usr/lib/systemd/system/ovirt-vmconsole-proxy-sshd.service; enabled;
vendor preset: disabled)
Active: active (running) since Tue 2017-03-28 11:00:26 CEST; 33min ago
Main PID: 1117 (sshd)
CGroup: /system.slice/ovirt-vmconsole-proxy-sshd.service
└─1117 /usr/sbin/sshd -f
/usr/share/ovirt-vmconsole/ovirt-vmconsole-proxy/ovirt-vmconsole-proxy-sshd/sshd_config
-D
Mar 28 11:19:44 ovmgr1.mydomain sshd[2779]: Accepted publickey for
ovirt-vmconsole from 10.4.170.225 port 34947 ssh2: DSA
3d:d4:5b:94:b9:9e:4b:46:14:b2:4a:05:03:9b:05:d6
Mar 28 11:19:52 ovmgr1.mydomain sshd[2796]: Accepted publickey for
ovirt-vmconsole from 10.4.170.225 port 16456 ssh2: DSA
3d:d4:5b:94:b9:9e:4b:46:14:b2:4a:05:03:9b:05:d6
Mar 28 11:19:53 ovmgr1.mydomain sshd[2808]: Received disconnect from
10.4.170.225: 11: disconnected by user
Mar 28 11:20:02 ovmgr1.mydomain sshd[2824]: Accepted publickey for
ovirt-vmconsole from 10.4.170.225 port 5769 ssh2: DSA
3d:d4:5b:94:b9:9e:4b:46:14:b2:4a:05:03:9b:05:d6
Mar 28 11:20:14 ovmgr1.mydomain sshd[2855]: Accepted publickey for
ovirt-vmconsole from 10.4.170.225 port 52441 ssh2: DSA
3d:d4:5b:94:b9:9e:4b:46:14:b2:4a:05:03:9b:05:d6
Mar 28 11:20:24 ovmgr1.mydomain sshd[2882]: Accepted publickey for
ovirt-vmconsole from 10.4.170.225 port 33724 ssh2: DSA
3d:d4:5b:94:b9:9e:4b:46:14:b2:4a:05:03:9b:05:d6
Mar 28 11:20:24 ovmgr1.mydomain sshd[2894]: Received disconnect from
10.4.170.225: 11: disconnected by user
Mar 28 11:20:36 ovmgr1.mydomain sshd[2900]: Accepted publickey for
ovirt-vmconsole from 10.4.170.225 port 64049 ssh2: DSA
3d:d4:5b:94:b9:9e:4b:46:14:b2:4a:05:03:9b:05:d6
Mar 28 11:21:26 ovmgr1.mydomain sshd[2955]: Accepted publickey for
ovirt-vmconsole from 10.4.170.225 port 3521 ssh2: DSA
3d:d4:5b:94:b9:9e:4b:46:14:b2:4a:05:03:9b:05:d6
Mar 28 11:21:27 ovmgr1.mydomain sshd[2967]: Received disconnect from
10.4.170.225: 11: disconnected by user
Thanks,
Gianluca
7 years, 9 months
Fwd: Invalid status on Data Center XXX. Setting status to non responsive.
by David Pinkerton
Thread-63::DEBUG::2017-03-28 22:06:10,868::resourceManager:
:628::Storage.ResourceManager::(releaseResource) Trying to release resource
'Storage.a1428935-1f17-4652-bff9-abc65b3115d3'
Thread-63::DEBUG::2017-03-28 22:06:10,868::resourceManager:
:647::Storage.ResourceManager::(releaseResource) Released resource
'Storage.a1428935-1f17-4652-bff9-abc65b3115d3' (0 active users)
Thread-63::DEBUG::2017-03-28 22:06:10,868::resourceManager:
:653::Storage.ResourceManager::(releaseResource) Resource
'Storage.a1428935-1f17-4652-bff9-abc65b3115d3' is free, finding out if
anyone is waiting for it.
Thread-63::DEBUG::2017-03-28 22:06:10,868::resourceManager:
:661::Storage.ResourceManager::(releaseResource) No one is waiting for
resource 'Storage.a1428935-1f17-4652-bff9-abc65b3115d3', Clearing records.
Thread-63::DEBUG::2017-03-28 22:06:10,869::resourceManager:
:628::Storage.ResourceManager::(releaseResource) Trying to release resource
'Storage.upgrade_28111e03-5618-4d97-a7e4-5eee8db14c18'
Thread-63::DEBUG::2017-03-28 22:06:10,869::resourceManager:
:647::Storage.ResourceManager::(releaseResource) Released resource
'Storage.upgrade_28111e03-5618-4d97-a7e4-5eee8db14c18' (0 active users)
Thread-63::DEBUG::2017-03-28 22:06:10,869::resourceManager:
:653::Storage.ResourceManager::(releaseResource) Resource
'Storage.upgrade_28111e03-5618-4d97-a7e4-5eee8db14c18' is free, finding out
if anyone is waiting for it.
Thread-63::DEBUG::2017-03-28 22:06:10,869::resourceManager:
:661::Storage.ResourceManager::(releaseResource) No one is waiting for
resource 'Storage.upgrade_28111e03-5618-4d97-a7e4-5eee8db14c18', Clearing
records.
Thread-63::ERROR::2017-03-28
22:06:10,869::utils::375::Storage.StoragePool::(wrapper)
Unhandled exception
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/vdsm/utils.py", line 372, in
wrapper
return f(*a, **kw)
File "/usr/lib/python2.7/site-packages/vdsm/concurrent.py", line 177, in
run
return func(*args, **kwargs)
File "/usr/lib/python2.7/site-packages/vdsm/storage/securable.py", line
78, in wrapper
return method(self, *args, **kwargs)
File "/usr/share/vdsm/storage/sp.py", line 207, in _upgradePoolDomain
self._finalizePoolUpgradeIfNeeded()
File "/usr/lib/python2.7/site-packages/vdsm/storage/securable.py", line
76, in wrapper
raise SecureError("Secured object is not in safe state")
SecureError: Secured object is not in safe state
--
David Pinkerton
Consultant
Red Hat Asia Pacific Pty. Ltd.
Level 11, Canberra House
40 Marcus Clarke Street
Canberra 2600 ACT
Mobile: +61-488-904-232 <+61%20488%20904%20232>
Email: david.pinkerton(a)redhat.com
Web: http://apac.redhat.com/ <http://apac.redhat.com/>
--
David Pinkerton
Consultant
Red Hat Asia Pacific Pty. Ltd.
Level 11, Canberra House
40 Marcus Clarke Street
Canberra 2600 ACT
Mobile: +61-488-904-232
Email: david.pinkerton(a)redhat.com
Web: http://apac.redhat.com/ <http://apac.redhat.com/>
7 years, 9 months
Help
by David Pinkerton
Had a power outage last night and my UPS died......
All screens flick (Cluster, Hosts, Storage, Virtual Machine) and then go
blank hen I click on the tabs in the manager....
Error message: Invalid status on Data Center XXX. Setting status to non
responsive.
Storage is ISCSI - all hosts are logged in and I can see LUNS via blkid
--
David Pinkerton
Consultant
Red Hat Asia Pacific Pty. Ltd.
Level 11, Canberra House
40 Marcus Clarke Street
Canberra 2600 ACT
Mobile: +61-488-904-232
Email: david.pinkerton(a)redhat.com
Web: http://apac.redhat.com/ <http://apac.redhat.com/>
7 years, 9 months
change vm name in webadmin needs now to reboot?
by Nathanaël Blanchet
Hi,
I've just migrated to 4.1 and I find changing a running vm name into
webadmin needs the vm to be rebooted to take effect.
I've done this action many times in the previous version without
rebooting, is it a RFE or a bug?
--
Nathanaël Blanchet
Supervision réseau
Pôle Infrastrutures Informatiques
227 avenue Professeur-Jean-Louis-Viala
34193 MONTPELLIER CEDEX 5
Tél. 33 (0)4 67 54 84 55
Fax 33 (0)4 67 54 84 14
blanchet(a)abes.fr
7 years, 9 months
ovirt engine notifier customization question
by Gianluca Cecchi
Hello,
in 4.1.0 I made some tests configuring the events' notifier service and I
modified the file
/usr/share/ovirt-engine/services/ovirt-engine-notifier/ovirt-engine-notifier.conf
changing these:
# The SMTP mail server address. Required.
MAIL_SERVER=localhost
(I use postfix on engine server, configured with smart relay to my mail
server)
# Specifies 'from' address on sent mail in RFC822 format, if supported by
mail server.
MAIL_FROM=ovmgr1(a)mydomain.it
# Specifies 'reply-to' address on sent mail in RFC822 format.
MAIL_REPLY_TO=some_group(a)mydomain.it
(it seems it is not honored.... in the received e-mail if I click reply I
get an empty To: field...
During update to 4.1.1 the engine-setup failed in closing phase, due to the
file being overwritten by the 4.1.1 package version of the conf file.
[ INFO ] Stage: Closing up
[ ERROR ] Failed to execute stage 'Closing up': Failed to start service
'ovirt-engine-notifier'
I fixed it creating a file 20-mailsetup.conf under
/etc/ovirt-engine/notifier/notifier.conf.d/
Is it the correct location?
It was not so clear reading this page when configuring it....
http://www.ovirt.org/documentation/admin-guide/chap-Event_Notifications/
Thanks,
Gianluca
7 years, 9 months
The host xxx did not satisfy internal filter Memory because its available memory is too low
by yimao
Hi,
When I create vm after I have installed ovirt Node 4.1.1 successfully,
I got this error message "The host xxxx did not satisfy internal
filter Memory because its available memory is too low".
I use ovirt node:ovirt-node-ng-installer-ovirt-4.1-2017032304.iso and
ovirt-engine-appliance-4.1-20170322.1.el7.centos.noarch.rpm. And I
followed the steps in http://www.ovirt.org/node/.
I found the informations in "hosts"->"general"->"info" page:
"Max free Memory for scheduling new VMs: 356 MB"
"Physical Memory: 15747 MB total, 5039 MB used, 10708 MB free"
Why the free memory for scheduling new vms is so little? Is there
anything wrong with my configuration?
Thanks in advance,
Yiimao Yang.
7 years, 9 months
Gluster network
by Arsène Gschwind
This is a multi-part message in MIME format.
--------------65EB4D275A535135E524B12F
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit
Hi,
I do have a recuring warning in engine.log and i'm not able to figure
out what is wrong in my setup.
2017-03-25 10:13:12,391+01 WARN
[org.ovirt.engine.core.vdsbroker.gluster.GlusterVolumesListReturn]
(DefaultQuartzScheduler4) [e02bacbc-75ab-4c48-81c0-e3d64e4bd3e9] Could
not associate brick 'spfy-hw01:/gluster/engine/brick' of volume
'af169181-d72e-4325-9947-d7dd09e512f0' with correct network as no
gluster network found in cluster '00000002-0002-0002-0002-0000000002a6'
2017-03-25 10:13:12,394+01 WARN
[org.ovirt.engine.core.vdsbroker.gluster.GlusterVolumesListReturn]
(DefaultQuartzScheduler4) [e02bacbc-75ab-4c48-81c0-e3d64e4bd3e9] Could
not associate brick 'spfy-hw02:/gluster/engine/brick' of volume
'af169181-d72e-4325-9947-d7dd09e512f0' with correct network as no
gluster network found in cluster '00000002-0002-0002-0002-0000000002a6'
2017-03-25 10:13:12,397+01 WARN
[org.ovirt.engine.core.vdsbroker.gluster.GlusterVolumesListReturn]
(DefaultQuartzScheduler4) [e02bacbc-75ab-4c48-81c0-e3d64e4bd3e9] Could
not associate brick 'spfy-hw03:/gluster/engine/brick' of volume
'af169181-d72e-4325-9947-d7dd09e512f0' with correct network as no
gluster network found in cluster '00000002-0002-0002-0002-0000000002a6'
My setup:
* oVirt 4.1.0
* gluster 3.8.10-1.el7
I've setup a gluster network and dedicated to gluster:
gluster
Could someone explain why I do have this warning and how to resolve the
problem .
Thanks a lot
rgds,
Arsène
--
--------------65EB4D275A535135E524B12F
Content-Type: multipart/related;
boundary="------------A9ADC8A9E0C15878F584667A"
--------------A9ADC8A9E0C15878F584667A
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 8bit
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<font size="-1">Hi,</font><br>
<font size="-1"><br>
I do have a recuring warning in engine.log and i'm not able to
figure out what is wrong in my setup.<br>
<br>
2017-03-25 10:13:12,391+01 WARN
[org.ovirt.engine.core.vdsbroker.gluster.GlusterVolumesListReturn]
(DefaultQuartzScheduler4) [e02bacbc-75ab-4c48-81c0-e3d64e4bd3e9]
Could not associate brick 'spfy-hw01:/gluster/engine/brick' of
volume 'af169181-d72e-4325-9947-d7dd09e512f0' with correct network
as no gluster network found in cluster
'00000002-0002-0002-0002-0000000002a6'<br>
2017-03-25 10:13:12,394+01 WARN
[org.ovirt.engine.core.vdsbroker.gluster.GlusterVolumesListReturn]
(DefaultQuartzScheduler4) [e02bacbc-75ab-4c48-81c0-e3d64e4bd3e9]
Could not associate brick 'spfy-hw02:/gluster/engine/brick' of
volume 'af169181-d72e-4325-9947-d7dd09e512f0' with correct network
as no gluster network found in cluster
'00000002-0002-0002-0002-0000000002a6'<br>
2017-03-25 10:13:12,397+01 WARN
[org.ovirt.engine.core.vdsbroker.gluster.GlusterVolumesListReturn]
(DefaultQuartzScheduler4) [e02bacbc-75ab-4c48-81c0-e3d64e4bd3e9]
Could not associate brick 'spfy-hw03:/gluster/engine/brick' of
volume 'af169181-d72e-4325-9947-d7dd09e512f0' with correct network
as no gluster network found in cluster
'00000002-0002-0002-0002-0000000002a6'<br>
<br>
My setup: <br>
</font>
<ul>
<li><font size="-1">oVirt 4.1.0 </font></li>
<li><font size="-1">gluster 3.8.10-1.el7</font></li>
</ul>
<p><font size="-1">I've setup a gluster network and dedicated to
gluster:</font></p>
<p><font size="-1"><img alt="gluster"
src="cid:part1.F7469456.0FBCFC3F@unibas.ch" height="156"
width="892"></font></p>
<p><font size="-1">Could someone explain why I do have this warning
and how to resolve the problem .</font></p>
<p><font size="-1">Thanks a lot</font></p>
<p><font size="-1">rgds, <br>
<br>
Arsène</font></p>
<div class="moz-signature">-- <br>
<br>
<font color="#000000">
</font></div>
</body>
</html>
--------------A9ADC8A9E0C15878F584667A
Content-Type: image/png;
name="gnome-shell-screenshot-H49UXY.png"
Content-Transfer-Encoding: base64
Content-ID: <part1.F7469456.0FBCFC3F(a)unibas.ch>
Content-Disposition: inline;
filename="gnome-shell-screenshot-H49UXY.png"
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
oCDXdedd6urqFBQU1OvrvrceAODP88sDX09hr0tfoW/58uUqKyvTxYsXtWHDhh77VFdXKzIy
Ul5eXqqsrFROTo6ampp+aMzR0dFyOp06c+aMnE6nioqKdO/ePSUkJGjQoEFatWqVdu/erdbW
Vr1//14nT57Uxo0bf6gmAODn8PX11YEDB7R161ZdvHhRdXV1amtr061bt7R27Vqlp6e7Ap3U
eQMvSWpoaFB+fr4WLFggPz8/LViwQEePHpUkOZ1OZWZm6vLlyz3WrK6ultlsVkhIiD5//qzD
hw/LYDC45iMfHx/XWcMvrVy5UtevX5fdbpck3b59W42NjZo7d26vn7GvegAAdPmlga+3sNel
t9A3ePBgLV26VDdv3tS6det67JOZmaldu3YpMjJS6enpOn36tF68eKHNmzf3WrewsFAmk0km
k0kOh0PTp0+XyWRSTk6OjEajbt68qStXrshsNmvr1q26dOmSxo4dK0k6deqUWlpaFBISotmz
ZyspKUmJiYl9fyEAgH6xbds2nT9/XufOnVNoaKj8/PxktVqVmZmpffv2ufUNCgrS1KlTNWXK
FMXFxSkuLk5S55LJiooKjRs3TuHh4Xry5ImWLFnSY73Vq1dr5MiRGj9+vGbMmKEJEyYoMTFR
CQkJKi8vV3x8vPbu3av4+Hi3182bN09Wq1WxsbGKiIjQoUOHdPv2bbdlpt9TDwCALobP//CJ
4YcPH3bb7+mxBtJ/wp65x6YeWRrU6zV9AAD8TFVVVQoLC1NHR4eMxn67pB0AgH71y2Y4whsA
AAAA/F7/sw9eBwAAAAD8GNawAAD+SKGhofqHVzUAAPB/hzN8AAAAAOChCHwAAAAA4KEIfAAA
AADgoQh8AAAAAOChCHwAAAAA4KEIfAAAAADgoX74sQx/N/7rZ4wDAAAAAPCT/XDgG+E37GeM
AwAAAADwk7GkEwAAAAA8FIEPAAAAADwUgQ8AAAAAPBSBDwAAAAA8FIEPAAAAADwUgQ8AAAAA
PBSBDwAAAAA8FIEPAAAAADwUgQ8AAAAAPBSBDwAAAAA8FIEPAAAAADwUgQ8AAAAAPBSBDwAA
AAA8FIEPAAAAADwUgQ8AAAAAPNS/Abht/LyQoACdAAAAAElFTkSuQmCC
--------------A9ADC8A9E0C15878F584667A--
--------------65EB4D275A535135E524B12F--
7 years, 9 months
Answer file key for "nonlocal postgres"
by Jamie Lawrence
Hello,
I’m working on an answerfile for an unattended Ovirt install. The engine and the data warehouse DBs live remotely. I think I have most of the relevant keys defined, but appear to be missing one, because the installer is attempting to manage a local Postgres. Log and error below. Keys I’ve defined so far are:
OVESETUP_DB/secured=bool:False
OVESETUP_DB/user=str:engine
OVESETUP_DB/password=str:[SNIP]
OVESETUP_DB/dumper=str:pg_custom
OVESETUP_DB/database=str:ovirt_engine
OVESETUP_DB/fixDbViolations=none:None
OVESETUP_DB/host=str:[SNIP]
OVESETUP_DB/port=int:5435
OVESETUP_DB/filter=none:None
OVESETUP_DB/restoreJobs=int:2
OVESETUP_DB/securedHostValidation=bool:False
And a similar set for the DWH.
Anyone know what I am missing?
Thanks in advance,
-j
- - - -
The user error is:
[ INFO ] Creating PostgreSQL 'ovirt_engine' database
[ ERROR ] Failed to execute stage 'Misc configuration': Failed to start service 'postgresql'
[ INFO ] Yum Performing yum transaction rollback
From the installer log, it obviously still thinks it is supposed to set up PG locally:
2017-03-23 23:57:18 DEBUG otopi.context context._executeMethod:128 Stage misc METHOD otopi.plugins.ovirt_engine_setup.ovirt_engine.provisioning.postgres.Plugin._misc
2017-03-23 23:57:18 INFO otopi.ovirt_engine_setup.engine_common.postgres postgres.provision:485 Creating PostgreSQL 'ovirt_engine' database
2017-03-23 23:57:18 DEBUG otopi.transaction transaction._prepare:61 preparing 'File transaction for '/var/lib/pgsql/data/pg_hba.conf''
2017-03-23 23:57:18 DEBUG otopi.filetransaction filetransaction.prepare:185 file '/var/lib/pgsql/data/pg_hba.conf' exists
2017-03-23 23:57:18 DEBUG otopi.filetransaction filetransaction.prepare:219 backup '/var/lib/pgsql/data/pg_hba.conf'->'/var/lib/pgsql/data/pg_hba.conf.20170323235718'
2017-03-23 23:57:18 DEBUG otopi.plugins.otopi.services.systemd systemd.state:130 stopping service postgresql
2017-03-23 23:57:18 DEBUG otopi.plugins.otopi.services.systemd plugin.executeRaw:813 execute: ('/bin/systemctl', 'stop', 'postgresql.service'), executable='None', cwd='None', env=None
2017-03-23 23:57:18 DEBUG otopi.plugins.otopi.services.systemd plugin.executeRaw:863 execute-result: ('/bin/systemctl', 'stop', 'postgresql.service'), rc=0
2017-03-23 23:57:18 DEBUG otopi.plugins.otopi.services.systemd plugin.execute:921 execute-output: ('/bin/systemctl', 'stop', 'postgresql.service') stdout:
2017-03-23 23:57:18 DEBUG otopi.plugins.otopi.services.systemd plugin.execute:926 execute-output: ('/bin/systemctl', 'stop', 'postgresql.service') stderr:
2017-03-23 23:57:18 DEBUG otopi.plugins.otopi.services.systemd systemd.state:130 starting service postgresql
2017-03-23 23:57:18 DEBUG otopi.plugins.otopi.services.systemd plugin.executeRaw:813 execute: ('/bin/systemctl', 'start', 'postgresql.service'), executable='None', cwd='None', env=None
2017-03-23 23:57:19 DEBUG otopi.plugins.otopi.services.systemd plugin.executeRaw:863 execute-result: ('/bin/systemctl', 'start', 'postgresql.service'), rc=1
2017-03-23 23:57:19 DEBUG otopi.plugins.otopi.services.systemd plugin.execute:921 execute-output: ('/bin/systemctl', 'start', 'postgresql.service') stdout:
2017-03-23 23:57:19 DEBUG otopi.plugins.otopi.services.systemd plugin.execute:926 execute-output: ('/bin/systemctl', 'start', 'postgresql.service') stderr:
Job for postgresql.service failed because the control process exited with error code. See "systemctl status postgresql.service" and "journalctl -xe" for details.
2017-03-23 23:57:19 DEBUG otopi.transaction transaction.abort:119 aborting 'File transaction for '/var/lib/pgsql/data/pg_hba.conf''
2017-03-23 23:57:19 DEBUG otopi.context context._executeMethod:142 method exception
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/otopi/context.py", line 132, in _executeMethod
method['method']()
File "/usr/share/ovirt-engine/setup/bin/../plugins/ovirt-engine-setup/ovirt-engine/provisioning/postgres.py", line 201, in _misc
self._provisioning.provision()
File "/usr/share/ovirt-engine/setup/ovirt_engine_setup/engine_common/postgres.py", line 496, in provision
self.restartPG()
File "/usr/share/ovirt-engine/setup/ovirt_engine_setup/engine_common/postgres.py", line 397, in restartPG
state=state,
File "/usr/share/otopi/plugins/otopi/services/systemd.py", line 141, in state
service=name,
RuntimeError: Failed to start service 'postgresql'
2017-03-23 23:57:19 ERROR otopi.context context._executeMethod:151 Failed to execute stage 'Misc configuration': Failed to start service 'postgresql'
2017-03-23 23:57:19 DEBUG otopi.transaction transaction.abort:119 aborting 'Yum Transaction'
2017-03-23 23:57:19 INFO otopi.plugins.otopi.packagers.yumpackager yumpackager.info:80 Yum Performing yum transaction rollback
Loaded plugins: fastestmirror, versionlock
2017-03-23 23:57:19 DEBUG otopi.transaction transaction.abort:119 aborting 'DWH Engine database Transaction'
2017-03-23 23:57:19 DEBUG otopi.transaction transaction.abort:119 aborting 'Database Transaction'
2017-03-23 23:57:19 DEBUG otopi.transaction transaction.abort:119 aborting 'Version Lock Transaction'
2017-03-23 23:57:19 DEBUG otopi.transaction transaction.abort:119 aborting 'DWH database Transaction'
7 years, 9 months
Fwd: How to deploy hosted-engine to the second and later host machines
by Tatsuya
Dear Didi
> Even if you never heard about hosted-engine in previous versions and 4.1
> was your first attempt? Any suggestions for improvement to make it easier
> to find?
Sorry to late reply. I notice that I forget to add "users <users(a)ovirt.org>"
as a destination.
The inquiry of the other day was about oVirt 4.0.
Yesterday I installed 4.1 for the first time.
I think that if I had been able to deploy self hosted engine not only when
reinstalling host
but also when adding new host, I could have noticed.
Or it may be useful to pop up the deployment method of self hosted engine
when adding new host is completed.
Regards
Tatsuya
---------- Forwarded message ----------
From: Tatsuya <suginami(a)gmail.com>
Date: 2017-03-23 1:10 GMT+09:00
Subject: Re: [ovirt-users] How to deploy hosted-engine to the second and
later host machines
To: Yedidyah Bar David <didi(a)redhat.com>
Dear Didi
> e.g. that if the storage
> domain is not empty, a message will be emitted saying something like:
> "To add this host as an additional one to an existing hosted-engine HA
> cluster, please use the engine web administration ui or the API/SDK".
It seems to be a very appropriate explanation when reading after
understanding,
but it may be better to ready specific steps.For example, this is one
example among many:
"In particular, when creating a new host from the engine web administration
ui,
please select "Deploy" on the self hosted engine tab."
Also, "hosted-engine --deploy --config-append=answers.conf" was an error
from cli,
but "hosted-engine --deploy" wasn't an error, so I almost created a new
hosted-engine
using "hosted-engine --deploy" to the second and later host machines.
>From the above, It wil be better to warn also when running "hosted-engine
--deploy".
Regards
Tatsuya
2017-03-21 15:29 GMT+09:00 Yedidyah Bar David <didi(a)redhat.com>:
> On Mon, Mar 20, 2017 at 5:44 PM, Tatsuya <suginami(a)gmail.com> wrote:
> > Dear lan and Didi
> >
> >> Found a working option to get second and subsequent hosts deployed with
> >> ovirt 4.1
> >>
> >> 1-Set second host into maintenance
> >> 2-highlight second host and choose "Installation --> Reinstall", edit
> >> params in popup and click OK
> >> 3-Ignore warning that pops up and watch the vdsm.log or look for
> >> "Installing" status in webui
> >> 4-It should show you that the install is running, keep watching
> vdsm.log.
> >> 5-Click 'ok' on warning and wait patiently for install to finish.
> >>
> >> Second node comes up and is active.
> >
> >> No, sorry for not being clear. I referred to the engine web admin ui
> >> (and also API/SDK). Thanks, Ian, for your reply explaining this.
> >
> > I apologize for this late reply.I had been trying again from reinstalling
> > the host.
> >
> > Thanks to you, I was able to install HostedEngine in second and
> subsequent
> > hosts.
> > I think that I could not find this option by myself.
>
> Even if you never heard about hosted-engine in previous versions and 4.1
> was your first attempt? Any suggestions for improvement to make it easier
> to find?
>
> >
> > I'm grateful for your support.
>
> You might want to open one or more RFEs for some clarifications in the
> interface - both command line and cockpit - e.g. that if the storage
> domain is not empty, a message will be emitted saying something like:
> "To add this host as an additional one to an existing hosted-engine HA
> cluster, please use the engine web administration ui or the API/SDK".
>
> Best,
> --
> Didi
>
7 years, 9 months