Skip to content

Use Shriram's env for better upgrade fix.#6894

Merged
costinm merged 3 commits intoistio:release-1.0from
costinm:10-upgrade
Jul 9, 2018
Merged

Use Shriram's env for better upgrade fix.#6894
costinm merged 3 commits intoistio:release-1.0from
costinm:10-upgrade

Conversation

@costinm
Copy link
Copy Markdown
Contributor

@costinm costinm commented Jul 6, 2018

The reminder of the upgrade fix - RDS routes, plus conditionals on the new node environment that
detects 1.0.

With this a 0.8 sidecar will accept all configs from 1.0 pilot - so prod can be upgraded/rolled without traffic lost.

For now just using the presence of the env - in 1.1 we may refine this and use per-plugin or capabilities.

As a reminder, upgrade is critical, there are users with 0.8 in production and in google (and everywhere else) ability to gradually roll a new version is required.

@istio-testing istio-testing requested review from kyessenov and wattli July 6, 2018 21:29
@istio-testing istio-testing added approved needs-rebase Indicates a PR needs to be rebased before being merged labels Jul 6, 2018
@costinm costinm changed the base branch from master to release-1.0 July 6, 2018 21:29
@googlebot
Copy link
Copy Markdown
Collaborator

So there's good news and bad news.

👍 The good news is that everyone that needs to sign a CLA (the pull request submitter and all commit authors) have done so. Everything is all good there.

😕 The bad news is that it appears that one or more commits were authored or co-authored by someone other than the pull request submitter. We need to confirm that all authors are ok with their commits being contributed to this project. Please have them confirm that here in the pull request.

Note to project maintainer: This is a terminal state, meaning the cla/google commit status will not change from this state. It's up to you to confirm consent of the commit author(s) and merge this pull request when appropriate.

@googlebot googlebot added the cla: no Set by the Google CLA bot to indicate the author of a PR has not signed the Google CLA. label Jul 6, 2018
@googlebot
Copy link
Copy Markdown
Collaborator

CLAs look good, thanks!

@googlebot googlebot added cla: yes and removed cla: no Set by the Google CLA bot to indicate the author of a PR has not signed the Google CLA. labels Jul 6, 2018
@istio-testing
Copy link
Copy Markdown
Collaborator

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: costinm

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@codecov
Copy link
Copy Markdown

codecov bot commented Jul 6, 2018

Codecov Report

Merging #6894 into release-1.0 will decrease coverage by 1%.
The diff coverage is n/a.

Impacted file tree graph

@@             Coverage Diff              @@
##           release-1.0   #6894    +/-   ##
============================================
- Coverage           71%     71%   -<1%     
============================================
  Files              370     371     +1     
  Lines            31663   32010   +347     
============================================
+ Hits             22305   22540   +235     
- Misses            8433    8540   +107     
- Partials           925     930     +5
Impacted Files Coverage Δ
...olarwinds/internal/papertrail/papertrail_logger.go 62% <0%> (-18%) ⬇️
pilot/pkg/config/memory/monitor.go 82% <0%> (-9%) ⬇️
mixer/adapter/servicecontrol/utils.go 90% <0%> (-3%) ⬇️
mixer/adapter/redisquota/redisquota.go 88% <0%> (-2%) ⬇️
mixer/adapter/statsd/statsd.go 96% <0%> (-1%) ⬇️
mixer/adapter/circonus/circonus.go 71% <0%> (ø) ⬇️
mixer/adapter/prometheus/prometheus.go 100% <0%> (ø) ⬆️
pkg/util/webhookclient.go 0% <0%> (ø) ⬆️
mixer/adapter/memquota/rollingWindow.go 100% <0%> (ø) ⬆️
mixer/adapter/stdio/stdio.go 100% <0%> (ø) ⬆️
... and 10 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update f74b2e8...0f0dbf7. Read the comment docs.

@istio-testing istio-testing removed the needs-rebase Indicates a PR needs to be rebased before being merged label Jul 6, 2018
@rshriram
Copy link
Copy Markdown
Member

rshriram commented Jul 7, 2018

@kyessenov or @Mandar-Jog ?

func modifyOutboundRouteConfig(in *plugin.InputParams, httpRoute route.Route) route.Route {
if !has10Config(in.Node) {
return httpRoute
}
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

why this short circuiting? we had per-filter config stuff in 0.8

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Are you sure ? I saw errors on 0.8 accepting routes.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

@qiwzhang / @kyessenov ^^^ .. I distinctly remember that the mixer was the first to get the per-route filter config.

Copy link
Copy Markdown
Member

@rshriram rshriram left a comment

Choose a reason for hiding this comment

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

LGTM mostly. Not sure about one particular change.

@kyessenov
Copy link
Copy Markdown
Contributor

kyessenov commented Jul 9, 2018 via email

@costinm
Copy link
Copy Markdown
Contributor Author

costinm commented Jul 9, 2018

type.googleapis.com/envoy.api.v2.RouteConfiguration rejected: Unable to parse JSON as proto (INVALID_ARGUMENT:: Cannot find field.): {"forward_attributes":{"attributes":{"destination.service":{"string_value":"istio-ilbgateway.istio-system.svc.cluster.local"},"destination.service.host":{"string_value":"istio-ilbgateway.istio-system.svc.cluster.local"}}},"mixer_attributes":{"attributes":{"destination.service":{"string_value":"istio-ilbgateway.istio-system.svc.cluster.local"},"destination.service.host":{"string_value":"istio-ilbgateway.istio-system.svc.cluster.local"}}},"disable_check_calls":true}

@costinm
Copy link
Copy Markdown
Contributor Author

costinm commented Jul 9, 2018

After enabling the config we're discussing I got the error above.
How about someone who is familiar with 080 config generation makes a separate PR to generate whatever attributes are needed - maybe per route works but only some of the attributes are supported.

@kyessenov
Copy link
Copy Markdown
Contributor

kyessenov commented Jul 9, 2018 via email

@costinm
Copy link
Copy Markdown
Contributor Author

costinm commented Jul 9, 2018

Ok, will add it back in separate PR, so this part can get into today build. I doubt lots of people will test the upgrade in next build or notice the missing metrics.

@costinm costinm merged commit 58cdc94 into istio:release-1.0 Jul 9, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants