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

deployment: add helm charts #535

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions charts/modelmesh/Chart.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
apiVersion: v2
name: modelmesh
description: Helm chart for deploying modelmesh-serving resources

type: application

# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.1.0

# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes.
appVersion: "1.16.0"
1,898 changes: 1,898 additions & 0 deletions charts/modelmesh/crds/cluster-serving-runtime.yaml

Large diffs are not rendered by default.

16,333 changes: 16,333 additions & 0 deletions charts/modelmesh/crds/inference-service.yaml

Large diffs are not rendered by default.

266 changes: 266 additions & 0 deletions charts/modelmesh/crds/predictor.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,266 @@
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.7.0
creationTimestamp: null
name: predictors.serving.kserve.io
spec:
group: serving.kserve.io
names:
kind: Predictor
listKind: PredictorList
plural: predictors
singular: predictor
scope: Namespaced
versions:
- additionalPrinterColumns:
- jsonPath: .spec.modelType.name
name: Type
type: string
- jsonPath: .status.available
name: Available
type: boolean
- jsonPath: .status.activeModelState
name: ActiveModel
type: string
- jsonPath: .status.targetModelState
name: TargetModel
type: string
- jsonPath: .status.transitionStatus
name: Transition
type: string
- jsonPath: .metadata.creationTimestamp
name: Age
type: date
name: v1alpha1
schema:
openAPIV3Schema:
description: Predictor is the Schema for the predictors API
properties:
apiVersion:
description:
"APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources"
type: string
kind:
description:
"Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"
type: string
metadata:
type: object
spec:
description: PredictorSpec defines the desired state of Predictor
properties:
gpu:
description: May be absent, "preferred" or "required"
enum:
- required
- preferred
type: string
modelType:
properties:
name:
type: string
version:
type: string
required:
- name
type: object
path:
description: (DEPRECATED) The path to the model files within the storage
type: string
protocolVersion:
description:
Protocol version to be exposed by the predictor (i.e.
v1 or v2 or grpc-v1 or grpc-v2)
type: string
runtime:
description:
If omitted a compatible runtime is selected based on
the model type (if available)
properties:
name:
type: string
required:
- name
type: object
schemaPath:
description: (DEPRECATED) The path to the schema file within the storage
type: string
serviceAccountName:
description: NOT YET SUPPORTED
type: string
storage:
properties:
key:
description: The Storage Key in the secret for this model.
type: string
parameters:
additionalProperties:
type: string
description:
Parameters to override the default storage credentials
and config.
type: object
path:
description:
The path to the model object in the storage. It cannot
co-exist with the storageURI.
type: string
persistentVolumeClaim:
description:
(DEPRECATED) PersistentVolmueClaim was never supported
this way and will be removed
properties:
claimName:
description:
"ClaimName is the name of a PersistentVolumeClaim
in the same namespace as the pod using this volume. More
info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims"
type: string
readOnly:
description:
Will force the ReadOnly setting in VolumeMounts.
Default false.
type: boolean
required:
- claimName
type: object
s3:
description:
(DEPRECATED) S3 has configuration to connect to an
S3 instance. It is now deprecated, use fields from Spec.Storage
instead.
properties:
bucket:
type: string
secretKey:
type: string
required:
- secretKey
type: object
schemaPath:
description: The path to the model schema file in the storage.
type: string
type: object
required:
- modelType
type: object
status:
default:
activeModelState: Pending
available: false
failedCopies: 0
targetModelState: ""
totalCopies: 0
transitionStatus: UpToDate
description: PredictorStatus defines the observed state of Predictor
properties:
activeModelState:
default: Pending
description:
"High level state string: Pending, Standby, Loading,
Loaded, FailedToLoad"
enum:
- ""
- Pending
- Standby
- Loading
- Loaded
- FailedToLoad
type: string
available:
description: Whether the predictor endpoint is available
type: boolean
failedCopies:
default: 0
description:
How many copies of this predictor's models failed to
load recently
type: integer
grpcEndpoint:
type: string
httpEndpoint:
description:
Addressable endpoint for the deployed trained model This
will be "static" and will not change when the model is mutated
type: string
lastFailureInfo:
description:
Details of last failure, when load of target model is
failed or blocked
properties:
location:
description:
Name of component to which the failure relates (usually
Pod name)
type: string
message:
description: Detailed error message
type: string
modelId:
description: Internal ID of model, tied to specific Spec contents
type: string
reason:
description: High level class of failure
enum:
- ModelLoadFailed
- RuntimeUnhealthy
- NoSupportingRuntime
- RuntimeNotRecognized
- InvalidPredictorSpec
type: string
time:
description: Time failure occurred or was discovered
format: date-time
type: string
type: object
targetModelState:
default: ""
description: ModelState enum
enum:
- ""
- Pending
- Standby
- Loading
- Loaded
- FailedToLoad
type: string
totalCopies:
default: 0
description: Total number of copies of this predictor's models
type: integer
transitionStatus:
default: UpToDate
description:
Whether the available predictor endpoint reflects the
current Spec or is in transition
enum:
- UpToDate
- InProgress
- BlockedByFailedLoad
- InvalidSpec
type: string
required:
- activeModelState
- available
- failedCopies
- targetModelState
- totalCopies
- transitionStatus
type: object
type: object
served: true
storage: true
subresources:
status: {}
status:
acceptedNames:
kind: ""
plural: ""
conditions: []
storedVersions: []
Loading