After playing a bit with the `ClusterLogging` and `ClusterLogForwarder` Resources, I found that the objects seemingly need to be called `instance`. I tried renaming them to `logging-instance` and similar names, but nothing seems to work unless they both have that specific name.
As a consequence, no DaemonSets are created and my `ClusterLogging` resource logs the event `validation failed: Only spec.collection is allowed when using multiple instances of ClusterLogForwarder: openshift-logging/logging-instance`
I may have overseen an important detail in the docs, or lack a deeper understanding of a specific mechanic. Does anybody know why this might be mandatory?
I hit the exact same issue a few days ago and I was thinking about the same question.
So I found a reference in the openshift documention where it is stated that the name must be instance for clusterlogging :
-----
Chapter 6. Installing Logging :
The name must be instance.
-----
It is also true for CLF.
For lokistack, my understanding is that you can define any name.
My understanding is that OpenShift provides two log forwarding implementations: the legacy implementation and the multi-log forwarder feature. In the DO380 course, we likely utilize the legacy implementation, which comes with a limitation outlined in the OpenShift product documentation:
-----------------------------------------------------------------------------
In legacy implementations, you can only use one log forwarder in your cluster. The ClusterLogForwarder resource in this mode must be named instance, and must be created in the openshift-logging namespace. The ClusterLogForwarder resource also requires a corresponding ClusterLogging resource named instance in the openshift-logging namespace. https://docs.redhat.com/en/documentation/openshift_container_platform/4.14/html-single/logging/index...
Red Hat
Learning Community
A collaborative learning environment, enabling open source skill development.