Bug 1368002

Summary: [WALA] HttpProxy configuration doesn't work in waagent
Product: Red Hat Enterprise Linux 7 Reporter: Yuxin Sun <yuxisun>
Component: WALinuxAgentAssignee: Yuxin Sun <yuxisun>
Status: CLOSED CURRENTRELEASE QA Contact: Virtualization Bugs <virt-bugs>
Severity: medium Docs Contact:
Priority: medium    
Version: 7.3CC: anderson, bihan, borisb, brendand, danis, hkrijger, jopoulso, leiwang, stephen.zarkos, wshi, yuxisun
Target Milestone: rcKeywords: Extras, Tracking
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-11-04 08:25:21 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:
Bug Depends On:    
Bug Blocks: 1387783    

Description Yuxin Sun 2016-08-18 06:04:43 UTC
This is a bug used to track github issue: https://github.com/Azure/WALinuxAgent/issues/364

Comment 2 Dave Anderson 2016-08-18 13:17:38 UTC
Sounds like this wasn't a bug in 2.0.16 (current rhel7 version), but is a bug
in the proposed 2.1.5 rebase?

Comment 3 Yuxin Sun 2016-08-19 02:39:14 UTC
In case there's no steps in the github issue. Write the steps here.


Description of problem:
"HttpProxy" configuration in /etc/waagent.conf doesn't work. The waagent connect to Azure Server directly.

Version-Release number of selected component (if applicable):
WALinuxAgent-2.1.5 (upstream, package by tester)

RHEL Version:
RHEL-7.3-20160729.1

How reproducible:
100%

Steps to Reproduce:
1. Prepare a VM on Azure with squid installed. Prepare a RHEL7.3 VM on Azure. These 2 VMs are in the same Virtual Network. Make sure that the client VM can connect to the Internet through the squid proxy, such as:
# wget -e "http_proxy=[squid VM private IP]:3128" http://www.baidu.com
Can download index.html successfully.
2. Change HttpProxy configurations in /etc/waagent.conf at the client VM:
HttpProxy.Host=[squid VM private IP]
HttpProxy.Port=3128
3. restart waagent service
# systemctl restart waagent
3. Catch packages at the squid VM and the client VM:
#tcpdump -s 0 -A 'tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x47455420'


Actual results:
Client VM: Can catch packages sent by waagent.
Squid VM: No packages come from client VM are catched.

Expected results:
Squid VM: Can capture upload blob packages at proxy.


Additional info:
1. It works well in WALA-2.0.16.
2. The root cause is that the PUT block/page blob request doesn't use proxy(wire.py Line 390 and 410), which do use proxy in 2.0.16.

Comment 4 Yuxin Sun 2016-10-27 08:22:18 UTC
Verify in WALA-2.2.0 RHEL-7.3-20161019.0. 
Can catch upload blob packages on the proxy machine.

Comment 5 Yuxin Sun 2016-11-04 08:25:21 UTC

*** This bug has been marked as a duplicate of bug 1387783 ***