Appmesh-controller getting Timeout error in k8s deployment logs in corporate proxy
- Dominant language
- Mustache
- Stars
- 1.3k
- Forks
- 1.1k
- Avg merge
- 22m
- Merged PRs (30d)
- 5
Description
Hi Team,
I am trying to implement the Appmesh in AWS EKS cluster so while deployment of appmesh controller using helm chart getting an below error.
I am running below command to create the controller.
**helm upgrade -i appmesh-controller eks/appmesh-controller --namespace appmesh-system --set image.repository=840364872350.dkr.ecr.eu-central-1.amazonaws.com/amazon/appmesh-controller --set sidecar.image.repository=840364872350.dkr.ecr.eu-central-1.amazonaws.com/aws-appmesh-envoy --set init.image.repository=840364872350.dkr.ecr.eu-central-1.amazonaws.com/aws-appmesh-proxy-route-manager**
It is running successful but upon checking the logs found that
**Warning ReconcileError 40m Mesh RequestError: send request failed
caused by: Get "https://appmesh.eu-central-1.amazonaws.com/v20190125/meshes/my-mesh": dial tcp 18.197.48.127:443: i/o timeout
Warning ReconcileError 8m35s (x3 over 24m) Mesh RequestError: send request failed
caused by: Get "https://appmesh.eu-central-1.amazonaws.com/v20190125/meshes/my-mesh": dial tcp 52.58.163.121:443: i/o timeout
Warning ReconcileError 33s (x2 over 32m) Mesh RequestError: send request failed
caused by: Get "https://appmesh.eu-central-1.amazonaws.com/v20190125/meshes/my-mesh": dial tcp 18.185.122.110:443: i/o timeout**
so when i check the endpoint URL via curl into same server with corporate proxy as i am doing poc into my company aws account.
with curl i am able to reach the URL but via K8s pod/deployment i am not able to successful get the controller logs.
curl response:
[NQ10037598@ip-10-170-57-92 appmesh-controller]$ curl -vvv https://appmesh.eu-central-1.amazonaws.com/v20190125/meshes/my-mesh
* Uses proxy env variable https_proxy == 'http://XXXXX:8080'
* Trying XXXX:8080...
* Connected to 10.169.127.8 (10.169.127.8) port 8080 (#0)
* allocate connect buffer!
* Establish HTTP proxy tunnel to appmesh.eu-central-1.amazonaws.com:443
> CONNECT appmesh.eu-central-1.amazonaws.com:443 HTTP/1.1
> Host: appmesh.eu-central-1.amazonaws.com:443
> User-Agent: curl/7.79.1
> Proxy-Connection: Keep-Alive
>
< **HTTP/1.1 200 Connection established**
<
* Proxy replied 200 to CONNECT request
* CONNECT phase completed!
* ALPN, offering h2
* ALPN, offering http/1.1
* Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH
* successfully set certificate verify locations:
* CAfile: /etc/pki/tls/certs/ca-bundle.crt
* CApath: none
also i have check the helm chart values.yaml file into env variable is mention but somehow it is not working, can you please help me how i should pass corporate proxy environment variable during deployment of appmesh-controller.
Contributor guide
Research direction
Start with the chart's values.yaml and the helm upgrade command shown, then inspect how proxy environment variables reach the appmesh-controller pod. Compare the pod's network behavior with the host curl output. Done means the deployed controller can reach the App Mesh endpoint through the corporate proxy without timeout errors.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws, helm, kubernetes
- Domain
- cloud, devops
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100