Bug 1339863
Summary: | Failed to communicate with subscription-manager as "Interrupted system call" | ||||||
---|---|---|---|---|---|---|---|
Product: | Red Hat Enterprise Linux 7 | Reporter: | Liushihui <shihliu> | ||||
Component: | virt-who | Assignee: | Radek Novacek <rnovacek> | ||||
Status: | CLOSED ERRATA | QA Contact: | Eko <hsun> | ||||
Severity: | medium | Docs Contact: | |||||
Priority: | unspecified | ||||||
Version: | 7.3 | CC: | hsun, ldai, ovasik, rbalakri, rnovacek, sgao, shihliu | ||||
Target Milestone: | rc | ||||||
Target Release: | --- | ||||||
Hardware: | x86_64 | ||||||
OS: | Linux | ||||||
Whiteboard: | |||||||
Fixed In Version: | virt-who-0.17-10.el7 | Doc Type: | If docs needed, set a value | ||||
Doc Text: | Story Points: | --- | |||||
Clone Of: | 1323020 | Environment: | |||||
Last Closed: | 2016-11-04 05:09:16 UTC | Type: | Bug | ||||
Regression: | --- | Mount Type: | --- | ||||
Documentation: | --- | CRM: | |||||
Verified Versions: | Category: | --- | |||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
Cloudforms Team: | --- | Target Upstream Version: | |||||
Embargoed: | |||||||
Bug Depends On: | 1323020 | ||||||
Bug Blocks: | |||||||
Attachments: |
|
Description
Liushihui
2016-05-26 02:04:49 UTC
It seems that the backtrace here is from an older version of virt-who (RHEL-6 perhaps). Can you please reproduce it with virt-who-0.17-1.el7.noarch so I can see correct backtrace? Thank you. I haven't reproduce it on virt-who-0.17-1.el7.noarch in recently test. I plan to track it on the following two virt-who version, if it can't reproduce, I will close it. what's your opinion? Thanks. I agree, if we can't reproduce in the next version of virt-who, please close this bug. In virt-who-0.17-2.el7.noarch. It will show "Unable to send data: Communication with subscription manager interrupted", please see detail info in attachment. Reproduced version: virt-who-0.17-2.el7.noarch subscription-manager-1.17.6-1.el7.x86_64 Reproduced process: 1. Configure virt-who run at esx mode and just configure /etc/virt-who.d/XX [root@localhost ~]# cat /etc/virt-who.d/virt [test-esx1] type=esx server=10.73.2.95 username=Administrator #encrypted_password=07928b0a0b0caa7c6e3b5915466210bd password=Welcome1! owner=ACME_Corporation env=Library 2. Restart virt-who and check virt-who's log,virt-who send correct h/g mapping info to satellite and no debug info in log. 2016-06-02 02:37:29,795 [INFO] @main.py:157 - Using configuration "test-esx1" ("esx" mode) 2016-06-02 02:37:29,796 [INFO] @main.py:159 - Using reporter_id='localhost.localdomain-d4f30f62b62f4854af348120066d195d' 2016-06-02 02:37:30,831 [INFO] @subscriptionmanager.py:194 - Sending update in hosts-to-guests mapping for config "test-esx1": 2 hypervisors and 1 guests found 2016-06-02 02:38:30,218 [INFO] @executor.py:250 - Report for config "test-esx1" hasn't changed, not sending 2016-06-02 02:39:30,222 [INFO] @executor.py:250 - Report for config "test-esx1" hasn't changed, not sending 2016-06-02 02:40:30,226 [INFO] @executor.py:250 - Report for config "test-esx1" hasn't changed, not sending 3. Modify configure file /etc/sysconfig/virt-who as the following: [root@localhost ~]# cat /etc/sysconfig/virt-who | grep -v ^# | grep -v ^$ VIRTWHO_DEBUG=1 https_proxy=https://10.73.2.81:3128 4. Restart virt-who and check virt-who's log. 2016-06-02 02:41:28,108 [virtwho.init INFO] MainProcess(11092):MainThread @main.py:main:157 - Using configuration "test-esx1" ("esx" mode) 2016-06-02 02:41:28,108 [virtwho.init INFO] MainProcess(11092):MainThread @main.py:main:159 - Using reporter_id='localhost.localdomain-d4f30f62b62f4854af348120066d195d' 2016-06-02 02:41:28,110 [virtwho.main DEBUG] MainProcess(11092):MainThread @executor.py:run:171 - Starting infinite loop with 60 seconds interval 2016-06-02 02:41:28,138 [virtwho.test-esx1 DEBUG] Esx-1(11099):MainThread @virt.py:run:364 - Virt backend 'test-esx1' started 2016-06-02 02:41:28,139 [virtwho.test-esx1 DEBUG] Esx-1(11099):MainThread @esx.py:_prepare:127 - Log into ESX 2016-06-02 02:41:28,381 [virtwho.test-esx1 DEBUG] Esx-1(11099):MainThread @esx.py:_prepare:130 - Creating ESX event filter 2016-06-02 02:41:28,475 [virtwho.test-esx1 DEBUG] Esx-1(11099):MainThread @virt.py:enqueue:357 - Report for config "test-esx1" gathered, putting to queue for sending 2016-06-02 02:41:28,487 [virtwho.main DEBUG] MainProcess(11092):MainThread @subscriptionmanager.py:_connect:123 - Authenticating with certificate: /etc/pki/consumer/cert.pem 2016-06-02 02:42:28,065 [virtwho.main ERROR] MainProcess(11092):MainThread @executor.py:send:143 - Unable to send data: Communication with subscription manager interrupted 2016-06-02 02:42:28,065 [virtwho.main DEBUG] MainProcess(11092):MainThread @executor.py:send_report:108 - Report from "test-esx1" failed to sent 2016-06-02 02:42:28,476 [virtwho.test-esx1 DEBUG] Esx-1(11099):MainThread @virt.py:enqueue:357 - Report for config "test-esx1" gathered, putting to queue for sending Result: It will show error info "Unable to send data: Communication with subscription manager interrupted" in log. Created attachment 1163915 [details]
rhsm.log
It seems to be a problem with the proxy. Make sure it can connect to the satellite, or set no_proxy=<satellite_address> var in the /etc/sysconfig/virt-who. When use virt-who-0.17-2.el7.noarch connect hyperv2016, it also produced this issue: [root@intel-wildcatpass-01 virt-who.d]# cat /etc/sysconfig/virt-who | grep -v ^# | grep -v ^$ VIRTWHO_DEBUG=1 VIRTWHO_HYPERV=1 VIRTWHO_HYPERV_OWNER=ACME_Corporation VIRTWHO_HYPERV_ENV=Library VIRTWHO_HYPERV_SERVER=10.73.5.240 VIRTWHO_HYPERV_USERNAME=administrator VIRTWHO_HYPERV_PASSWORD=Welcome1 [root@intel-wildcatpass-01 virt-who.d]# service virt-who restart Redirecting to /bin/systemctl restart virt-who.service [root@intel-wildcatpass-01 virt-who.d]# tail -f /var/log/rhsm/rhsm.log 2016-06-20 23:29:53,221 [virtwho.main DEBUG] MainProcess(30537):MainThread @executor.py:terminate:303 - virt-who is shutting down 2016-06-20 23:29:53,221 [virtwho.env_cmdline ERROR] HyperV-1(30544):MainThread @virt.py:run:374 - Virt backend 'env/cmdline' fails with error: Unable to connect to Hyper-V server: ('Connection aborted.', error(4, 'Interrupted system call')) 2016-06-20 23:29:53,221 [virtwho.env_cmdline DEBUG] HyperV-1(30544):MainThread @virt.py:run:387 - Virt backend 'env/cmdline' terminated It usually occur "Interrupted system call" when stop virt-who service before virt-who get response from hyperv. I was not able to reproduce it with latest version of virt-who. Can you try to reproduce it with virt-who-0.17-5.el7 and provide the environment to me if you are able to reproduce it. It still exist on virt-who-0.17-6.el7.noarch. Please do the following steps to reproduced this issue Env: dell-t320-01.khw.lab.eng.bos.redhat.com username/passwd: root/red2015 Steps: 1. Register system to satellite 2. Config virt-who run at hyperv mode and make hyperv server can't reach. [root@dell-t320-01 ~]# cat /etc/sysconfig/virt-who | grep -v ^# | grep -v ^$ VIRTWHO_DEBUG=1 VIRTWHO_HYPERV=1 VIRTWHO_HYPERV_OWNER=ACME_Corporation VIRTWHO_HYPERV_ENV=Library VIRTWHO_HYPERV_SERVER=10.73.5.22 ========>It is not reachable VIRTWHO_HYPERV_USERNAME=administrator VIRTWHO_HYPERV_PASSWORD=Welcome1 3. Restart virt-who service [root@dell-t320-01 ~]# service virt-who restart Redirecting to /bin/systemctl restart virt-who.service 4. Stop virt-who service [root@dell-t320-01 ~]# service virt-who stop Redirecting to /bin/systemctl stop virt-who.service 5. Check virt-who's log [root@dell-t320-01 ~]# tail -f /var/log/rhsm/rhsm.log 2016-07-19 21:34:30,105 [virtwho.env_cmdline DEBUG] HyperV-1(46537):MainThread @virt.py:run:364 - Virt backend 'env/cmdline' started 2016-07-19 21:34:36,396 [virtwho.main DEBUG] MainProcess(46530):MainThread @executor.py:terminate:303 - virt-who is shutting down 2016-07-19 21:34:36,396 [virtwho.env_cmdline ERROR] HyperV-1(46537):MainThread @virt.py:run:374 - Virt backend 'env/cmdline' fails with error: Unable to connect to Hyper-V server: ('Connection aborted.', error(4, 'Interrupted system call')) 2016-07-19 21:34:36,396 [virtwho.env_cmdline DEBUG] HyperV-1(46537):MainThread @virt.py:run:387 - Virt backend 'env/cmdline' terminated 2016-07-19 21:34:37,398 [virtwho.main DEBUG] MainProcess(46530):MainThread @__main__.py:main:19 - virt-who terminated Radek, I'm sorry that machine has been taken by other people. please use this machine(hp-dl2x170g6-01.rhts.eng.bos.redhat.com root/red2015) to check it. I think the key point of this problem is virt-who hasn't get any response from unreachable hyperv when stop virt-who service. Thanks. This issue is now addressed upstream. https://github.com/virt-who/virt-who/commit/38a96bcad56cbb6b4ecc7b5ad4d2c9a07ec970fb Verified it on virt-who-0.17-7.el7.noarch since virt-who can stop normally and it wasn't any error info in the log. Therefore, verified it. Verified version virt-who-0.17-7.el7.noarch subscription-manager-1.17.9-1.el7.x86_64 python-rhsm-1.17.5-1.el7.x86_64 Verified process: 1. Register system to satellite 2. Config virt-who run at hyperv mode and make hyperv server can't reach. [root@dell-t320-01 ~]# cat /etc/sysconfig/virt-who | grep -v ^# | grep -v ^$ VIRTWHO_DEBUG=1 VIRTWHO_HYPERV=1 VIRTWHO_HYPERV_OWNER=ACME_Corporation VIRTWHO_HYPERV_ENV=Library VIRTWHO_HYPERV_SERVER=10.73.5.22 ========>It is not reachable VIRTWHO_HYPERV_USERNAME=administrator VIRTWHO_HYPERV_PASSWORD=Welcome1 3. Restart virt-who service [root@dell-t320-01 ~]# service virt-who restart Redirecting to /bin/systemctl restart virt-who.service 4. Stop virt-who service [root@dell-t320-01 ~]# service virt-who stop Redirecting to /bin/systemctl stop virt-who.service 5. Check virt-who's log [root@dell-t320-01 ~]# tail -f /var/log/rhsm/rhsm.log ==========================Start virt-who=========================== 2016-08-01 23:45:23,238 [virtwho.main DEBUG] MainProcess(109604):MainThread @executor.py:terminate:303 - virt-who is shutting down 2016-08-01 23:45:23,239 [virtwho.hyperv DEBUG] HyperV-1(109611):MainThread @virt.py:run:389 - Virt backend 'hyperv' terminated 2016-08-01 23:45:24,241 [virtwho.main DEBUG] MainProcess(109604):MainThread @__main__.py:main:19 - virt-who terminated 2016-08-01 23:45:37,021 [virtwho.init DEBUG] MainProcess(109673):MainThread @executor.py:__init__:65 - Using config named 'hyperv' 2016-08-01 23:45:37,021 [virtwho.init INFO] MainProcess(109673):MainThread @main.py:main:160 - Using configuration "hyperv" ("hyperv" mode) 2016-08-01 23:45:37,022 [virtwho.init INFO] MainProcess(109673):MainThread @main.py:main:162 - Using reporter_id='hp-dl560egen8-01.khw.lab.eng.bos.redhat.com-802e3ee1794e4d728db29e3f9fbae108' 2016-08-01 23:45:37,024 [virtwho.main DEBUG] MainProcess(109673):MainThread @executor.py:run:171 - Starting infinite loop with 60 seconds interval 2016-08-01 23:45:37,064 [virtwho.hyperv DEBUG] MainProcess(109673):MainThread @hyperv.py:__init__:472 - Hyper-V url: http://10.73.5.21:5985/wsman 2016-08-01 23:45:37,067 [virtwho.hyperv DEBUG] HyperV-1(109680):MainThread @virt.py:run:364 - Virt backend 'hyperv' started ==========================Stop virt-who=========================== 2016-08-01 23:45:51,591 [virtwho.main DEBUG] MainProcess(109673):MainThread @executor.py:terminate:303 - virt-who is shutting down 2016-08-01 23:45:51,591 [virtwho.hyperv DEBUG] HyperV-1(109680):MainThread @virt.py:run:389 - Virt backend 'hyperv' terminated 2016-08-01 23:45:52,594 [virtwho.main DEBUG] MainProcess(109673):MainThread @__main__.py:main:19 - virt-who terminated 6 Check virt-who's thread [root@hp-dl560egen8-01 sysconfig]# ps -ef|grep virt-who root 109730 12254 0 23:45 pts/0 00:00:00 grep --color=auto virt-who Result: Virt-who can stop normally and it hasn't shown any error info in the log. It reproduced on virt-who-0.17-8.el7.noarch when virt-who run at xen mode. It occurred when virt-who hasn't get any response from unreachable xen server before stop virt-who service. Therefore, reopen it. Reproduced version: virt-who-0.17-8.el7.noarch subscription-manager-1.17.10-1.el7.x86_64 python-rhsm-1.17.6-1.el7.x86_64 Reproduced process: 1. Register system to satellite5.7 2. Config virt-who run at xen mode and make xen server can't reach. [root@hp-z220-03 virt-who.d]# cat /etc/virt-who.d/xen [test-xen] type=xen server=10.73.130.246 username=root encrypted_password=cf0fc8adf1684c50644300e7cbd6a113 owner=ACME_Corporation env=Library sat_server=10.73.3.169 ========>It is not reachable sat_username=admin sat_password=redhat hypervisor_id=hwuuid 3. Restart virt-who service [root@dell-t320-01 ~]# service virt-who restart Redirecting to /bin/systemctl restart virt-who.service 4. Stop virt-who service [root@dell-t320-01 ~]# service virt-who stop Redirecting to /bin/systemctl stop virt-who.service 5. Check virt-who's log [root@dell-t320-01 ~]# tail -f /var/log/rhsm/rhsm.log 2016-08-16 04:19:11,659 [virtwho.main DEBUG] MainProcess(24173):MainThread @executor.py:terminate:303 - virt-who is shutting down 2016-08-16 04:19:11,659 [virtwho.test-xen ERROR] Xen-1(24180):MainThread @xen.py:login:60 - Unable to login to XENserver https://10.73.130.246 Traceback (most recent call last): File "/usr/lib/python2.7/site-packages/virtwho/virt/xen/xen.py", line 51, in login self.session.xenapi.login_with_password(self.username, self.password) File "/usr/lib/python2.7/site-packages/virtwho/virt/xen/XenAPI.py", line 260, in __call__ return self.__send(self.__name, args) File "/usr/lib/python2.7/site-packages/virtwho/virt/xen/XenAPI.py", line 152, in xenapi_request self._login(methodname, params) File "/usr/lib/python2.7/site-packages/virtwho/virt/xen/XenAPI.py", line 175, in _login result = _parse_result(getattr(self, 'session.%s' % method)(*params)) File "/usr/lib64/python2.7/xmlrpclib.py", line 1233, in __call__ return self.__send(self.__name, args) File "/usr/lib64/python2.7/xmlrpclib.py", line 1587, in __request verbose=self.__verbose File "/usr/lib/python2.7/site-packages/virtwho/util.py", line 39, in request resp = requests.post(self._url, data=request_body, headers=headers, verify=False) File "/usr/lib/python2.7/site-packages/requests/api.py", line 108, in post return request('post', url, data=data, json=json, **kwargs) File "/usr/lib/python2.7/site-packages/requests/api.py", line 50, in request response = session.request(method=method, url=url, **kwargs) File "/usr/lib/python2.7/site-packages/requests/sessions.py", line 464, in request resp = self.send(prep, **send_kwargs) File "/usr/lib/python2.7/site-packages/requests/sessions.py", line 576, in send r = adapter.send(request, **kwargs) File "/usr/lib/python2.7/site-packages/requests/adapters.py", line 415, in send raise ConnectionError(err, request=request) ConnectionError: ('Connection aborted.', error(4, 'Interrupted system call')) 2016-08-16 04:19:11,660 [virtwho.test-xen DEBUG] Xen-1(24180):MainThread @virt.py:run:389 - Virt backend 'test-xen' terminated 2016-08-16 04:19:12,661 [virtwho.main DEBUG] MainProcess(24173):MainThread @__main__.py:main:19 - virt-who terminated Result: It will show error info "ConnectionError: ('Connection aborted.', error(4, 'Interrupted system call'))" in log. Resolved upstream: https://github.com/virt-who/virt-who/commit/ff2419fd1abda3a5ca3328af88821e7f9b3ed544 Fixed in virt-who-0.17-10.el7. Verified it on virt-who-0.17-10.el7 since Virt-who can stop normally and it hasn't shown any error info in the log. Therefore, verify it. Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHBA-2016-2387.html |