Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge proxy_init image with proxyv2 image #17615

Merged
merged 9 commits into from
Oct 9, 2019

Conversation

howardjohn
Copy link
Member

Part of #17518

Benefits:

  • 1 less image to worry about
  • Only pull a single image. This means the pull will be finished during
    the init, rather than during pod startup. This means Envoy can get ready
    quicker and have less chance of the application starting up before it
    and failing requests

Please provide a description for what this PR is for.

And to help us figure out who should review this PR, please
put an X in all the areas that this PR affects.

[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure

Part of istio#17518

Benefits:
* 1 less image to worry about
* Only pull a single image. This means the pull will be finished during
the init, rather than during pod startup. This means Envoy can get ready
quicker and have less chance of the application starting up before it
and failing requests
@istio-testing istio-testing added the do-not-merge/work-in-progress Block merging of a PR because it isn't ready yet. label Oct 4, 2019
@googlebot googlebot added the cla: yes Set by the Google CLA bot to indicate the author of a PR has signed the Google CLA. label Oct 4, 2019
@istio-testing istio-testing added the size/M Denotes a PR that changes 30-99 lines, ignoring generated files. label Oct 4, 2019
@istio-testing istio-testing added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. and removed size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Oct 4, 2019
@howardjohn
Copy link
Member Author

/retest

@howardjohn howardjohn marked this pull request as ready for review October 4, 2019 21:34
@istio-testing istio-testing removed the do-not-merge/work-in-progress Block merging of a PR because it isn't ready yet. label Oct 4, 2019
@howardjohn howardjohn requested review from a team as code owners October 4, 2019 21:34
Copy link
Contributor

@rlenglet rlenglet left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is great!

tools/istio-docker.mk Show resolved Hide resolved
@howardjohn
Copy link
Member Author

howardjohn commented Oct 4, 2019 via email

@howardjohn
Copy link
Member Author

@rlenglet github UI is acting weird, everything should be good now. They all need the bash iptables but only proxyv2 needs the golang version

@rlenglet
Copy link
Contributor

rlenglet commented Oct 5, 2019

They all need the bash iptables but only proxyv2 needs the golang version

Yes, you should be good now.

@howardjohn
Copy link
Member Author

/retest

@howardjohn
Copy link
Member Author

@istio/wg-environments-maintainers please take a look

costinm
costinm previously requested changes Oct 7, 2019
Copy link
Contributor

@costinm costinm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please change back the name - no need to make docker image inconsistent with .deb ( the .sh at the end).

I'm worried about the .so replacement - but let's see how it goes. It's a problem for distroless in general.

@costinm
Copy link
Contributor

costinm commented Oct 7, 2019

" That means the Dockerfile ENTRYPOINT command, when defined, must be specified in vector form, to avoid the container runtime prefixing with a shell." 
"ENTRYPOINT ["myapp"]"

@costinm
Copy link
Contributor

costinm commented Oct 7, 2019

So it seems the official way to add .deb packages is our friend Bazel...
https://github.com/bazelbuild/rules_docker#container_image-1

I really hope the base distroless image for Istio proxy will be generated from a different repo ( tools,etc) so we don't add a bazel dep if we have to..). Maybe even do it in the proxy repo, so that proxy builds also generate a distroless-base image where we can just add the agent ? For now it's probably ok to go with your hack of blindly copying all .so files...

@howardjohn
Copy link
Member Author

Talked with @costinm , will use istio-iptables (no .sh) everywhere, and make sure all usages for VMs are updated for this. For now will keep the distroless hack since it is existing, but opened an issue to track improvement

@kyessenov
Copy link
Contributor

I think it makes for the proxy repo to produce all repo artifacts (deb packages and docker images).
For that to happen, agent and iptables need to be decoupled from istio/istio and integrated into proxy build system.

@howardjohn
Copy link
Member Author

/retest

failures seem infrastructural

@howardjohn
Copy link
Member Author

/retest

@howardjohn howardjohn dismissed costinm’s stale review October 7, 2019 22:14

discussed offline

@howardjohn
Copy link
Member Author

/retest

@howardjohn
Copy link
Member Author

failed to export image: failed to create image: failed to get layer sha256:226f3eff3002042707a9f31eb68b8255ac9c23ccf4591aba9931c10c822226eb: layer does not exist?? not sure how this could happen.. docker on the node may be broken

/retest

@howardjohn
Copy link
Member Author

/test pilot-multicluster-e2e_istio

@howardjohn
Copy link
Member Author

/retest

@howardjohn
Copy link
Member Author

/retest

@howardjohn
Copy link
Member Author

/retest

@istio-testing
Copy link
Collaborator

istio-testing commented Oct 9, 2019

@howardjohn: The following test failed, say /retest to rerun them all:

Test name Commit Details Rerun command
racetest_istio 2a3a034 link /test racetest_istio

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. I understand the commands that are listed here.

@howardjohn
Copy link
Member Author

/retest

@istio-testing istio-testing merged commit b4e86c3 into istio:master Oct 9, 2019
rlenglet added a commit that referenced this pull request Jan 8, 2020
howardjohn added a commit to howardjohn/istio that referenced this pull request Jan 12, 2020
brian-avery pushed a commit to brian-avery/istio that referenced this pull request Mar 4, 2020
brian-avery pushed a commit to brian-avery/istio that referenced this pull request Mar 4, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cla: yes Set by the Google CLA bot to indicate the author of a PR has signed the Google CLA. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

8 participants