-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
velero v1.2.0 --dry-run -o yaml inserts "nullable" in generated kube manifest files #2077
Comments
Maybe for k8s < 1.14 we could get the older CRDs installed? |
@kzap Thanks for the response and info. These particular clusters are EKS, so we are usually a few kube versions back due to AWS EKS release cycles. We are currently using helm templated install/configuration (from stable helm charts), but the caveat to that method is that it currently deploys an older version (1.1.0) of velero: velero stable helm chart install/config via velero helm stable chart:
|
cc @prydonius |
Hey All, just wanting to validate as @kzap noted above. We've upgraded the kube cluster to 1.4 and now we can use the documented velero binary template functionality to generate the large monolithic manifest file and apply to kube within our IAC code/scripts without errors. script excerpt:
the generated manifest file is later applied with kubectl apply without errors with the nullable in the manifest file
Hope this helps/validates, etc. |
@cmcconnell1 thanks for the info. I've tried to repro this in GKE on a 1.13 cluster and I didn't run into any issues (#2060 (comment)). I'll try to reproduce this on AWS. Also, just FYI, this PR should land soon and you'll be able to use the Helm chart to deploy Velero v1.2.0: helm/charts#18492. |
Interesting. Thanks for following-up and working on this @prydonius |
@cmcconnell1 I wasn't able to reproduce this on a v1.13.12 cluster on AWS using kops. Looks like you're using EKS, so I'll give that a try too.
|
Ah, I just realised I've been letting the Velero CLI directly install everything. If I use dry-run and pipe the output to It seems like Let me take a look at where I'm not too concerned about this particular validation error, since the CRDs do seem to work in v1.13 once applied with |
@cmcconnell1 any reason you are piping to |
Looks like Given the API server does a full validation anyway (kubernetes/kubernetes#64830), I don't think |
Our IAC patterns for everything possible is essentially:
I try to keep the anticipated code/model the same (i.e. avoid one-offs that might deviate from our model) to prevent confusion, continue to keep us as efficient as possible, etc. I was unaware that this might have unexpected/undesired side effects with velero specifically. If it does, please let me know and I will definitely refactor if required. Thanks! |
@cmcconnell1 Understood, I figured it might be something like that. Is it possible in your pipeline for you to set Also, the Helm chart now supports v1.2.0, so you could move to that to solve this as well. |
We likely could, however, please see below.
Yes, we are unblocked having upgraded our kube clusters to 1.4.x
We've moved forward with our IAC-based deployment scripts, based on the code excerpt noted in previous responses. Thanks again. |
@cmcconnell1 thanks for the info, glad this is resolved for you. @kzap does the above workaround work for you, or is this still an issue for you? |
I see there are workaround for this. @prydonius do you think there's an action item for Velero in terms of either documenting or making a change to make this work with k8s < 1.14? |
@carlisia I'm not sure there's a great place to document this right now, but the workaround is if you're trying to do a |
We could probably mention it in this section: https://github.com/vmware-tanzu/velero/blob/master/site/docs/master/customize-installation.md#generate-yaml-only |
Ah of course, yeah that would certainly be the best place to put that. Thanks @skriss! |
moved this over to the release backlog as a nice-to-have documentation item. |
We instruct users to update the CRDs when upgrading to 1.4 and 1.5 which involves using `kubectl apply` to apply the CRD configuration. The CRD configuration generated by `velero install` includes fields which are not valid when running Kubernetes v1.14 or earlier. We instruct users to work around this when doing a customised velero install, but not when upgrading to newer versions. This change updates the upgrade instructions for v1.4 and v1.5 to include the use of `--validate=false` flag when running `kubectl apply`. See vmware-tanzu#2077 and vmware-tanzu#2311 for more context. Signed-off-by: Bridget McErlean <[email protected]>
We instruct users to update the CRDs when upgrading to 1.4 and 1.5 which involves using `kubectl apply` to apply the CRD configuration. The CRD configuration generated by `velero install` includes fields which are not valid when running Kubernetes v1.14 or earlier. We instruct users to work around this when doing a customised velero install, but not when upgrading to newer versions. This change updates the upgrade instructions for v1.4 and v1.5 to include the use of `--validate=false` flag when running `kubectl apply`. See vmware-tanzu#2077 and vmware-tanzu#2311 for more context. Signed-off-by: Bridget McErlean <[email protected]>
We instruct users to update the CRDs when upgrading to 1.4 and 1.5 which involves using `kubectl apply` to apply the CRD configuration. The CRD configuration generated by `velero install` includes fields which are not valid when running Kubernetes v1.14 or earlier. We instruct users to work around this when doing a customised velero install, but not when upgrading to newer versions. This change updates the upgrade instructions for v1.4 and v1.5 to include the use of `--validate=false` flag when running `kubectl apply`. See #2077 and #2311 for more context. Signed-off-by: Bridget McErlean <[email protected]>
We instruct users to update the CRDs when upgrading to 1.4 and 1.5 which involves using `kubectl apply` to apply the CRD configuration. The CRD configuration generated by `velero install` includes fields which are not valid when running Kubernetes v1.14 or earlier. We instruct users to work around this when doing a customised velero install, but not when upgrading to newer versions. This change updates the upgrade instructions for v1.4 and v1.5 to include the use of `--validate=false` flag when running `kubectl apply`. See vmware-tanzu#2077 and vmware-tanzu#2311 for more context. Signed-off-by: Bridget McErlean <[email protected]>
We instruct users to update the CRDs when upgrading to 1.4 and 1.5 which involves using `kubectl apply` to apply the CRD configuration. The CRD configuration generated by `velero install` includes fields which are not valid when running Kubernetes v1.14 or earlier. We instruct users to work around this when doing a customised velero install, but not when upgrading to newer versions. This change updates the upgrade instructions for v1.4 and v1.5 to include the use of `--validate=false` flag when running `kubectl apply`. See vmware-tanzu#2077 and vmware-tanzu#2311 for more context. Signed-off-by: Bridget McErlean <[email protected]>
We instruct users to update the CRDs when upgrading to 1.4 and 1.5 which involves using `kubectl apply` to apply the CRD configuration. The CRD configuration generated by `velero install` includes fields which are not valid when running Kubernetes v1.14 or earlier. We instruct users to work around this when doing a customised velero install, but not when upgrading to newer versions. This change updates the upgrade instructions for v1.4 and v1.5 to include the use of `--validate=false` flag when running `kubectl apply`. See vmware-tanzu#2077 and vmware-tanzu#2311 for more context. Signed-off-by: Bridget McErlean <[email protected]>
We instruct users to update the CRDs when upgrading to 1.4 and 1.5 which involves using `kubectl apply` to apply the CRD configuration. The CRD configuration generated by `velero install` includes fields which are not valid when running Kubernetes v1.14 or earlier. We instruct users to work around this when doing a customised velero install, but not when upgrading to newer versions. This change updates the upgrade instructions for v1.4 and v1.5 to include the use of `--validate=false` flag when running `kubectl apply`. See vmware-tanzu#2077 and vmware-tanzu#2311 for more context. Signed-off-by: Bridget McErlean <[email protected]>
We instruct users to update the CRDs when upgrading to 1.4 and 1.5 which involves using `kubectl apply` to apply the CRD configuration. The CRD configuration generated by `velero install` includes fields which are not valid when running Kubernetes v1.14 or earlier. We instruct users to work around this when doing a customised velero install, but not when upgrading to newer versions. This change updates the upgrade instructions for v1.4 and v1.5 to include the use of `--validate=false` flag when running `kubectl apply`. See vmware-tanzu#2077 and vmware-tanzu#2311 for more context. Signed-off-by: Bridget McErlean <[email protected]>
We instruct users to update the CRDs when upgrading to 1.4 and 1.5 which involves using `kubectl apply` to apply the CRD configuration. The CRD configuration generated by `velero install` includes fields which are not valid when running Kubernetes v1.14 or earlier. We instruct users to work around this when doing a customised velero install, but not when upgrading to newer versions. This change updates the upgrade instructions for v1.4 and v1.5 to include the use of `--validate=false` flag when running `kubectl apply`. See vmware-tanzu#2077 and vmware-tanzu#2311 for more context. Signed-off-by: Bridget McErlean <[email protected]>
What steps did you take and what happened:
generate kube manifest files from the velero binary and then attempt to apply to cluster via
kubectl apply
Note: there are ~15 more errors like above for every 'nullable' reference autogenerated in the velero manifest files...
Anything else you would like to add:
Environment:
velero client config get features
):kubectl version
):Kubernetes installer & version:
terraform-eks-module
OS (e.g. from
/etc/os-release
):Thank you.
The text was updated successfully, but these errors were encountered: