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

Failed to start the resizer container due to misinterpretation of the cephcsi version #5073

Closed
yanchicago opened this issue Mar 24, 2020 · 1 comment
Assignees
Projects
Milestone

Comments

@yanchicago
Copy link

Is this a bug report or feature request?

  • Bug Report

Deviation from expected behavior:
The csi-rbdplugin-provisioner pod failed to start the resizer container due to mis-interpretation of the cephcsi version if the image registry includes ":" as part of name. i.e., "bcmt-registry:5000/csi/cephcsi:v2.0.0".

Expected behavior:
The cephcsi version can be parsed differently to get the correct cephcsi version. So the resizer container can be started as part of csi-rbdplugin-provisioner pod.
Would like to know if there's any workaround without changing the registry name.

How to reproduce it (minimal and precise):

Deploy rook 1.2.5/ceph14.2.7 and cephcsi v2.0.0 version. The cephcsi's image registry has ":" as part of its name. The csi-rbdplugin-provisioner pod starts with 5 containers without resizer container.

The code failed at file " ./operator/ceph/csi/spec.go" line 230. The version should be in the last element: [len(csiPluginImage)-1], not necessarily the hardcoded 2nd element.
Any possible to include the above code change? The similar issue happened at line 222 as well.

csiPluginImage := strings.Split(CSIParam.CSIPluginImage, ":")
        // as ceph-csi v2.x.x support resizer, enable it
        if len(csiPluginImage) > 1 {
                **if strings.HasPrefix(csiPluginImage[1], "v2.") {**
                        tp.EnableResizer = true
                }
        }

File(s) to submit:

  • Cluster CR (custom resource), typically called cluster.yaml, if necessary
  • Operator's logs, if necessary
  • Crashing pod(s) logs, if necessary

To get logs, use kubectl -n <namespace> logs <pod name>
When pasting logs, always surround them with backticks or use the insert code button from the Github UI.
Read Github documentation if you need help.

Environment:

  • OS (e.g. from /etc/os-release):
  • Kernel (e.g. uname -a):
  • Cloud provider or hardware configuration:
  • Rook version (use rook version inside of a Rook Pod): 1.2.5
  • Storage backend version (e.g. for ceph do ceph -v): 14.2.7
  • Kubernetes version (use kubectl version): v1.17
  • Kubernetes cluster type (e.g. Tectonic, GKE, OpenShift):
  • Storage backend status (e.g. for Ceph use ceph health in the Rook Ceph toolbox):
@yanchicago yanchicago added the bug label Mar 24, 2020
@yanchicago yanchicago changed the title The operator Failed to start the resizer container due to misinterpretation of the cephcsi version Mar 24, 2020
@Madhu-1 Madhu-1 self-assigned this Mar 24, 2020
@Madhu-1 Madhu-1 added the csi label Mar 24, 2020
@travisn travisn added this to To do in v1.2 via automation Mar 24, 2020
@travisn travisn added this to the 1.2 milestone Mar 24, 2020
@jbw976 jbw976 moved this from To do to Review in progress in v1.2 Mar 24, 2020
@travisn
Copy link
Member

travisn commented Mar 31, 2020

Released in v1.2.7

@travisn travisn closed this as completed Mar 31, 2020
v1.2 automation moved this from Review in progress to Done Mar 31, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
No open projects
v1.2
  
Done
Development

No branches or pull requests

3 participants