Bug 1659052

Summary: [RFE] Consider alternative to ICMP ping for hosted engine network test
Product: [oVirt] ovirt-hosted-engine-ha Reporter: Sandro Bonazzola <sbonazzo>
Component: RFEsAssignee: Dominik Holler <dholler>
Status: CLOSED CURRENTRELEASE QA Contact: Nikolai Sednev <nsednev>
Severity: medium Docs Contact:
Priority: medium    
Version: 2.3.0CC: bugs, danken, dberry, dfediuck, dholler, irosenzw, jcoscia, mavital, mindruv, msivak, mtessun, nsednev, sfroemer, stirabos
Target Milestone: ovirt-4.3.5Keywords: FutureFeature, Improvement, Triaged
Target Release: 2.3.2Flags: mavital: needinfo+
sbonazzo: ovirt-4.3?
mtessun: planning_ack+
sbonazzo: devel_ack+
mavital: testing_ack+
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: ovirt-hosted-engine-ha-2.3.3, ovirt-hosted-engine-setup-2.3.10 Doc Type: Enhancement
Doc Text:
Feature: Currently the virtualization host checks it's network liveliness by pinging the gateway. Alternative ways of checking network connectivity are added. Reason: In some scenarios, the gateway does not reply to ping, e.g. if ping is blocked on network level. Result: During the installation of hosted engine, the admin can configure the way the network connectivity is checked. The options to choose are a check if the DNS resolution is working, ping the gateway, TCP connection to a configurable port on a configurable host, or no check at all. https://github.com/oVirt/ovirt-site/pull/1985
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-07-30 14:08:10 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: Network RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1720896    
Bug Blocks: 1704183, 1709895, 1717464, 1719315    

Description Sandro Bonazzola 2018-12-13 13:31:15 UTC
Consider alternative to ICMP ping for hosted engine network test.

Comment 1 Sandro Bonazzola 2018-12-13 14:46:36 UTC
*** Bug 1659090 has been marked as a duplicate of this bug. ***

Comment 2 Doron Fediuck 2018-12-13 14:55:17 UTC
We should use DNS as main, and ICMO as fall back.
We may consider a NONE option as well.

Comment 3 Sandro Bonazzola 2019-01-23 09:45:12 UTC
Let's consider idea of using either ping or a custom script and provide a few examples including one using dns query.

Comment 4 Sandro Bonazzola 2019-02-13 08:36:03 UTC
*** Bug 1672941 has been marked as a duplicate of this bug. ***

Comment 5 Simone Tiraboschi 2019-04-01 09:44:25 UTC
A custom script is definitively more complex since we also need a way to propagate it between all the hosted-engine hosts; replacing the test with a a DNS query is by far simpler.

Comment 6 Veaceslav Mindru 2019-04-01 09:55:23 UTC
@simone Tiraboschi I think the ideal world would be to have both and whenever any of those succeed consider this a PASS in case of both failing ask the user for the proper value and if none still provide the possibility to force continue disregarding the warning. If both are to complex I think more important is to give the possibility to force continue is the most important here.

Comment 7 Dan Kenigsberg 2019-04-20 15:28:25 UTC
I hope QE can commit to test this in an upcoming z-stream.

Comment 8 Nikolai Sednev 2019-04-21 11:16:09 UTC
I have a few questions regarding implementation of the RFE:
Forth to comment #6, would RFE act as asked in the comment?
1.Try ping.
2.Try resolving through the DNS.
3.If 1&2 fail, have 2 options, abort the deployment or force continue.
4.If 1 or 2 pass, then continue with the deployment.

Comment 9 Dan Kenigsberg 2019-04-21 15:59:37 UTC
Nikolai, Dominik proposed Doc Text and a feature page to better grasp the expected behavior. If you have further question please add them here.

Comment 10 Nikolai Sednev 2019-04-22 09:41:53 UTC
Can you please provide the link to feature page documentation? I don't see it attached to the bug.

Comment 11 Dan Kenigsberg 2019-04-22 09:50:10 UTC
In the Doc Text, there's url to the PR of the feature page.

