Upgrade & Secure Your Future with DevOps, SRE, DevSecOps, MLOps!

We spend hours scrolling social media and waste money on things we forget, but won’t spend 30 minutes a day earning certifications that can change our lives.
Master in DevOps, SRE, DevSecOps & MLOps by DevOpsSchool!

Learn from Guru Rajesh Kumar and double your salary in just one year.


Get Started Now!

Knative: Troubleshooting & Debugging Guide


Check if all containers are running, ready and healthy

Knative Serving Components


$ kubectl get pods -n knative-serving

NAME                                      READY   STATUS    RESTARTS   AGE
activator-6b9dc4c9db-cl56b                1/1     Running   0          2m
autoscaler-77f9b75856-f88qw               1/1     Running   0          2m
controller-7dcb56fdb6-dbzrp               1/1     Running   0          2m
domain-mapping-6bb8f95654-c575d           1/1     Running   0          2m
domainmapping-webhook-c77dcfcfb-hg2wv     1/1     Running   0          2m
webhook-78dc6ddddb-6868n                  1/1     Running   0          2mCode language: JavaScript (javascript)

Knative Serving Networking Layer


$ kubectl get pods -n knative-serving

NAME                                    READY   STATUS    RESTARTS   AGE
net-istio-controller-ccc455b58-f98ld    1/1     Running   0          19s
net-istio-webhook-7558dbfc64-5jmt6      1/1     Running   0          19sCode language: JavaScript (javascript)


$ kubectl get pods -n istio-system

NAME                                   READY   STATUS    RESTARTS   AGE
istio-ingressgateway-c7b9f6477-bgr6q   1/1     Running   0          44s
istiod-79d65bf5f4-5zvtj                1/1     Running   0          29sCode language: JavaScript (javascript)


$ kubectl get pods -n knative-serving

NAME                                      READY   STATUS    RESTARTS   AGE
net-kourier-controller-5fcbb6d996-fprpd   1/1     Running   0          103s

$ kubectl get pods -n kourier-system
NAME                                      READY   STATUS    RESTARTS   AGE
3scale-kourier-gateway-86b9f6dc44-xpn6h   1/1     Running   0          2m22s

$ kubectl get pods -n contour-external

NAME                            READY   STATUS      RESTARTS   AGE
contour-7b995cdb68-jg5s8        1/1     Running     0          41s
contour-certgen-v1.24.2-zmr9r   0/1     Completed   0          41s
envoy-xkzck                     2/2     Running     0          41s

$ kubectl get pods -n contour-external

NAME                            READY   STATUS      RESTARTS   AGE
contour-7b995cdb68-jg5s8        1/1     Running     0          41s
contour-certgen-v1.24.2-zmr9r   0/1     Completed   0          41s
envoy-xkzck                     2/2     Running     0          41s

$ kubectl get pods -n contour-internal

NAME                            READY   STATUS      RESTARTS   AGE
contour-57fcf576fd-wb57c        1/1     Running     0          55s
contour-certgen-v1.24.2-gqgrx   0/1     Completed   0          55s
envoy-rht69                     2/2     Running     0          55sCode language: JavaScript (javascript)

Knative Eventing


$ kubectl get pods -n knative-eventing

NAME                                  READY   STATUS    RESTARTS   AGE
eventing-controller-bb8b689c4-lk6pq   1/1     Running   0          41s
eventing-webhook-577bb88ccd-hcz5p     1/1     Running   0          41sCode language: JavaScript (javascript)

Check if there are any errors logged in the Knative components


$ kubectl logs -n knative-serving <pod-name>
$ kubectl logs -n knative-eventing <pod-name>
$ kubectl logs -n <ingress-namespaces> <pod-namespaces> # see above for the relevant namespacesCode language: HTML, XML (xml)

For example


$ kubectl logs -n knative-serving activator-6b9dc4c9db-cl56b
2023/05/01 11:52:51 Registering 3 clients
2023/05/01 11:52:51 Registering 3 informer factories
2023/05/01 11:52:51 Registering 4 informers

Check the status of the Knative Resources


$ kubectl describe -n <namespace> kservice
$ kubectl describe -n <namespace> config
$ kubectl describe -n <namespace> revision
$ kubectl describe -n <namespace> sks # Serverless Service
$ kubectl describe -n <namespace> kingress # Knative Ingress
$ kubectl describe -n <namespace> rt # Knative Route
$ kubectl describe -n <namespace> dm # Domain-MappingCode language: HTML, XML (xml)

Check the status at the end. For example

Knative Serving


$ kubectl describe -n default kservice

