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

feat: Implement storage initializer for Seldon and KF #35

Merged
merged 9 commits into from Jun 12, 2020

Conversation

gaocegege
Copy link
Member

@gaocegege gaocegege commented Jun 10, 2020

Signed-off-by: Ce Gao gaoce@caicloud.io

What this PR does / why we need it:

The model will be downloaded from the remote registry to the container via a storage initializer in Seldon Core and KFServing. Now it does not support ORMB. Thus we implement such a new initializer.

Which issue(s) this PR is related to (optional, link to 3rd issue(s)):

Fixes #

Reference to #25

Special notes for your reviewer:

/cc @your-reviewer

Release note:

NONE

@caicloud-bot caicloud-bot added release-note-none Denotes a PR that doesn't merit a release note. do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. caicloud-cla: yes Indicates the PR's author has not signed the Caicloud CLA. size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Jun 10, 2020
Signed-off-by: Ce Gao <gaoce@caicloud.io>
Signed-off-by: Ce Gao <gaoce@caicloud.io>
@caicloud-bot caicloud-bot added size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. and removed size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Jun 11, 2020
Signed-off-by: Ce Gao <gaoce@caicloud.io>
Signed-off-by: Ce Gao <gaoce@caicloud.io>
Signed-off-by: Ce Gao <gaoce@caicloud.io>
@gaocegege gaocegege changed the title WIP feat: Implement storage initializer for Seldon and KF feat: Implement storage initializer for Seldon and KF Jun 11, 2020
@caicloud-bot caicloud-bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jun 11, 2020
@gaocegege
Copy link
Member Author

/assign @ddysher @simon-cj

Copy link
Member

@ddysher ddysher left a comment

Choose a reason for hiding this comment

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

I see that we are using a forked version of seldon, what's the plan going forward? to wait until we have a draft UI to present to seldon community and hopefully merge the storage initializer?

PS. I'll leave code level review to @simon-cj

docs/tutorial-serving-seldon.md Outdated Show resolved Hide resolved
@gaocegege
Copy link
Member Author

I see that we are using a forked version of seldon, what's the plan going forward? to wait until we have a draft UI to present to seldon community and hopefully merge the storage initializer?

PS. I'll leave code level review to @simon-cj

Yes.

@gaocegege
Copy link
Member Author

gaocegege commented Jun 11, 2020

And we will also investigate if we can run without modification of seldon core. If we can do it, there is no need to contribute to upstream.

@ddysher
Copy link
Member

ddysher commented Jun 11, 2020 via email

Signed-off-by: Ce Gao <gaoce@caicloud.io>
Seldon Core does not support renaming the environment variable name.

Signed-off-by: Ce Gao <gaoce@caicloud.io>
Signed-off-by: Ce Gao <gaoce@caicloud.io>
@gaocegege
Copy link
Member Author

FYI, we do not need to modify seldon core after 3a2f7ab . But we may need to update some configurations to use our own initializer. I will update the doc.

/hold

@caicloud-bot caicloud-bot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Jun 12, 2020
Signed-off-by: Ce Gao <gaoce@caicloud.io>
@gaocegege
Copy link
Member Author

/hold-cancel

We do not need to modify seldon core codebase now, we just need to update some configs. The instructions are kept in the tutorial.

PTAL @ddysher @simon-cj

@gaocegege
Copy link
Member Author

/hold cancel

@caicloud-bot caicloud-bot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Jun 12, 2020
}
fmt.Printf("Logging to the remote registry %s\n", strs[0])
fmt.Printf("Username: %s\n", username)
if err := ormbClient.Login(strs[0], username, pwd, true); err != nil {
Copy link
Contributor

Choose a reason for hiding this comment

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

Why it need login before ormb.NewOCIORMB, I think if ormbClient.Login between ormb.NewOCIORMB and ormbClient.Pull, it is more reasonable. And PreRunE can be deleted.

Copy link
Member Author

Choose a reason for hiding this comment

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

We need two calls for ormb.NewOCIORMB to let it know the credentials.

Copy link
Contributor

Choose a reason for hiding this comment

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

OK, If it is right, LGTM, I'am not understand it now, let me think it carefully.

Copy link
Member Author

Choose a reason for hiding this comment

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

BTW, we only have one command in storage initializer, then we do not actually need the prerun here since it does not benefit us by code reusing

@simon-cj
Copy link
Contributor

/lgtm

@caicloud-bot caicloud-bot added the lgtm Indicates that a PR is ready to be merged. label Jun 12, 2020
@gaocegege
Copy link
Member Author

/approve

@caicloud-bot
Copy link

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: gaocegege, simon-cj

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

The pull request process is described here

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

@caicloud-bot caicloud-bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jun 12, 2020
@caicloud-bot caicloud-bot merged commit 8150ac1 into kleveross:master Jun 12, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. caicloud-cla: yes Indicates the PR's author has not signed the Caicloud CLA. lgtm Indicates that a PR is ready to be merged. release-note-none Denotes a PR that doesn't merit a release note. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants