0

Followed the link - https://docs.openshift.com/container-platform/4.1/serverless/installing-openshift-serverless.html to install KNative Serving on top of Openshift v4.1. After installing all the openshift operators, control plane. member roll etc as given in the link; I expect to see that serving component is running by executing -

C:\Knative installation>oc get knativeserving/knative-serving -n knative-serving --template='{{range .status.conditions}}{{printf "%s=%s\n" .type .status}}{{end}}'

But the above returns nothing. Just returns back the prompt.

Also below are o/p of the get resource command of the serving component -

C:\Knative installation>oc get knativeserving/knative-serving -n knative-serving
NAME              VERSION   READY   REASON
knative-serving

C:\Knative installation>oc get knativeserving/knative-serving -n knative-serving -o yaml
apiVersion: serving.knative.dev/v1alpha1
kind: KnativeServing
metadata:
  annotations:
    kubectl.kubernetes.io/last-applied-configuration: |
      {"apiVersion":"serving.knative.dev/v1alpha1","kind":"KnativeServing","metadata": {"annotations":{},"name":"knative-serving","namespace":"knative-serving"}}
  creationTimestamp: "2020-01-12T10:53:42Z"
  generation: 1
  name: knative-serving
  namespace: knative-serving
  resourceVersion: "63660251"
  selfLink: /apis/serving.knative.dev/v1alpha1/namespaces/knative-serving/knativeservings/knative-serving
  uid: cc4b330f-3529-11ea-83ef-0272cb600f74

What could be wrong? I believe KNative Serving did not install correctly but not sure how to debug. I uninstalled and reinstalled several times but no help.

Also, I thought to proceed and install a service using KNative Serving (ref link https://docs.openshift.com/container-platform/4.1/serverless/getting-started-knative-services.html) but, applying the very first resource shows problem.

service.yaml

apiVersion: serving.knative.dev/v1alpha1
kind: Service
metadata:
  name: helloworld-go 
  namespace: default 
spec:
  template:
    spec:
      containers:
        - image: gcr.io/knative-samples/helloworld-go 
          env:
            - name: TARGET 
              value: "Go Sample v1"

Applying service.yaml returns error.

C:\start Knative service> oc apply --filename service.yaml
error: unable to recognize "service.yaml": no matches for kind "Service" in version "serving.knative.dev/v1alpha1"

Any help is appreciated. Thanks.

Dimitry Khan
  • 195
  • 1
  • 2
  • 12
  • My guess is that knative serving is not getting enough memory and CPUs. Documentation says it requires 40GB memory and 10 CPU at minimum. I have 3 worker sets and one of that with 3 replicas. All of them are AWS m4.large (2 vCPUs and 8GB) - so total 5 m4.large machines. That makes the openshift cluster to have 2x5=10 vCPUs and 8x5=40 GB. Still no luck. – Dimitry Khan Jan 15 '20 at 07:39
  • So far now I was searching any error on the openshift-operators namespace. But when I go to knative-serving namespace I see KnativeServing object is added under Openshift Serverless Operator. And I see the status of the Openshift Serverless Operators is changed from InstallSucceeded to RequirementsNotMet after installing the KnativeServing object. Detail error from yaml of the operator is - CSV version requirement not met: minKubeVersion (1.14.0) > server version (1.13.4+4b86cc5) – Dimitry Khan Jan 17 '20 at 06:03
  • The last error pretty much sums it up: The Serverless Operator cannot be installed because the used Openshift version is too low. – markusthoemmes Jan 25 '21 at 08:41

0 Answers0