Comment 12 Nikolai Sednev 2019-04-22 09:58:35 UTC
(In reply to Dan Kenigsberg from comment #11)
> In the Doc Text, there's url to the PR of the feature page.

And feature page there is empty:
https://github.com/oVirt/ovirt-site/pull/1985/files/5d79102fb6fbe62131d0198be6323e836413dacc#diff-ec9f05d7deea63d4d55e5c479e7da24e
In https://github.com/oVirt/ovirt-site/pull/1985 is only general discussion.

Comment 13 Nikolai Sednev 2019-04-22 10:02:51 UTC
(In reply to Dan Kenigsberg from comment #11)
> In the Doc Text, there's url to the PR of the feature page.

I see in featurepage:
"We went looking everywhere, but couldn’t find those commits.
Sometimes commits can disappear after a force-push. Head back to the latest changes here. https://github.com/oVirt/ovirt-site/pull/1985/files".

AFAIK feature page should look like this: 
https://ovirt.org/blog/2017/08/ovirt-ansible-roles-how-to-use.html

What I have doesn't look like a feature page to me.

Comment 16 Dan Kenigsberg 2019-04-22 13:23:50 UTC
Nikolai, please join the feature review on github.
Please let us know what you need in order to cover IPv6 - maybe we can help.

Comment 17 Nikolai Sednev 2019-04-22 14:08:44 UTC
(In reply to Dan Kenigsberg from comment #16)
> Nikolai, please join the feature review on github.
> Please let us know what you need in order to cover IPv6 - maybe we can help.

For IPv6 I need that the whole infrastructure in the LAB will work IPv6, my environments tested in IPv4 only.
Left my 5 cents in https://github.com/oVirt/ovirt-site/pull/1985.

Comment 18 Dominik Holler 2019-05-10 08:09:47 UTC
Nikolai, can you please check if the current target milestone and testing_ack reflects your planning?

Comment 19 Nikolai Sednev 2019-06-17 15:15:40 UTC
TCP, ping and dns options are working as designed, all except none
None option is not working at all:
Please specify which way the network connectivityshould be checked (ping, dns, tcp, none) [dns]: none
Please specify which way the network connectivityshould be checked (ping, dns, tcp, none) [dns]: none
Please specify which way the network connectivityshould be checked (ping, dns, tcp, none) [dns]: 

Tested on these components:
ovirt-hosted-engine-ha-2.3.2-1.el7ev.noarch
ovirt-hosted-engine-setup-2.3.10-1.el7ev.noarch
Linux 3.10.0-1055.el7.x86_64 #1 SMP Fri Jun 7 18:44:12 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Red Hat Enterprise Linux Server release 7.7 Beta (Maipo)

Setting back to assigned.

Comment 20 Simone Tiraboschi 2019-07-03 07:33:02 UTC
*** Bug 1592827 has been marked as a duplicate of this bug. ***

Comment 21 Nikolai Sednev 2019-07-15 11:29:54 UTC
Works just fine on these components:
ovirt-engine-setup-4.3.5.4-0.1.el7.noarch
ovirt-hosted-engine-ha-2.3.3-1.el7ev.noarch
ovirt-hosted-engine-setup-2.3.11-1.el7ev.noarch
Linux 3.10.0-1060.el7.x86_64 #1 SMP Mon Jul 1 18:28:13 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Red Hat Enterprise Linux Server release 7.7 Beta (Maipo)

Comment 22 Sandro Bonazzola 2019-07-30 14:08:10 UTC
This bugzilla is included in oVirt 4.3.5 release, published on July 30th 2019.

Since the problem described in this bug report should be
resolved in oVirt 4.3.5 release, it has been closed with a resolution of CURRENT RELEASE.

If the solution does not work for you, please open a new bug report.

Comment 23 Sandro Bonazzola 2019-11-15 12:43:23 UTC
*** Bug 1660524 has been marked as a duplicate of this bug. ***

Comment 24 Martin Perina 2022-03-16 08:59:27 UTC
*** Bug 1701342 has been marked as a duplicate of this bug. ***