[[TOC]]
./charts- directory with HELM charts for Kafka and Kafka-Services components../demo- directorydocker-composeto run Kafka with all related services../docs- directory with actual documentation for the service../integration-tests- directory with Robot Framework test cases../kafka-service-operator- directory with operator source code, which is used for running Kafka and Kafka-Services operator../kafka-service-operator-integration-tests- directory with HELM Chart for integration-tests and documentation.
-
Build operator and integration tests, if you need non-master versions.
-
Prepare kubeconfig on you host machine to work with target cluster.
-
Prepare
sample.yamlfile with deployment parameters, which should contains custom docker images if it is needed. -
Store
sample.yamlfile in/charts/helm/kafkaor/charts/helm/kafka-servicedirectory. -
Go to
/charts/helm/kafkaor/charts/helm/kafka-servicedirectory. -
Run the following command if you deploy Kafka only:
# Run in /charts/helm/kafka directory helm install kafke ./ -f sample.yaml -n <TARGET_NAMESPACE>
-
Run the following command if you deploy Kafka's supplementary services only:
# Run in /charts/helm/kafka-service directory helm install kafka-service ./ -f sample.yaml -n <TARGET_NAMESPACE>
There is no smoke tests.
To debug Operator in VSCode you can use Launch Kafka Operator configuration which is already defined in
.vscode/launch.json file.
The developer should configure environment variables:
KUBECONFIG- developer should need to defineKUBECONFIGenvironment variable which should contains path to the kube-config file. It can be defined on configuration level or on the level of user's environment variables.WATCH_NAMESPACE- namespace, in which custom resources should be proceeded.OPERATOR_NAMESPACE- namespace, where Kafka should be proceeded.
To debug Operator in VSCode you can use Launch Kafka-Services Operator configuration which is already defined in
.vscode/launch.json file.
The developer should configure environment variables:
KUBECONFIG- developer should need to defineKUBECONFIGenvironment variable which should contains path to the kube-config file. It can be defined on configuration level or on the level of user's environment variables.WATCH_NAMESPACE- namespace, in which custom resources should be proceeded.OPERATOR_NAMESPACE- namespace, where Kafka-Services should be proceeded.
Note: The
secondaryApiGroupparameter was added to enable listening to several API groups with the same CR type.
There are no well-defined rules for troubleshooting, as each task is unique, but there are some tips that can do:
- Deploy parameters.
- Application manifest.
- Logs from all Kafka and Kafka-Services pods: operators, Kafka and others.
Also, developer can take a look on Troubleshooting guide.
To keep the component up to date, the following activities should be performed regularly:
- Vulnerabilities fixing.
- Kafka or Kafka supplementary services upgrade.
- Bug-fixing, improvement and feature implementation for operator and other related supplementary services.