Skip to content

Commit 5cbc705

Browse files
authored
docs(glossary): adds new glossary of strimzi terms (strimzi#11962)
Signed-off-by: prmellor <pmellor@redhat.com>
1 parent 59ca0c3 commit 5cbc705

16 files changed

Lines changed: 373 additions & 1 deletion

File tree

Makefile

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ docu_html: docu_htmlclean docu_versions docu_check
111111
asciidoctor -v --failure-level WARN -t -dbook -a ProductVersion=$(RELEASE_VERSION) -a BridgeVersion=$(BRIDGE_VERSION) -a GithubVersion=$(GITHUB_VERSION) -a OAuthVersion=$(OAUTH_VERSION) documentation/deploying/deploying.adoc -o documentation/html/deploying.html
112112
asciidoctor -v --failure-level WARN -t -dbook -a ProductVersion=$(RELEASE_VERSION) -a BridgeVersion=$(BRIDGE_VERSION) -a GithubVersion=$(GITHUB_VERSION) -a OAuthVersion=$(OAUTH_VERSION) documentation/configuring/configuring.adoc -o documentation/html/configuring.html
113113
asciidoctor -v --failure-level WARN -t -dbook -a ProductVersion=$(RELEASE_VERSION) -a BridgeVersion=$(BRIDGE_VERSION) -a GithubVersion=$(GITHUB_VERSION) -a OAuthVersion=$(OAUTH_VERSION) documentation/overview/overview.adoc -o documentation/html/overview.html
114+
asciidoctor -v --failure-level WARN -t -dbook -a ProductVersion=$(RELEASE_VERSION) -a BridgeVersion=$(BRIDGE_VERSION) -a GithubVersion=$(GITHUB_VERSION) -a OAuthVersion=$(OAUTH_VERSION) documentation/glossary/glossary.adoc -o documentation/html/glossary.html
114115
asciidoctor -v --failure-level WARN -t -dbook -a ProductVersion=$(RELEASE_VERSION) -a BridgeVersion=$(BRIDGE_VERSION) -a GithubVersion=$(GITHUB_VERSION) -a OAuthVersion=$(OAUTH_VERSION) documentation/contributing/contributing.adoc -o documentation/html/contributing.html
115116

116117
docu_htmlnoheader: docu_htmlnoheaderclean docu_versions docu_check
@@ -119,13 +120,15 @@ docu_htmlnoheader: docu_htmlnoheaderclean docu_versions docu_check
119120
asciidoctor -v --failure-level WARN -t -dbook -a ProductVersion=$(RELEASE_VERSION) -a BridgeVersion=$(BRIDGE_VERSION) -a GithubVersion=$(GITHUB_VERSION) -a OAuthVersion=$(OAUTH_VERSION) -s documentation/deploying/deploying.adoc -o documentation/htmlnoheader/deploying-book.html
120121
asciidoctor -v --failure-level WARN -t -dbook -a ProductVersion=$(RELEASE_VERSION) -a BridgeVersion=$(BRIDGE_VERSION) -a GithubVersion=$(GITHUB_VERSION) -a OAuthVersion=$(OAUTH_VERSION) -s documentation/configuring/configuring.adoc -o documentation/htmlnoheader/configuring-book.html
121122
asciidoctor -v --failure-level WARN -t -dbook -a ProductVersion=$(RELEASE_VERSION) -a BridgeVersion=$(BRIDGE_VERSION) -a GithubVersion=$(GITHUB_VERSION) -a OAuthVersion=$(OAUTH_VERSION) -s documentation/overview/overview.adoc -o documentation/htmlnoheader/overview-book.html
123+
asciidoctor -v --failure-level WARN -t -dbook -a ProductVersion=$(RELEASE_VERSION) -a BridgeVersion=$(BRIDGE_VERSION) -a GithubVersion=$(GITHUB_VERSION) -a OAuthVersion=$(OAUTH_VERSION) -s documentation/glossary/glossary.adoc -o documentation/htmlnoheader/glosary-book.html
122124
asciidoctor -v --failure-level WARN -t -dbook -a ProductVersion=$(RELEASE_VERSION) -a BridgeVersion=$(BRIDGE_VERSION) -a GithubVersion=$(GITHUB_VERSION) -a OAuthVersion=$(OAUTH_VERSION) -s documentation/contributing/contributing.adoc -o documentation/htmlnoheader/contributing-book.html
123125

124126
docu_pdf: docu_pdfclean docu_versions docu_check
125127
mkdir -p documentation/pdf
126128
asciidoctor-pdf -v --failure-level WARN -t -dbook -a ProductVersion=$(RELEASE_VERSION) -a BridgeVersion=$(BRIDGE_VERSION) -a GithubVersion=$(GITHUB_VERSION) -a OAuthVersion=$(OAUTH_VERSION) documentation/deploying/deploying.adoc -o documentation/pdf/deploying.pdf
127129
asciidoctor-pdf -v --failure-level WARN -t -dbook -a ProductVersion=$(RELEASE_VERSION) -a BridgeVersion=$(BRIDGE_VERSION) -a GithubVersion=$(GITHUB_VERSION) -a OAuthVersion=$(OAUTH_VERSION) documentation/configuring/configuring.adoc -o documentation/pdf/configuring.pdf
128130
asciidoctor-pdf -v --failure-level WARN -t -dbook -a ProductVersion=$(RELEASE_VERSION) -a BridgeVersion=$(BRIDGE_VERSION) -a GithubVersion=$(GITHUB_VERSION) -a OAuthVersion=$(OAUTH_VERSION) documentation/overview/overview.adoc -o documentation/pdf/overview.pdf
131+
asciidoctor-pdf -v --failure-level WARN -t -dbook -a ProductVersion=$(RELEASE_VERSION) -a BridgeVersion=$(BRIDGE_VERSION) -a GithubVersion=$(GITHUB_VERSION) -a OAuthVersion=$(OAUTH_VERSION) documentation/glossary/glossary.adoc -o documentation/pdf/glossary.pdf
129132
asciidoctor-pdf -v --failure-level WARN -t -dbook -a ProductVersion=$(RELEASE_VERSION) -a BridgeVersion=$(BRIDGE_VERSION) -a GithubVersion=$(GITHUB_VERSION) -a OAuthVersion=$(OAUTH_VERSION) documentation/contributing/contributing.adoc -o documentation/pdf/contributing.pdf
130133

131134
docu_check:
@@ -151,9 +154,11 @@ release_docu: docu_html docu_htmlnoheader docu_pdf
151154
$(CP) -rv documentation/pdf/overview.pdf strimzi-$(RELEASE_VERSION)/docs/pdf/
152155
$(CP) -rv documentation/pdf/deploying.pdf strimzi-$(RELEASE_VERSION)/docs/pdf/
153156
$(CP) -rv documentation/pdf/configuring.pdf strimzi-$(RELEASE_VERSION)/docs/pdf/
157+
$(CP) -rv documentation/pdf/glossary.pdf strimzi-$(RELEASE_VERSION)/docs/pdf/
154158
$(CP) -rv documentation/html/overview.html strimzi-$(RELEASE_VERSION)/docs/html/
155159
$(CP) -rv documentation/html/deploying.html strimzi-$(RELEASE_VERSION)/docs/html/
156160
$(CP) -rv documentation/html/configuring.html strimzi-$(RELEASE_VERSION)/docs/html/
161+
$(CP) -rv documentation/html/glossary.html strimzi-$(RELEASE_VERSION)/docs/html/
157162
$(CP) -rv documentation/html/images/ strimzi-$(RELEASE_VERSION)/docs/html/images/
158163

159164
docu_clean: docu_htmlclean docu_htmlnoheaderclean docu_pdfclean
@@ -197,4 +202,4 @@ checksum_install:
197202
checksum_helm:
198203
@$(FIND) ./helm-charts/ -type f -print0 | LC_ALL=C $(SORT) -z | $(XARGS) -0 $(SHA1SUM) | $(SHA1SUM)
199204

200-
.PHONY: all $(SUBDIRS) $(DOCKERDIRS) $(DOCKER_TARGETS) docu_versions spotbugs docu_check prerequisites_check
205+
.PHONY: all $(SUBDIRS) $(DOCKERDIRS) $(DOCKER_TARGETS) docu_versions spotbugs docu_check prerequisites_check
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
:experimental:
2+
include::shared/attributes.adoc[]
3+
//turns off numbering
4+
:sectnums!:
5+
6+
:context: str
7+
8+
[id="glossary-book_{context}"]
9+
= Strimzi Glossary
10+
11+
[role="_abstract"]
12+
This glossary explains terminology unique to Strimzi and its components.
13+
It supports consistent usage and understanding across Strimzi documentation.
14+
Terms from Kafka and Kubernetes are outside its scope.
15+
16+
//glossary entries
17+
include::modules/glossary/a.adoc[leveloffset=+1]
18+
include::modules/glossary/c.adoc[leveloffset=+1]
19+
include::modules/glossary/d.adoc[leveloffset=+1]
20+
include::modules/glossary/e.adoc[leveloffset=+1]
21+
include::modules/glossary/f.adoc[leveloffset=+1]
22+
include::modules/glossary/k.adoc[leveloffset=+1]
23+
include::modules/glossary/l.adoc[leveloffset=+1]
24+
include::modules/glossary/m.adoc[leveloffset=+1]
25+
include::modules/glossary/n.adoc[leveloffset=+1]
26+
include::modules/glossary/s.adoc[leveloffset=+1]
27+
include::modules/glossary/t.adoc[leveloffset=+1]
28+
include::modules/glossary/u.adoc[leveloffset=+1]

documentation/glossary/modules

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../modules

documentation/glossary/shared

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../shared
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
:_mod-docs-content-type: REFERENCE
2+
3+
[role="_abstract"]
4+
= A
5+
6+
[id="glossary-access-operator_{context}"]
7+
== Access Operator
8+
An optional operator that simplifies the sharing of Kafka connection information and credentials between namespaces.
9+
Connection details are stored centrally in a `Secret` resource.
10+
11+
[id="glossary-authentication_{context}"]
12+
== Authentication
13+
Defines how clients prove their identity to the Kafka cluster.
14+
Strimzi manages authentication as a client-server relationship:
15+
16+
* *Server-Side*: The Kafka cluster's listeners are configured to require a specific authentication type.
17+
* *Client-Side*: A client (a `KafkaUser` or a client-based Kafka component managed by Strimzi) must be configured to provide matching credentials.
18+
19+
Listener authentication (Server-Side)::
20+
Listener authentication is configured per listener in the `spec.kafka.listeners` array of the `Kafka` custom resource.
21+
Supported types include `tls`, `scram-sha-512`, and `custom`.
22+
23+
Client authentication (Kafka user)::
24+
For Kafka users, authentication is managed using the `KafkaUser` custom resource. Supported types are `tls`, `tls-external` (using an external CA), and `scram-sha-512`.
25+
Strimzi automatically creates the necessary `Secret` resources for the user.
26+
27+
Client authentication (Kafka components)::
28+
For Strimzi-managed components, authentication is managed in the custom resource of the component, such as `KafkaConnect`.
29+
Supported types include `tls`, `scram-sha-256`, `scram-sha-512`, `plain`, and `custom`.
30+
31+
For more information, see the following:
32+
33+
* {BookURLDeploying}#con-securing-kafka-authentication-str[Configuring client authentication on listeners^]
34+
* {BookURLDeploying}#con-securing-client-authentication-str[Configuring user authentication^]
35+
36+
[id="glossary-authorization_{context}"]
37+
== Authorization (cluster-wide)
38+
Defines which actions an authenticated client is permitted to perform on Kafka resources, such as writing to or reading from a topic.
39+
Configuration involves setting a cluster-wide mechanism and then, if required, defining user-specific rules.
40+
41+
Cluster-wide authorization::
42+
This defines the overall mechanism used by the Kafka cluster to control client actions.
43+
It's configured in the `spec.kafka.authorization` section of the `Kafka` custom resource.
44+
Supported types include `simple` (using the Kafka's built-in authorizer) and `custom` (using custom authorizers).
45+
46+
User authorization (ACLs)::
47+
This defines specific Access Control Lists (ACLs) for a user, granting permissions to perform actions on `Kafka` resources.
48+
The ACLs are defined in the `spec.authorization` section of the `KafkaUser` custom resource.
49+
If using a custom authorization mechanism, user permissions are typically managed within the external authorization system and not through the `KafkaUser` resource.
50+
51+
For more information, see the following:
52+
53+
* {BookURLDeploying}#con-securing-kafka-authorization-str[Configuring authorized access to Kafka^]
54+
* {BookURLDeploying}#con-securing-client-authorization-str[Configuring user authorization^]
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
:_mod-docs-content-type: REFERENCE
2+
3+
[role="_abstract"]
4+
= C
5+
6+
== Clients CA
7+
[id="glossary-clients-ca_{context}"]
8+
A Certificate Authority managed by the Strimzi Cluster Operator that issues TLS certificates for Kafka clients.
9+
These certificates are used for mutual TLS (mTLS) authentication between external clients and Kafka brokers.
10+
11+
== Cluster CA
12+
[id="glossary-cluster-ca_{context}"]
13+
A Certificate Authority managed by the Strimzi Cluster Operator that issues TLS certificates to secure communication between Kafka brokers, internal components, and Kafka clients.
14+
These certificates enable encrypted and authenticated communication over TLS.
15+
16+
== Cluster Operator
17+
[id="glossary-cluster-operator_{context}"]
18+
The central operator responsible for deploying and managing Kafka clusters, Kafka Connect, Kafka MirrorMaker, and related components.
19+
20+
For more information, see the following:
21+
22+
* {BookURLOverview}#overview-components-cluster-operator-str[Cluster Operator^]
23+
* {BookURLDeploying}#ref-operator-cluster-str[Configuring the Cluster Operator^]
24+
25+
== Cruise Control
26+
[id="glossary-cruise-control_{context}"]
27+
A component that provides automated Kafka cluster rebalancing and optimization.
28+
Cruise Control is configured through the `Kafka` custom resource, while rebalancing operations are managed using the `KafkaRebalance` custom resource.
29+
30+
For more information, see the following:
31+
32+
* {BookURLDeploying}#cruise-control-concepts-str[Using Cruise Control for cluster rebalancing^]
33+
* {BookURLDeploying}#proc-cruise-control-topic-replication-str[Using Cruise Control to modify topic replication factor^]
34+
* {BookURLDeploying}#proc-cruise-control-moving-data-str[Using Cruise Control to reassign partitions on JBOD disks^]
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
:_mod-docs-content-type: REFERENCE
2+
3+
[role="_abstract"]
4+
= D
5+
6+
== Drain Cleaner
7+
[id="glossary-drain-cleaner_{context}"]
8+
A utility installed as a separate component that ensures safe pod evictions during rolling updates to prevent data loss or downtime.
9+
10+
For more information, see {BookURLDeploying}#assembly-drain-cleaner-str[Evicting pods with the Strimzi Drain Cleaner^].
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
:_mod-docs-content-type: REFERENCE
2+
3+
[role="_abstract"]
4+
= E
5+
6+
== Encryption
7+
[id="glossary-encryption_{context}"]
8+
Strimzi supports Transport Layer Security (TLS) to encrypt communication between Kafka and its clients.
9+
TLS is enabled per listener in the `Kafka` custom resource, and communication between internal components is always encrypted.
10+
11+
== Entity Operator
12+
[id="glossary-entity-operator_{context}"]
13+
The Entity Operator runs the Topic Operator and User Operator in separate containers within its pod, allowing them to handle topic and user management.
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
:_mod-docs-content-type: REFERENCE
2+
3+
[role="_abstract"]
4+
= F
5+
6+
== Feature gate
7+
[id="glossary-feature-gate_{context}"]
8+
Used to enable or disable specific features and functions managed by Strimzi operators.
9+
New features may be introduced initially through feature gates.
10+
11+
For more information, see {BookURLDeploying}#ref-operator-cluster-feature-gates-str[Feature gates^].
Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
:_mod-docs-content-type: REFERENCE
2+
3+
[role="_abstract"]
4+
= K
5+
6+
== Kafka (custom resource)
7+
[id="glossary-kafka-cr_{context}"]
8+
A custom resource for deploying and configuring a Kafka cluster, including settings for nodes, listeners, storage, security, and internal components like Cruise Control and the Entity Operator.
9+
10+
For more information, see the {BookURLConfiguring}#type-Kafka-reference[`Kafka` schema reference^].
11+
12+
== Kafka Bridge
13+
[id="glossary-kafka-bridge_{context}"]
14+
Provides a RESTful interface that allows HTTP-based clients to interact with a Kafka cluster.
15+
16+
For more information, see {BookURLBridge}[Using the Kafka Bridge^].
17+
18+
== KafkaBridge (custom resource)
19+
[id="glossary-kafkabridge-cr_{context}"]
20+
A custom resource used to deploy and configure a Kafka Bridge instance, specifying replicas, authentication, and connection details.
21+
22+
For more information, see the {BookURLConfiguring}#type-KafkaBridge-reference[`KafkaBridge` schema reference^].
23+
24+
== KafkaConnect (custom resource)
25+
[id="glossary-kafkaconnect-cr_{context}"]
26+
A custom resource used to deploy and configure a Kafka Connect cluster for integrating external systems with Kafka.
27+
28+
For more information, see the {BookURLConfiguring}#type-KafkaConnect-reference[`KafkaConnect` schema reference^].
29+
30+
== KafkaConnector (custom resource)
31+
[id="glossary-kafkaconnector-cr_{context}"]
32+
A custom resource for managing individual Kafka connectors in a Kafka Connect cluster declaratively and independently of the `KafkaConnect` deployment.
33+
34+
For more information, see the {BookURLConfiguring}#type-KafkaConnector-reference[`KafkaConnector` schema reference^].
35+
36+
== KafkaExporter
37+
[id="glossary-kafkaexporter_{context}"]
38+
The Kafka Exporter exposes Kafka metrics for Prometheus.
39+
It is configured as part of the `Kafka` custom resource.
40+
41+
For more information, see the {BookURLConfiguring}#type-KafkaExporterSpec-reference[`KafkaExporterSpec` schema reference^].
42+
43+
== KafkaMirrorMaker2 (custom resource)
44+
[id="glossary-kafkamirrormaker2-cr_{context}"]
45+
A custom resource for deploying a Kafka MirrorMaker 2 instance to replicate data between Kafka clusters.
46+
47+
For more information, see the {BookURLConfiguring}#type-KafkaMirrorMaker2-reference[`KafkaMirrorMaker2` schema reference^].
48+
49+
== KafkaNodePool (custom resource)
50+
[id="glossary-kafkanodepool-cr_{context}"]
51+
A custom resource used to configure distinct groups of nodes within a Kafka cluster.
52+
Nodes in a node pool can be configured to operate as Kafka brokers, controllers, or both.
53+
54+
For more information, see the {BookURLConfiguring}#type-KafkaNodePool-reference[`KafkaNodePool` schema reference^].
55+
56+
== KafkaRebalance (custom resource)
57+
[id="glossary-kafkarebalance-cr_{context}"]
58+
A custom resource that triggers and manages cluster rebalancing through Cruise Control by setting optimization goals.
59+
60+
Rebalance modes:
61+
62+
full:: Load rebalanced across all brokers
63+
add-brokers:: Replicas moved to newly added brokers
64+
remove-brokers:: Replicas moved off brokers being removed
65+
remove-disks:: Data moved between storage volumes within the same broker
66+
67+
For more information, see the {BookURLConfiguring}#type-KafkaRebalance-reference[`KafkaRebalance` schema reference^].
68+
69+
== KafkaTopic (custom resource)
70+
[id="glossary-kafkatopic-cr_{context}"]
71+
A custom resource for managing Kafka topics (creation, configuration, deletion) through the Topic Operator.
72+
73+
For more information, see the {BookURLConfiguring}#type-KafkaTopic-reference[`KafkaTopic` schema reference^].
74+
75+
== KafkaUser (custom resource)
76+
[id="glossary-kafkauser-cr_{context}"]
77+
A custom resource for managing Kafka users (creation, configuration, deletion) through the User Operator, including their authentication credentials and access permissions.
78+
79+
For more information, see the {BookURLConfiguring}#type-KafkaUser-reference[`KafkaUser` schema reference^].

0 commit comments

Comments
 (0)