aws / aws/eks-charts

Appmesh-controller getting Timeout error in k8s deployment logs in corporate proxy

Open
#867 5 comments 0 reactions 0 assignees View on GitHub
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.