feat: add Apache Ignite 3 kit (ignite3)#684
Conversation
Code Review: feat: add Apache Ignite 3 kit (ignite3)Overall this is a well-structured addition — the design doc is thorough, the observability integration (OTLP push, OTel Java agent) is elegant, and the decision to use raw manifests over a non-existent Helm chart is correct. A few issues need fixing before this is production-ready. Bugs
The The Init Job idempotency
Options: check for the existing Job before applying, or delete the Job as the first step of Documentation version mismatch
But Missing ValidationThe spec explicitly requires:
There is no validation in case "${STORAGE_PROFILE}" in
aimem|aipersist|rocksdb) ;;
*) echo "ERROR: unknown --storage value '${STORAGE_PROFILE}'. Valid: aimem, aipersist, rocksdb" >&2; exit 1 ;;
esacResource DesignPVCs always created, even for
Consider either conditionally omitting the PVC template when OTLP configuration uses curl -s -f -X PATCH "http://${CONTROL_HOST_PRIVATE}:30300/management/v1/configuration/cluster" \NodePort services are exposed on db node IPs, not the control node. Whether Minor
Summary
|
Code Coverage
|
Closes #668
Summary
ignite3kit deploying Apache Ignite 3 ondbnodes via raw K8s manifests (StatefulSet + headless Service + NodePort Service + one-time cluster-init Job)aimem(volatile),aipersist(default, in-memory + disk persistence),rocksdb(disk-based LSM)--versionarg (default3.1.0),--replicasarg (default: db node count)ignite3 sql)/usr/local/otel/opentelemetry-javaagent.jar) mounted from host AMI, sends to node-local OTel Collector viastatus.hostIP:4317/var/log/**/*.logpicks up K3s pod logs automatically)