Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

The Open source Resource as Code framework for Apache Kafka. Jikkou helps you implement GitOps for Kafka at scale!

License

NotificationsYou must be signed in to change notification settings

streamthoughts/jikkou

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Jikkou Logo

Developed by Kafka ❤️, for all Kafka users!

Reliability_ratingMaintainability RatingVulnerabilitiesCoverage

Slack CommunityWebsite

See:official documentation

Jikkou Demonstration

Do You Like This Project? ⭐

Please consider giving us a star ⭐ on GitHub. Your stars motivate us to persistently improve and help other developers discover our project.

Introduction

Jikkou (jikkō / 実行) is an open-source tool built to provide an efficientand easy way to manage, automate, and provision resources on your event-stream platform.

Developed by Kafka ❤️, Jikkou aims to streamline daily operations onApache Kafka, ensuring that platform governance is no longer a boring and tedious task for bothDevelopers andAdministrators.

Jikkou enables a declarative management approach ofTopics,ACLs,Quotas,Schemas,Connectors and even more with the use of YAML files calledResource Definitions.

Taking inspiration fromkubectl and Kubernetes resource definition files, Jikkou offers an intuitive and user-friendly approach to configuration management.

Jikkou Logo

Jikkou can be used withApache Kafka,Aiven,MSK,Confluent Cloud,Redpanda, etc.

🛠️ Installation

The latest stable release of jikkou (x86) for Linux, and macOS can be retrieved viahttps://sdkman.io/[SDKMan]:

sdk install jikkou

Alternatively, the latest stable release of jikkou (x86) for Linux, and macOS can be downloaded fromhttps://github.com/streamthoughts/jikkou/releases/latest[GitHub Releases]

Below are the convenience links for the base downloads of Jikkou.

PlatformLink
Linux⬇️download (jikkou-0.35.0-linux-x86_64.zip)
macOS⬇️download (jikkou-0.35.0-osx-x86_64.zip)

Download the jikkou binary from thereleases page, uncompress and copy to the desired location.

# Download the latest stable releasewget https://github.com/streamthoughts/jikkou/releases/download/v0.35.0/jikkou-0.35.0-linux-x86_64.zip# Uncompressunzip jikkou-0.35.0-linux-x86_64.zip# Copy to the desired locationcp jikkou-0.35.0-linux-x86_64/bin/jikkou$HOME/.local/bin

Finally, Jikkou is can also be retrieved :

Note, it is recommended to install the bash/zsh completion scriptjikkou_completion:

wget https://raw.githubusercontent.com/streamthoughts/jikkou/main/jikkou_completion. jikkou_completion

or alternatively, run the following command for generation the completion script.

source<(jikkou generate-completion)

WARNING: If you are using macOS you may need to remove the quarantine attribute from the bits before you can use them To do this, run the following:sudo xattr -r -d com.apple.quarantine path/to/jikkou/folder/

Overview

Here is an example of how to create and manage aKafka topic using Jikkou:

  • Create a resource filekafka-topics.yaml:kafka-topics.yaml:::
# file:./kafka-topics.yamlapiVersion:'kafka.jikkou.io/v1beta2'kind:'KafkaTopic'metadata:name:'my-first-topic-with-jikkou'labels:{}annotations:{}spec:partitions:12replicas:3configs:min.insync.replicas:2
  • Then run the following command:
$ jikkou apply --files ./kafka-topics.yaml

Jikkou will then take care of computing and applying the necessary changes directly to your cluster.

(output):

TASK [CREATE] Create a new topic my-first-topic-with-jikkou (partitions=12, replicas=3) - CHANGED **********************
{"changed" :true,"end" :1634071489773,"resource" : {"name" :"my-first-topic-with-jikkou","operation" :"ADD","partitions" : {"after" :12,"operation" :"ADD"    },"replicas" : {"after" :3,"operation" :"ADD"    },"configs" : {"min.insync.replicas" : {"after" :"2","operation" :"ADD"      }    }  },"failed" :false,"status" :"CHANGED"}
EXECUTION in 2s 661ms (DRY_RUN)ok : 0, created : 1, altered : 0, deleted : 0 failed : 0

Documentation

Check the officialdocumentation for furtherinstallation anduse cases.

🏭 Developers

You need to haveJava andDocker installed.

Dependencies

Jikkou CLI is built withMicronaut andPicocli

To build the project you will need:

Build project

This project includesMaven Wrapper.

Below are the commands commonly used to build the project:

# Build and run all tests./mvnw clean verify# Build and skip integration tests./mvnw clean verify -DskipTests

Build Docker Images (locally)

$ make

Create Native Executable

# Build and run all tests./mvnw clean verify -Pnative

You can then execute the native executable with:./jikkou-cli/target/jikkou-$PROJECT_VERSION-runner

Create Debian Package (on Linux)

# Build and run all tests./mvnw clean package -Pnative./mvnw package -Pdeb

You can then install the package with:sudo dpkg -i ./dist/jikkou-$PROJECT_VERSION-linux-x86_64.deb

NOTE: Jikkou will install itself in the directory :/opt/jikkou

Formats

This project uses the Maven pluginSpotlessto format all Java classes and to apply some code quality checks.

Bugs

This project uses the Maven pluginSpotBugs andFindSecBugsto run some static analysis to look for bugs in Java code.

Reported bugs can be analysed using SpotBugs GUI:

$ ./mvnw spotbugs:gui

💡 Contributions

Any feedback, bug reports and PRs are greatly appreciated!

Licence

This code base is available under the Apache License, version 2.


[8]ページ先頭

©2009-2025 Movatter.jp