Install Kserve
Preliminary
Installation
Preliminary
1. Kubernetes has installed, if not check ๐link2. Helm binary has installed, if not check ๐link1.install from script directly
Details
curl -s "https://raw.githubusercontent.com/kserve/kserve/release-0.15/hack/quick_install.sh" | bashExpectd Output
Installing Gateway API CRDs …
…
๐ Successfully installed Istio
๐ Successfully installed Cert Manager
๐ Successfully installed Knative
Preliminary
1. If you have only one node in your cluster, you need at least 6 CPUs, 6 GB of memory, and 30 GB of disk storage.2. If you have multiple nodes in your cluster, for each node you need at least 2 CPUs, 4 GB of memory, and 20 GB of disk storage.1.install knative serving CRD resources
Details
kubectl apply -f https://github.com/knative/serving/releases/download/knative-v1.18.0/serving-crds.yaml2.install knative serving components
Details
kubectl apply -f https://github.com/knative/serving/releases/download/knative-v1.18.0/serving-core.yaml
# kubectl apply -f https://raw.githubusercontent.com/AaronYang0628/assets/refs/heads/main/knative/serving/release/download/knative-v1.18.0/serving-core.yaml3.install network layer Istio
Details
kubectl apply -l knative.dev/crd-install=true -f https://github.com/knative/net-istio/releases/download/knative-v1.18.0/istio.yaml
kubectl apply -f https://github.com/knative/net-istio/releases/download/knative-v1.18.0/istio.yaml
kubectl apply -f https://github.com/knative/net-istio/releases/download/knative-v1.18.0/net-istio.yaml4.install cert manager
Details
kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.17.2/cert-manager.yaml5.install kserve
Details
kubectl apply --server-side -f https://github.com/kserve/kserve/releases/download/v0.15.0/kserve.yaml
kubectl apply --server-side -f https://github.com/kserve/kserve/releases/download/v0.15.0/kserve-cluster-resources.yamlReference
for more information, you can check ๐https://artifacthub.io/packages/helm/prometheus-community/prometheus
Preliminary
1. Kubernetes has installed, if not check ๐link2. ArgoCD has installed, if not check ๐link3. Helm binary has installed, if not check ๐link1.install gateway API CRDs
Details
kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.3.0/standard-install.yaml2.install cert manager
Reference
following ๐link to install cert manager
3.install istio system
Reference
following ๐link to install three istio components (istio-base, istiod, istio-ingressgateway)
4.install Knative Operator
Details
kubectl -n argocd apply -f - << EOF
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: knative-operator
spec:
syncPolicy:
syncOptions:
- CreateNamespace=true
project: default
source:
repoURL: https://knative.github.io/operator
chart: knative-operator
targetRevision: v1.18.1
helm:
releaseName: knative-operator
values: |
knative_operator:
knative_operator:
image: m.daocloud.io/gcr.io/knative-releases/knative.dev/operator/cmd/operator
tag: v1.18.1
resources:
requests:
cpu: 100m
memory: 100Mi
limits:
cpu: 1000m
memory: 1000Mi
operator_webhook:
image: m.daocloud.io/gcr.io/knative-releases/knative.dev/operator/cmd/webhook
tag: v1.18.1
resources:
requests:
cpu: 100m
memory: 100Mi
limits:
cpu: 500m
memory: 500Mi
destination:
server: https://kubernetes.default.svc
namespace: knative-serving
EOF5.sync by argocd
Details
argocd app sync argocd/knative-operator6.install kserve serving CRD
kubectl apply -f - <<EOF
apiVersion: operator.knative.dev/v1beta1
kind: KnativeServing
metadata:
name: knative-serving
namespace: knative-serving
spec:
version: 1.18.0 # this is knative serving version
config:
domain:
example.com: ""
EOFDetails
7.install kserve CRD
Details
kubectl -n argocd apply -f - << EOF
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: kserve-crd
annotations:
argocd.argoproj.io/sync-options: ServerSideApply=true
argocd.argoproj.io/compare-options: IgnoreExtraneous
spec:
syncPolicy:
syncOptions:
- CreateNamespace=true
- ServerSideApply=true
project: default
source:
repoURL: https://aaronyang0628.github.io/helm-chart-mirror/charts
chart: kserve-crd
targetRevision: v0.15.2
helm:
releaseName: kserve-crd
destination:
server: https://kubernetes.default.svc
namespace: kserve
EOF8.sync by argocd
Details
argocd app sync argocd/kserve-crd9.install kserve Controller
Details
kubectl -n argocd apply -f - << EOF
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: kserve
annotations:
argocd.argoproj.io/sync-options: ServerSideApply=true
argocd.argoproj.io/compare-options: IgnoreExtraneous
spec:
syncPolicy:
syncOptions:
- CreateNamespace=true
- ServerSideApply=true
project: default
source:
repoURL: https://aaronyang0628.github.io/helm-chart-mirror/charts
chart: kserve
targetRevision: v0.15.2
helm:
releaseName: kserve
values: |
kserve:
agent:
image: m.daocloud.io/docker.io/kserve/agent
router:
image: m.daocloud.io/docker.io/kserve/router
storage:
image: m.daocloud.io/docker.io/kserve/storage-initializer
s3:
accessKeyIdName: AWS_ACCESS_KEY_ID
secretAccessKeyName: AWS_SECRET_ACCESS_KEY
endpoint: ""
region: ""
verifySSL: ""
useVirtualBucket: ""
useAnonymousCredential: ""
controller:
deploymentMode: "Serverless"
rbacProxyImage: m.daocloud.io/quay.io/brancz/kube-rbac-proxy:v0.18.0
rbacProxy:
resources:
limits:
cpu: 100m
memory: 300Mi
requests:
cpu: 100m
memory: 300Mi
gateway:
domain: example.com
image: m.daocloud.io/docker.io/kserve/kserve-controller
resources:
limits:
cpu: 100m
memory: 300Mi
requests:
cpu: 100m
memory: 300Mi
servingruntime:
tensorflow:
image: tensorflow/serving
tag: 2.6.2
mlserver:
image: m.daocloud.io/docker.io/seldonio/mlserver
tag: 1.5.0
sklearnserver:
image: m.daocloud.io/docker.io/kserve/sklearnserver
xgbserver:
image: m.daocloud.io/docker.io/kserve/xgbserver
huggingfaceserver:
image: m.daocloud.io/docker.io/kserve/huggingfaceserver
devShm:
enabled: false
sizeLimit: ""
hostIPC:
enabled: false
huggingfaceserver_multinode:
shm:
enabled: true
sizeLimit: "3Gi"
tritonserver:
image: nvcr.io/nvidia/tritonserver
pmmlserver:
image: m.daocloud.io/docker.io/kserve/pmmlserver
paddleserver:
image: m.daocloud.io/docker.io/kserve/paddleserver
lgbserver:
image: m.daocloud.io/docker.io/kserve/lgbserver
torchserve:
image: pytorch/torchserve-kfs
tag: 0.9.0
art:
image: m.daocloud.io/docker.io/kserve/art-explainer
localmodel:
enabled: false
controller:
image: m.daocloud.io/docker.io/kserve/kserve-localmodel-controller
jobNamespace: kserve-localmodel-jobs
agent:
hostPath: /mnt/models
image: m.daocloud.io/docker.io/kserve/kserve-localmodelnode-agent
inferenceservice:
resources:
limits:
cpu: "1"
memory: "2Gi"
requests:
cpu: "1"
memory: "2Gi"
destination:
server: https://kubernetes.default.svc
namespace: kserve
EOF10.sync by argocd
Details
argocd app sync argocd/kserve11.install kserve eventing CRD
Details
kubectl apply -f https://github.com/knative/eventing/releases/download/knative-v1.18.1/eventing-crds.yaml12.install kserve eventing
Details
kubectl apply -f https://github.com/knative/eventing/releases/download/knative-v1.18.1/eventing-core.yaml