bridge Documentation

Official TypeScript developer resources and documentation for strimzi/bridge. Verified technical context for AI.

0 stars TypeScript TypeScript 1 file ยท ~2,696 tokens
RAW Doc

1. Project Overview & Quickstart (strimzi/bridge)







HTTP bridge for Apache Kafkaยฎ

This project provides a software component which acts as a bridge between HTTP 1.1 (Hypertext Transfer Protocol) and an Apache Kafkaยฎ cluster.

It provides a different way to interact with Apache Kafka because the latter natively supports only a custom (proprietary) protocol.
Thanks to the bridge, all clients which can speak HTTP 1.1 protocol can connect to Apache Kafka cluster in order to send and receive messages to / from topics.

Architectures support

Architecture Status Tested
amd64 Supported yes
arm64 Supported no
ppc64le Supported no
s390x Supported yes

Community Testing for Linux on IBM Z s390x architecture

Note: This badge represents a community-led initiative and is not officially endorsed by the Strimzi project maintainers.

Running the bridge

On Kubernetes and OpenShift

Use the Strimzi Kafka operator to deploy the Kafka Bridge with HTTP support on Kubernetes and OpenShift.

On bare-metal / VM

Download the ZIP or TAR.GZ file from the GitHub release page and unpack it.
Afterwards, edit the config/application.properties file which contains the configuration.
Once your configuration is ready, start the bridge using:

bash
bin/kafka_bridge_run.sh --config-file config/application.properties

Kafka Bridge releases are also available to download from the Strimzi website.

Kafka Bridge documentation

The Kafka Bridge documentation provides information on getting started with the Kafka Bridge.

The source files for the Kafka Bridge documentation are maintained in the documentation folder.
The documentation is maintained in .adoc files.
The .adoc files for the API reference section (documentation/book/api) are generated from descriptions in the source OpenAPI JSON file (src/main/resources/openapiv2.json), so they must not be edited directly.

If you spot something that needs updating or changing in the Kafka Bridge documentation, you can open an issue or open a PR and contribute directly.

For more information on contributing to the Strimzi documentation, see the Strimzi Documentation Contributor Guide.

Getting help

If you encounter any issues while using Strimzi Kafka Bridge, you can get help through the following methods:

Contributing

You can contribute by:

  • Raising any issues you find using Strimzi Kafka Bridge
  • Fixing issues by opening Pull Requests
  • Improving documentation
  • Talking about Strimzi Kafka Bridge

All bugs, tasks or enhancements are tracked as GitHub issues. Issues which
might be a good start for new contributors are marked with "good-start" label.

The Building Strimzi Kafka Bridge guide describes how to build Strimzi Kafka Bridge and how to test your changes before submitting a patch or opening a PR.

If you want to get in touch with us first before contributing, you can use:

Learn more on how you can contribute on our Join Us page.

License

Strimzi Kafka Bridge is licensed under the Apache License, Version 2.0

Container signatures

From the 0.27.0 release, Strimzi Kafka Bridge containers are signed using the cosign tool.
Strimzi currently does not use the keyless signing and the transparency log.
To verify the container, you can copy the following public key into a file:

text
-----BEGIN PUBLIC KEY-----
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAET3OleLR7h0JqatY2KkECXhA9ZAkC
TRnbE23Wb5AzJPnpevvQ1QUEQQ5h/I4GobB7/jkGfqYkt6Ct5WOU2cc6HQ==
-----END PUBLIC KEY-----

And use it to verify the signature:

text
cosign verify --key strimzi.pub quay.io/strimzi/kafka-bridge:latest --insecure-ignore-tlog=true

Software Bill of Materials (SBOM)

From the 0.27.0 release, Strimzi Kafka Bridge publishes the software bill of materials (SBOM) of our containers.
The SBOMs are published as an archive with SPDX-JSON and Syft-Table formats signed using cosign.
For releases, they are also pushed into the container registry.
To verify the SBOM signatures, please use the Strimzi public key:

