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

Upgrade mojaloop helm charts to use helm version 3.0.0 #1070

Closed
12 of 14 tasks
elnyry-sam-k opened this issue Nov 21, 2019 · 10 comments
Closed
12 of 14 tasks

Upgrade mojaloop helm charts to use helm version 3.0.0 #1070

elnyry-sam-k opened this issue Nov 21, 2019 · 10 comments
Assignees
Labels
Milestone

Comments

@elnyry-sam-k
Copy link
Member

elnyry-sam-k commented Nov 21, 2019

Goal:

As a maintainer of ML OSS
I want to upgrade helm charts to version 3.0.0
so that the latest features in helm 3.0.0 can be used and to ensure that the charts are up-to-date

Tasks:

  • Upgrade mojaloop helm charts to helm 3.0.0
    • Get background information regarding migration requirement, steps and potential issues [@oderayi]
    • Update charts to Helm v3 [@oderayi]
    • Local simulation/test of the process [@oderayi]
    • Investigate backward compatibility with Helm v3 with existing charts (i.e. without changes, with default values) [@oderayi]

      Helm 3 client was used to successfully deploy current master branch of helm charts with no noticeable issues (with default values).

    • Try out v3 helm charts PR in dev environment [@oderayi]

      Deployment was successful.

    • Fix Helm charts incompatible with Kubernetes v1.16.x helm#219 (for NetworkPolicy, PodSecurityPolicy, DaemonSet, Deployment, StatefulSet, and ReplicaSet - Ingress for now until OSS dev environment is upgraded/and 1.20.x has wider adoption)
    • PR reviews/updates
    • Fix issues/test
    • Deploy to Dev2
    • Validate with GP tests & Fix issues observed in Dev2 if any
    • Validate downgrading locally to helm v2 and manage helm2 deployments

      Helm 2 client was used successfully alongside Helm 3 client to deploy and manage Helm 2 deployments

Acceptance Criteria:

  • Mojaloop helm charts are available for helm version 3.0.0

Pull Requests:

Follow-up:

  • N/A

Dependencies:

  • N/A

Accountability:

  • Owner: TBC
  • QA/Review: TBC
@lewisdaly
Copy link
Contributor

@elnyry is there any need here to support both Helm v2 and v3 at the same time? Or is it not worth worrying about?

@elnyry-sam-k
Copy link
Member Author

@lewisdaly Its worth worrying about sure ;-), but I think we need to keep things manageable for the core team. Taking that into consideration, I'm thinking the core team will focus on v3, whereas any volunteers from the Community can look into supporting v2, if there is a real need for it.

@elnyry-sam-k elnyry-sam-k added this to the Sprint 9.3 milestone Mar 2, 2020
@oderayi oderayi self-assigned this Mar 4, 2020
@mdebarros
Copy link
Member

@lewisdaly Its worth worrying about sure ;-), but I think we need to keep things manageable for the core team. Taking that into consideration, I'm thinking the core team will focus on v3, whereas any volunteers from the Community can look into supporting v2, if there is a real need for it.

I think we may need to think how best to do this. Perhaps we need a new helm repo for v3, allowing for v2 to remain in the current repo...assuming that we cannot support both v2 and v3 from the same code-base/repo.

@mdebarros
Copy link
Member

mdebarros commented Mar 27, 2020

Outcome of this investigation:

  • Proven that Helm v3 is backward compatible with Mojaloop's Helm v2 charts.
  • Helm v2 and v3 are independent and will still need to be used to respectively manage their deployments. I.e. They can fully co-exist within the same K8s environment.
  • Migration of existing deployments from Helm v2 to Helm v3 can be done using the following plugin: https://github.com/helm/helm-2to3 (this has not been tested)

Next steps:

  • Test migration of existing deployments from Helm v2 to Helm v3 using the following plugin: https://github.com/helm/helm-2to3 (this has not been tested)
  • Update Mojaloop Deployment Documentation to include some notes and references to assist individuals in using Helm v3 and/or migrating existing deployments from Helm v2 to Helm v3

Additional info on migrating existing deployments using v2_v3 plugin:

@kjw000
Copy link

kjw000 commented Apr 2, 2020

Are we going to update this story?

@elnyry-sam-k
Copy link
Member Author

Documentation to be followed-up in #1283

@lewisdaly
Copy link
Contributor

@elnyry what's the plan here regarding support for both helm 2 and helm 3 support. The linked PR says [DO NOT MERGE]?

@lewisdaly
Copy link
Contributor

From what I've been able to see, we can still deploy helm2 charts with helm3. So the only thing we need to do in the master branch is update the install instructions with helm3.

In terms of having a separate helm repo for v3, as @mdebarros suggests, I think it's a good idea, as long as both helm repos can be updated easily from the same github repo.

@elnyry-sam-k
Copy link
Member Author

@lewisdaly - wanted to get a consensus regarding support for helm2/3 before merging, hence the notice, not to merge before that. However, I think we're leaning towards going ahead with the merge now..

@lewisdaly
Copy link
Contributor

Cool. Thanks for the update.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

6 participants