Comments (14)
/remove-kind bug
/retitle download file-size problem when using ingress
- Please format your issue description as per markdown. Its very hard to read and understand the details as it is now
- Please check the docs for any related annotations or configMap configuration
from ingress-nginx.
This issue is currently awaiting triage.
If Ingress contributors determines this is a relevant issue, they will accept it by applying the triage/accepted
label and provide further guidance.
The triage/accepted
label can be added by org members by writing /triage accepted
in a comment.
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.
from ingress-nginx.
/triage needs-information
from ingress-nginx.
Please go through the full description i have mentioned everythings . why you are just closed the bugs without go through properly.
from ingress-nginx.
- i have tested and I can see that I can get the exact same file size that is on the server behind the ingress
% k describe ing httpd
Name: httpd
Labels: <none>
Namespace: default
Address: 192.168.59.101
Ingress Class: nginx
Default backend: <default>
Rules:
Host Path Backends
---- ---- --------
httpd.dev.enjoydevops.com
/ httpd:80 (10.244.0.79:80)
Annotations: <none>
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Sync 104s (x2 over 5d23h) nginx-ingress-controller Scheduled for sync
[~]
% k get po httpd-764dbd796-ggkgj -o yaml | grep -i image:
- image: httpd:alpine
image: docker.io/library/httpd:alpine
-
so the label bug can be applied after there is acceptable data that proves the existence of a bug. wait for someone to reproduce the bug to see the bug label. wrong labels causes problems in tracking the issues so you can help there
-
the title of the issue gets reported in many places so title needs to be short and informative. long sentences are not acceptable as title of a issue because the reports and tracking information gets messed up if the title is actually too long. so do not change the title to a long sentence as a help to others
/retitle download file-size problem when using ingress
-
you can reproduce the problem using a kind cluster or a minikube cluster (while creating a file using dd under the webroot and curling with -o for the file) then post the entire config related to the app and the file and the ingress with -v etc etc
-
the new issue template asks questions that help get the details of the cluster, the controller, the ingress and so on. Edit your issue description so that that information is visible to a reader here in markdown format and also answer any questions that have not been ansewered previously
-
providing the details of your config and internals helps a reader understand your use case and so more chances to help solve your problem. so help out by showing kubectl and curl command outputs as much as possible
from ingress-nginx.
I think you have not getting my question ,
i am describing my issue
- i have deploy my application code in to a docker image.
2)Then same image i am deployed into kuberntes cluster with a load balancer service type.
3)And provide this loadbalancer service to my ingress backend. - So one of the functionality of the application is to upload multipart file which i am provided a image in the (#11026 (comment)) description you can varify , their while uploading it is uploding successfully, but the size of files gets incremented(so my actual size is around 1270296 mb and the size i am gettiing is 2305390mb which i am observing in my logs .
here is the logs i am getting inside pod
time="26-02-2024 11:38:26" level=info msg="File size:2305390 fileName: pan_image.jpg" file="kyc.go:241
"time="26-02-2024 11:38:26" level=info msg="File size:2305390 fileName: pan_image.jpg" file="kyc.go:241"
5)Here to varify if this issue is from ingress or anything else i have used the application load balancer ip which i have created . so while uploading using this loadbalncer ip , i am also getting same exact file size which is 1270296.
here i am replacing the ingress hostaname to load balancer ip
http://21.264.74.91/swagger/dao/index.html#/dao%20V1/post_api_dao_v1_check_uploadImageDigioCheck
here is the logs inside my pod
time="26-02-2024 12:04:09" level=info msg="File size:1270296 fileName: pan_image.jpg" file="kyc.go:241"
time="26-02-2024 12:04:09" level=info msg="File size:1270296 fileName: pan_image.jpg" file="kyc.go:241"
6)the same image i am deploying which i have used in kuberntes cluster i am deploying in to my local system without any ingress while uploading image using api call which is a functionality of my application . here i am getting exact same size.
http://localhost:8080/swagger/dao/index.html#/dao%20V1/post_api_dao_v1_check_uploadImageDigioCheck
logs inside container
time="26-02-2024 12:04:09" level=info msg="File size:1270296 fileName: pan_image.jpg" file="kyc.go:241"
time="26-02-2024 12:04:09" level=info msg="File size:1270296 fileName: pan_image.jpg" file="kyc.go:241"
so , here is my conclusion issue is related to ingress nginx controller, beacause using load balancer ip and using same docker image without ingress when i am uploading multipart file through my application i am getting exact size of file which is 1270296.
from ingress-nginx.
- i have tested and I can see that I can get the exact same file size that is on the server behind the ingress
% k describe ing httpd Name: httpd Labels: <none> Namespace: default Address: 192.168.59.101 Ingress Class: nginx Default backend: <default> Rules: Host Path Backends ---- ---- -------- httpd.dev.enjoydevops.com / httpd:80 (10.244.0.79:80) Annotations: <none> Events: Type Reason Age From Message ---- ------ ---- ---- ------- Normal Sync 104s (x2 over 5d23h) nginx-ingress-controller Scheduled for sync [~] % k get po httpd-764dbd796-ggkgj -o yaml | grep -i image: - image: httpd:alpine image: docker.io/library/httpd:alpine
- so the label bug can be applied after there is acceptable data that proves the existence of a bug. wait for someone to reproduce the bug to see the bug label. wrong labels causes problems in tracking the issues so you can help there
- the title of the issue gets reported in many places so title needs to be short and informative. long sentences are not acceptable as title of a issue because the reports and tracking information gets messed up if the title is actually too long. so do not change the title to a long sentence as a help to others
/retitle download file-size problem when using ingress
- you can reproduce the problem using a kind cluster or a minikube cluster (while creating a file using dd under the webroot and curling with -o for the file) then post the entire config related to the app and the file and the ingress with -v etc etc
- the new issue template asks questions that help get the details of the cluster, the controller, the ingress and so on. Edit your issue description so that that information is visible to a reader here in markdown format and also answer any questions that have not been ansewered previously
- providing the details of your config and internals helps a reader understand your use case and so more chances to help solve your problem. so help out by showing kubectl and curl command outputs as much as possible
Mistake you did
Here what you did to download the file from the host using curl command , but i am not downloading file from the host i am uploading a file using the host. without host i am getting exact file size.
from ingress-nginx.
@kishorpacefin , the info you have posted is clear to understand. Your problem is file size increase when using ingres
- What is not clear is the details
- What is required is the details in the form of outputs of kubectl command and hopefully curl command as well as `linux ls -lth1 etc etc
- I showed you an example of a test using download because it is easy. So you can do a similar test for upload and write the reproduce steps here so a reader can reproduce the problem on their own cluster
- In a new browser, click the button to create new bug report for this project and look at the qestions asked there. Then look at the issue description you have provided. You will find that neither all questions are answered and whatever info provided is very very hard to read or understand because it not formatted in markdown. Fix that and improve the issue description so readers can make helpful comments
from ingress-nginx.
@kishorpacefin , the info you have posted is clear to understand. Your problem is file size increase when using ingres
- What is not clear is the details
- What is required is the details in the form of outputs of kubectl command and hopefully curl command as well as `linux ls -lth1 etc etc
- I showed you an example of a test using download because it is easy. So you can do a similar test for upload and write the reproduce steps here so a reader can reproduce the problem on their own cluster
- In a new browser, click the button to create new bug report for this project and look at the qestions asked there. Then look at the issue description you have provided. You will find that neither all questions are answered and whatever info provided is very very hard to read or understand because it not formatted in markdown. Fix that and improve the issue description so readers can make helpful comments
okay , sorry for my mistake, later i will try to provide you with every details
here i am uploading multipart file using curl with load balancer ip using ingress hostname
1)Here is my ingress hostname curl command and it's output (here i have given wrong url name so just ignore the url )
curl -X 'POST' 'https://abc.com/api/dao/v1/check/uploadImageDigioCheck' -H 'accept: application/json' -H 'P-DeviceType: web' -H 'Content-Type: multipart/form-data' -F 'file1=@/home/pace/Downloads/pan_image.jpg;type=image/jpeg' -F 'file2=@/home/pace/Downloads/pan_image.jpg;type=image/jpeg'
File uploaded successfullyFile uploaded successfully
2)here is the response in my application ui if you want
access-control-allow-credentials: true
access-control-allow-headers: Content-Type,Content-Length,Accept-Encoding,X-CSRF-Token,Authorization,X-Max
access-control-allow-methods: POST,GET,PUT,DELETE,UPDATE
access-control-allow-origin: *
access-control-max-age: 86400
content-length: 52
content-type: application/json
date: Tue,27 Feb 2024 08:58:55 GMT
via: 1.1 93882c19d869a346304c.cloudfront.net (CloudFront)
x-amz-apigw-id: TyacfHbzQ=
x-amz-cf-id: BRQaBrq9GYJqZZ_QB8Oun7CbW9_Z8u_86AtA==
x-amz-cf-pop: DEL54-P4
x-amzn-remapped-connection: keep-alive
x-amzn-remapped-content-length: 52
x-amzn-remapped-date: Tue,27 Feb 2024 08:58:55 GMT
x-amzn-requestid: f98db4ba-499a-4cf8-b3f-15897c60
x-cache: Miss from cloudfront
here it will go to like this first go to dns name ----> route 53----> api gateway----> then ingress----> backend service
- here you can see my file size inside pod
-rw-r--r-- 1 root root 2305390 Feb 27 09:52 pan_image.jpg
here i am uploading multipart file using curl with load balancer ip
4)same i am uploading with using loadbalancer service ip my file got uploaded successfully and also i am getting exact size.(here igone the ip i am giving wrong load balancer ip address)
curl -X 'POST' 'http://21.264.74.91/api/dao/v1/check/uploadImageDigioCheck' -H 'accept: application/json' -H 'P-DeviceType: web' -H 'Content-Type: multipart/form-data' -F 'file1=@/home/pace/Downloads/pan_image.jpg;type=image/jpeg' -F 'file2=@/home/pace/Downloads/pan_image.jpg;type=image/jpeg'
File uploaded successfullyFile uploaded successfully
- here is the response in my application ui if you want
access-control-allow-credentials: true
access-control-allow-headers: Content-Type,Content-Length,Accept-Encoding,X-CSRF-Token,Authorization,X-Max
access-control-allow-methods: POST,GET,PUT,DELETE,UPDATE
access-control-allow-origin: *
access-control-max-age: 86400
content-length: 52
content-type: application/json
date: Tue,27 Feb 2024 10:14:01 GMT
here is the difference is it is going like load balancer ip ------> then application deployment
- here you can my file size inside pod
rw-r--r-- 1 root root 1270296 Feb 27 10:14 pan_image.jpg
from ingress-nginx.
/retitle uploading file via ingress increases size of file
from ingress-nginx.
@longwuyuan Any update or finding regarding this issue ?
from ingress-nginx.
@kishorpacefin no. My reasons are
- I can't get a precise idea of the test environment I would need to test upload
- I am also waiting to see if anyone else will report the same problem
- I can not guess if there is a part of the controller code that specifically plays out to increase a upload file size
from ingress-nginx.
Please go through the full description i have mentioned everythings, why you are just closed the bugs without go through properly.
Because you haven't put any effort to make your issue readable?
Because you haven't followed suggestion posted in #11026 (comment) to re-format your issue according to https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax, so it does not look like a pile of mess and a human being has a chance to actually make sense of it?
Garbage in, garbage out, simple as that.
from ingress-nginx.
This is stale, but we won't close it automatically, just bare in mind the maintainers may be busy with other tasks and will reach your issue ASAP. If you have any question or request to prioritize this, please reach #ingress-nginx-dev
on Kubernetes Slack.
from ingress-nginx.
Related Issues (20)
- use-proxy-protocol for SSL passthrough breaks HTTP HOT 27
- checkOverlap is a little loose. HOT 6
- How to instrument NGINX with OpenTelemetry HOT 3
- externalTrafficPolciy and healthprobe HOT 5
- nginx_status block configuration HOT 3
- Custom-error page is not working HOT 3
- error page for response code 302 HOT 6
- Option to skip the rbac creation in admission-webhooks HOT 1
- Download via Ingress Nginx super slow compared to External IP or NodePort HOT 20
- Kafka Broker Cannot Access Outside Kubernetes Cluster via ClusterIP Services HOT 1
- Open Telemetry can not collect header request and body HOT 1
- LanguageSpecificPackageVulnerability HOT 4
- Vulnerability (CVE-2022-27782) in the curl package HOT 2
- Add option to forbid plain http requests (where ssl-redirect is unsafe) HOT 3
- Kubectl plugin backends does not show backends for TCP and UDP services HOT 1
- [Vulnerabilities] current version of nginx-ingress-controller v1.10.1 has many vulnerabilties HOT 6
- Question: why the case insensitive regular expression location modifier will be enforced on ALL paths If the use-regex is set HOT 12
- Nginx version 1.25.3 is End Of Life HOT 5
- Add a few more http headers to custom-error-pages default backend requests HOT 2
- TLS passthrough fails if Client Hello is fragmented in multiple TCP packets. HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ingress-nginx.