text
-----BEGIN PUBLIC KEY-----
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAET3OleLR7h0JqatY2KkECXhA9ZAkC
TRnbE23Wb5AzJPnpevvQ1QUEQQ5h/I4GobB7/jkGfqYkt6Ct5WOU2cc6HQ==
-----END PUBLIC KEY-----

You can use it to verify the signature of the SBOM files with the following command:

text
cosign verify-blob --key cosign.pub --bundle <SBOM-file>.bundle --insecure-ignore-tlog=true <SBOM-file>

2. Official Technical Reference & Guides (strimzi/strimzi.github.io)

Strimzi website

This repository contains the Strimzi website.

Prerequisites

Ruby and Rubygems are needed in order to build the web site.

Install bundler

text
gem install bundler

Build

In order to build and serve the web site locally, run :

text
bundle install
bundle exec jekyll serve

When running, the website is accessible at localhost:4000.

Build using a container

To avoid needing to install Ruby, you can build and run the web site locally inside a container.
Run the following command:

text
docker run --rm -v ${PWD}:/srv/jekyll -p 4000:4000 -it jekyll/jekyll jekyll serve

The build can take several minutes to complete.
When it's done, you'll see the message "Server running...".

Note: If you see the error require': cannot load such file -- webrick (LoadError), add the following to the Gemfile:

text
gem "webrick"

If you make this change, be sure not to check it in.

Blog posts

We try to use the following process for blog posts:

  1. You should start by asking us whether your proposed subject is a good fit for the strimzi.io blog.
    The aim of this step is to prevent you wasting your time writing a post which isn't going to interest Strimzi users.
    If your proposal is not perfect from the off, we might suggest ways to make it more relevent to our audience.
    Even if we don't think it will be relevant we might be able to recommend a better site for your proposed content.

  2. You write your post and open a PR.
    To start a new blog post, just create a new file in the _posts subdirectory and name it <date>-<title>.md.
    For the date, you can use the current date (after your blog post is reviewed and approved, we will change it to the actual publishing date when merging the PR).
    See this blog post for a detailed overview of the mechanics of writing a blog post.

    If this is your first blog post, please also add yourself to the authors.yml file.

  3. We'll do a content review, checking for technical accuracy, logical structure etc.
    Sometimes this can be an iterative process, but we'll try not to keep you waiting.

  4. Once the content is good we'll do a final review pass focussing on things like spelling and grammar.
    Don't worry if you're not a native English speaker; our main intent here isn't necessarily perfect English, but to ensure the content is easily understood.

Diagrams

You can include diagrams by adding images to assets/images/posts directory (the filename should start with the date of the post) and linking to them directly.
Alternatively, you can enable Mermaid diagram rendering in you post's markdown.
To do this add mermaid: true to your post's front matter, then tag your diagram code blocks with the mermaid language tag:

markdown
---
layout: post
mermaid: true
---

```mermaid
flowchart TD
A --> B
B --> C
``` `

Quick starts

Strimzi quick starts provide instructions for evaluating Strimzi using Minikube, Kubernetes kind or Docker Desktop.

The source markdown files for the quick starts are maintained in the quickstarts and /_includes/quickstarts folders.

If you spot something that needs updating or changing in the quick starts, you can open an issue or open a PR and contribute directly.

For more information on contributing to the Strimzi documentation, see the Strimzi Documentation Contributor Guide.

Contributing

You can contribute by:

  • Raising any issues you find using Strimzi
  • Fixing issues by opening Pull Requests
  • Improving documentation
  • Talking about Strimzi

All bugs, tasks or enhancements are tracked as GitHub issues.
Issues which might be a good start for new contributors are marked with the "good-start" label.

The Development Guide for Strimzi describes how to build Strimzi and how to test your changes before submitting a patch or opening a PR.

If you want to get in touch with us first before contributing, you can use:

Learn more on how you can contribute on our Join Us page.