... omitted ...
Status:
  Address:
    URL:  http://hello.default.svc.cluster.local
  Conditions:
    Last Transition Time:        2023-05-01T12:08:18Z
    Status:                      True
    Type:                        ConfigurationsReady
    Last Transition Time:        2023-05-01T12:08:18Z
    Status:                      True
    Type:                        Ready
    Last Transition Time:        2023-05-01T12:08:18Z
    Status:                      True
    Type:                        RoutesReady
  Latest Created Revision Name:  hello-00001
  Latest Ready Revision Name:    hello-00001
  Observed Generation:           1
  Traffic:
    Latest Revision:  true
    Percent:          100
    Revision Name:    hello-00001
  URL:                http://hello.default.10.89.0.200.sslip.io
Events:
  Type    Reason   Age   From                Message
  ----    ------   ----  ----                -------
  Normal  Created  45s   service-controller  Created Configuration "hello"
  Normal  Created  45s   service-controller  Created Route "hello"Code language: PHP (php)

Knative Eventing


$ kubectl describe -n <namespace> brokers
$ kubectl describe -n <namespace> eventtypes
$ kubectl describe -n <namespace> triggers
$ kubectl describe -n <namespace> channels
$ kubectl describe -n <namespace> subscriptions
$ kubectl describe -n <namespace> apiserversources
$ kubectl describe -n <namespace> containersources
$ kubectl describe -n <namespace> pingsources
$ kubectl describe -n <namespace> sinkbindingsCode language: HTML, XML (xml)

Check the status at the end. For example


$ kubectl describe -n default brokers

... omitted ...
Status:
  Annotations:
    bootstrap.servers:                 my-cluster-kafka-bootstrap.kafka:9092
    default.topic.partitions:          10
    default.topic.replication.factor:  3Code language: JavaScript (javascript)

KServe Debugging Guide

  • https://kserve.github.io/website/developer/debug/

Debugging application issues

  • https://knative.dev/docs/serving/troubleshooting/debugging-application-issues/

Check Istio-Ingressgateway Pod Status:

Knative Serving Troubleshooting: Autoscaler Component

Reference

  • https://knative.dev/docs/install/troubleshooting/
  • https://knative.dev/docs/serving/troubleshooting/debugging-application-issues/
  • https://knative.dev/docs/eventing/troubleshooting/
  • https://knative.dev/docs/serving/troubleshooting/debugging-application-issues/
  • https://github.com/dewitt/knative-docs/blob/master/serving/debugging-application-issues.md
  • https://github.com/dewitt/knative-docs/blob/master/serving/debugging-performance-issues.md
  • https://github.com/dewitt/knative-docs/blob/master/serving/accessing-logs.md
  • https://github.com/dewitt/knative-docs/blob/master/serving/accessing-metrics.md
  • https://github.com/dewitt/knative-docs/blob/master/serving/accessing-traces.md
  • https://github.com/dewitt/knative-docs/blob/master/serving/debugging-application-issues.md
  • https://github.com/dewitt/knative-docs/blob/master/serving/debugging-performance-issues.md
  • https://github.com/dewitt/knative-docs/blob/master/serving/gke-assigning-static-ip-address.md
  • https://github.com/dewitt/knative-docs/blob/master/serving/installing-logging-metrics-traces.md
  • https://github.com/dewitt/knative-docs/blob/master/serving/outbound-network-access.md
  • https://github.com/dewitt/knative-docs/blob/master/serving/setting-up-a-logging-plugin.md
  • https://github.com/dewitt/knative-docs/blob/master/serving/using-a-custom-domain.md
  • https://github.com/dewitt/knative-docs/blob/master/serving/using-an-ssl-cert.md
  • https://github.com/dewitt/knative-docs/blob/master/serving/using-cert-manager-on-gcp.md
  • https://github.com/dewitt/knative-docs/blob/master/serving/using-external-dns.md
  • https://github.com/knative/serving/issues
  • https://github.com/knative/eventing/issues
Subscribe
Notify of
guest
0 Comments
Newest
Oldest Most Voted
Inline Feedbacks
View all comments

Certification Courses

DevOpsSchool has introduced a series of professional certification courses designed to enhance your skills and expertise in cutting-edge technologies and methodologies. Whether you are aiming to excel in development, security, or operations, these certifications provide a comprehensive learning experience. Explore the following programs:

DevOps Certification, SRE Certification, and DevSecOps Certification by DevOpsSchool

Explore our DevOps Certification, SRE Certification, and DevSecOps Certification programs at DevOpsSchool. Gain the expertise needed to excel in your career with hands-on training and globally recognized certifications.

0
Would love your thoughts, please comment.x
()
x