Uploaded image for project: 'OpenShift Logging'
  1. OpenShift Logging
  2. LOG-7350

Loki Operator - Support for new Loki 4.0 architecture

XMLWordPrintable

    • Icon: Epic Epic
    • Resolution: Unresolved
    • Icon: Normal Normal
    • None
    • None
    • Log Storage
    • None
    • Support for Loki 4.0
    • Future Sustainability
    • False
    • Hide

      None

      Show
      None
    • False
    • Not Selected
    • NEW
    • To Do
    • NEW
    • 100% To Do, 0% In Progress, 0% Done
    • If Release Note Needed, Set a Value

      Goals

      • Devise a path to allow Loki Operator to migrate to Loki 4.0

      Non-Goals

      Motivation

      With Loki 4.0 the team is introducing a couple of changes that make it impossible to simply update from Loki 3.x to 4.0. Some of these changes are the following:

      1. Moving from row to column storage using dataobj (inspired by Parquet)
      2. Kafka/WarpStream to decouple read and write paths
      3. New query engine backwards compatible with LogQL but the eventual support to do sql queries

      The challenging part is the Kafka dependency on the new architecture. On a meeting about the subject the following approaches were discussed:

      1. Prioritization of AutoMQ as a drop-in replacement to WarpStream.
      2. Contribution to upstream of a GRPC component that would both shard streams into consumers + provide consumers with a WAL that would allow them to recover from shutdowns.

      Prioritization of AutoMQ as a drop-in replacement to WarpStream.

      Advantages
      1. Closer to the architecture designed for Loki 4.0
      2. Customers will also get all the benefits from the new architecture*
      Disadvantages
      1. Productization of AutoMQ
      2. Possibly writing a new operator for it

      Contribution to upstream of a GRPC component

      Advantages
      1. Fewer external dependencies (no need to run Kafka)
      2. Possibly lower resource usage
      Disadvantages
      1. Continued maintainability of the new code path to make sure it provides the necessary APIs to both producers & consumers
      2. Customers looking to do analytical queries would possibly still run into performance issues

      Alternatives

      Acceptance Criteria

      A decision has been made on what is solution that we will adopt for Loki Operator

      Risk and Assumptions

      If we do not adopt Loki 4.0 quickly enough we might run into a situation where our product becomes "outdated" and we are stuck with Loki 3.x.

      Documentation Considerations

      Open Questions

      Additional Notes

              Unassigned Unassigned
              jmarcal@redhat.com Joao Marcal
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated: