[CPS] Update cps-and-ncmp and dmi-plugin image
[oom.git] / docs / sections / guides / infra_guides / oom_base_optional_addons.rst
index b424c65..713aec6 100644 (file)
@@ -6,9 +6,9 @@
 .. Links
 .. _Prometheus stack README: https://github.com/prometheus-community/helm-charts/tree/main/charts/kube-prometheus-stack#readme
 .. _ONAP Next Generation Security & Logging Structure: https://wiki.onap.org/pages/viewpage.action?pageId=103417456
-.. _Istio best practices: https://docs.solo.io/gloo-mesh-enterprise/latest/setup/prod/namespaces/
 .. _Istio setup guide: https://istio.io/latest/docs/setup/install/helm/
 .. _Kiali setup guide: https://kiali.io/docs/installation/installation-guide/example-install/
+.. _Kserve setup guide: https://kserve.github.io/website/0.10/admin/kubernetes_deployment/
 
 .. _oom_base_optional_addons:
 
@@ -57,7 +57,9 @@ ONAP on Service Mesh
 
 ONAP is currenty planned to support Istio as default ServiceMesh platform.
 Therefor the following instructions describe the setup of Istio and required tools.
-Used `Istio best practices`_ and `Istio setup guide`_
+Used `Istio setup guide`_
+
+.. _oom_base_optional_addons_istio_installation:
 
 Istio Platform Installation
 ===========================
@@ -124,12 +126,20 @@ Install Istio Gateway
 
     > kubectl label namespace istio-ingress istio-injection=enabled
 
-- Install the Istio Gateway chart,replacing the
+- To expose additional ports besides HTTP/S (e.g. for external Kafka access, SDNC-callhome)
+  create an override file (e.g. istio-ingress.yaml)
+
+    .. collapse:: istio-ingress.yaml
+
+      .. include:: ../../resources/yaml/istio-ingress.yaml
+         :code: yaml
+
+- Install the Istio Gateway chart using the override file, replacing the
   <recommended-istio-version> with the version defined in
   the :ref:`versions_table` table::
 
     > helm upgrade -i istio-ingress istio/gateway -n istio-ingress
-    --version <recommended-istio-version> --wait
+    --version <recommended-istio-version> -f ingress-istio.yaml --wait
 
 Kiali Installation
 ==================
@@ -179,4 +189,40 @@ For setup the kiali operator is used, see `Kiali setup guide`_
 Jaeger Installation
 ===================
 
-To be done...
\ No newline at end of file
+To be done...
+
+
+Kserve Installation
+********************
+
+KServe is a standard Model Inference Platform on Kubernetes. It supports RawDeployment mode to enable InferenceService deployment with Kubernetes resources. Comparing to serverless deployment it unlocks Knative limitations such as mounting multiple volumes, on the other hand Scale down and from Zero is not supported in RawDeployment mode.
+
+This installation is necessary for the ML models to be deployed as inference service. Once deployed, the inference services can be queried for the prediction.
+
+**Kserve participant component in Policy ACM requires this installation. Kserve participant deploy/undeploy inference services in Kserve.**
+
+Dependent component version compatibility details and installation instructions can be found at `Kserve setup guide`_
+
+Kserve installation requires the following components:
+
+-  Istio. Its installation instructions can be found at :ref:`oom_base_optional_addons_istio_installation`
+
+-  Cert-Manager. Its installation instructions can be found at :ref:`oom_base_setup_cert_manager`
+
+Installation instructions as follows,
+
+- Create kserve namespace::
+
+    > kubectl create namespace kserve
+
+- Install Kserve::
+
+    > kubectl apply -f https://github.com/kserve/kserve/releases/download/v<recommended-kserve-version>/kserve.yaml
+
+- Install Kserve default serving runtimes::
+
+    > kubectl apply -f https://github.com/kserve/kserve/releases/download/v<recommended-kserve-version>/kserve-runtimes.yaml
+
+- Patch ConfigMap inferenceservice-config as follows::
+
+    > kubectl patch configmap/inferenceservice-config -n kserve --type=strategic -p '{"data": {"deploy": "{\"defaultDeploymentMode\": \"RawDeployment\"}"}}'