diff --git a/antora.yml b/antora.yml index ce87b52..84d42a0 100644 --- a/antora.yml +++ b/antora.yml @@ -12,24 +12,20 @@ nav: asciidoc: attributes: - pulsar_version: '2.10' #DO NOT INCLUDE PATCH VERSION .. - pulsar_full_version: '2.10.1' product: 'Astra Streaming' + pulsar: 'Apache Pulsar' + pulsar-short: 'Pulsar' + pulsar-reg: 'Apache Pulsar(TM)' + pulsar-version: '2.10' #DO NOT INCLUDE PATCH VERSION .. + pulsar-version-patch: '2.10.1' kafka_for_astra: 'Starlight for Kafka' starlight_rabbitmq: 'Starlight for RabbitMQ' gpt-schema-translator: 'GPT schema translator' - base_url: 'https://api.astra.datastax.com' - base_api: '/v2/streaming' - bearer_token: '$BEARER_TOKEN' - tenant_name_with_topics: 'llp-test' - cluster_name: 'astradev-aws' - tenant_name: 'testcreate' - topic_name: 'blah' - request_feature_access_email: 'astrastreaming@datastax.com' - streaming_signup_url: 'https://astra.datastax.com/streaming' - login_url: 'https://astra.datastax.com' - langstream: 'RAGStack' - ragstack: 'RAGStack' - db-serverless: 'Astra DB Serverless' url-astra: 'https://astra.datastax.com' link-astra-portal: '{url-astra}[{astra_ui}^]' + astra-streaming-examples-repo: 'https://raw.githubusercontent.com/datastax/astra-streaming-examples/master' + + # LEGACY ATTRIBUTES - CONSIDER REMOVING + langstream: 'RAGStack' + ragstack: 'RAGStack' + streaming_signup_url: 'https://astra.datastax.com/streaming' \ No newline at end of file diff --git a/modules/ROOT/examples/check_tenant_exists.sh b/modules/ROOT/examples/check_tenant_exists.sh index 3328824..e44c66b 100644 --- a/modules/ROOT/examples/check_tenant_exists.sh +++ b/modules/ROOT/examples/check_tenant_exists.sh @@ -1,2 +1,2 @@ -curl --location --head '{base_url}{base_api}/tenants/test-llp' \ ---header "Authorization: Bearer {bearer_token}" +curl --location --head 'https://api.astra.datastax.com/v2/streaming/tenants/test-llp' \ +--header "Authorization: Bearer $BEARER_TOKEN" diff --git a/modules/ROOT/examples/create_tenant.sh b/modules/ROOT/examples/create_tenant.sh index dc4285c..0e6b2bc 100644 --- a/modules/ROOT/examples/create_tenant.sh +++ b/modules/ROOT/examples/create_tenant.sh @@ -1,9 +1,9 @@ -curl --location --request POST '{base_url}{base_api}/tenants?topic={topic_name}' \ +curl --location --request POST 'https://api.astra.datastax.com/v2/streaming/tenants?topic=blah' \ --header 'Content-Type: application/json' \ ---header "Authorization: Bearer {bearer_token}" \ +--header "Authorization: Bearer $BEARER_TOKEN" \ --data-raw '{ "cloudProvider": "aws", "cloudRegion": "useast2", - "tenantName": "{tenant_name}", + "tenantName": "testcreate", "userEmail": "joshua@example.com" }' diff --git a/modules/ROOT/examples/curl_deflate.sh b/modules/ROOT/examples/curl_deflate.sh index 33a5b48..b5bd363 100644 --- a/modules/ROOT/examples/curl_deflate.sh +++ b/modules/ROOT/examples/curl_deflate.sh @@ -1 +1 @@ -curl -v -H 'Authorization: Bearer {bearer_token}' -H 'Accept-encoding: deflate' https://prometheus-aws-useast1.streaming.datastax.com/pulsarmetrics/tenant-1 --compressed \ No newline at end of file +curl -v -H 'Authorization: Bearer $BEARER_TOKEN' -H 'Accept-encoding: deflate' https://prometheus-aws-useast1.streaming.datastax.com/pulsarmetrics/tenant-1 --compressed \ No newline at end of file diff --git a/modules/ROOT/examples/curl_gzip.sh b/modules/ROOT/examples/curl_gzip.sh index 1c4eb12..57725ff 100644 --- a/modules/ROOT/examples/curl_gzip.sh +++ b/modules/ROOT/examples/curl_gzip.sh @@ -1 +1 @@ -curl -v -H 'Authorization: Bearer {bearer_token}' -H 'Accept-encoding: gzip' https://prometheus-aws-useast1.streaming.datastax.com/pulsarmetrics/tenant-1 | zcat \ No newline at end of file +curl -v -H 'Authorization: Bearer $BEARER_TOKEN' -H 'Accept-encoding: gzip' https://prometheus-aws-useast1.streaming.datastax.com/pulsarmetrics/tenant-1 | zcat \ No newline at end of file diff --git a/modules/ROOT/examples/delete_tenant_hard.sh b/modules/ROOT/examples/delete_tenant_hard.sh index 0d3db14..1b24eef 100644 --- a/modules/ROOT/examples/delete_tenant_hard.sh +++ b/modules/ROOT/examples/delete_tenant_hard.sh @@ -1,2 +1,2 @@ -curl --location --request DELETE '{base_url}{base_api}/tenants/{tenant_name}/clusters/{cluster_name}' \ ---header "Authorization: Bearer {bearer_token}" +curl --location --request DELETE 'https://api.astra.datastax.com/v2/streaming/tenants/testcreate/clusters/astradev-aws' \ +--header "Authorization: Bearer $BEARER_TOKEN" diff --git a/modules/ROOT/examples/delete_tenant_soft.sh b/modules/ROOT/examples/delete_tenant_soft.sh index 75bb7cc..7c02674 100644 --- a/modules/ROOT/examples/delete_tenant_soft.sh +++ b/modules/ROOT/examples/delete_tenant_soft.sh @@ -1,2 +1,2 @@ -curl --location --request DELETE '{base_url}{base_api}/tenants/{tenant_name}/clusters/{cluster_name}?opt={cluster_name}' \ ---header "Authorization: Bearer {bearer_token}" +curl --location --request DELETE 'https://api.astra.datastax.com/v2/streaming/tenants/testcreate/clusters/astradev-aws?opt=astradev-aws' \ +--header "Authorization: Bearer $BEARER_TOKEN" diff --git a/modules/ROOT/examples/get_clusters.sh b/modules/ROOT/examples/get_clusters.sh index 7f45c6f..7c520e5 100644 --- a/modules/ROOT/examples/get_clusters.sh +++ b/modules/ROOT/examples/get_clusters.sh @@ -1,2 +1,2 @@ -curl --location --request GET '{base_url}{base_api}/clusters' \ ---header "Authorization: Bearer {bearer_token}" +curl --location --request GET 'https://api.astra.datastax.com/v2/streaming/clusters' \ +--header "Authorization: Bearer $BEARER_TOKEN" diff --git a/modules/ROOT/examples/get_providers.sh b/modules/ROOT/examples/get_providers.sh index 9ea4d8f..c2a7580 100644 --- a/modules/ROOT/examples/get_providers.sh +++ b/modules/ROOT/examples/get_providers.sh @@ -1,2 +1,2 @@ -curl --location --request GET '{base_url}{base_api}/providers' \ ---header "Authorization: Bearer {bearer_token}" +curl --location --request GET 'https://api.astra.datastax.com/v2/streaming/providers' \ +--header "Authorization: Bearer $BEARER_TOKEN" diff --git a/modules/ROOT/examples/get_tenant_limits.sh b/modules/ROOT/examples/get_tenant_limits.sh index 67daded..e4ffb24 100644 --- a/modules/ROOT/examples/get_tenant_limits.sh +++ b/modules/ROOT/examples/get_tenant_limits.sh @@ -1,3 +1,3 @@ -curl --location --request GET '{base_url}{base_api}/tenants/{tenant_name_with_topics}/limits' \ ---header 'X-DataStax-Pulsar-Cluster: {cluster_name}' \ ---header "Authorization: Bearer {bearer_token}" +curl --location --request GET 'https://api.astra.datastax.com/v2/streaming/tenants/llp-test/limits' \ +--header 'X-DataStax-Pulsar-Cluster: astradev-aws' \ +--header "Authorization: Bearer $BEARER_TOKEN" diff --git a/modules/ROOT/examples/get_tenants.sh b/modules/ROOT/examples/get_tenants.sh index 955966a..45dec7d 100644 --- a/modules/ROOT/examples/get_tenants.sh +++ b/modules/ROOT/examples/get_tenants.sh @@ -1,2 +1,2 @@ -curl --location --request GET '{base_url}{base_api}/tenants' \ ---header "Authorization: Bearer {bearer_token}" +curl --location --request GET 'https://api.astra.datastax.com/v2/streaming/tenants' \ +--header "Authorization: Bearer $BEARER_TOKEN" diff --git a/modules/ROOT/examples/test.sh b/modules/ROOT/examples/test.sh index 8a84f0f..f71331b 100755 --- a/modules/ROOT/examples/test.sh +++ b/modules/ROOT/examples/test.sh @@ -17,7 +17,7 @@ for FILE in *; do if [[ "$FILE" != "test"* ]] then - gsed "s#{base_url}#$base_url#; s#{base_api}#$base_api#; s#{tenant_name}#$tenant_name#; s#{tenant_name_with_topics}#$tenant_name_with_topics#; s#{topic_name}#$topic_name#; s#{cluster_name}#$cluster_name#; s#{bearer_token}#$BEARER_TOKEN#;" $FILE > $FILE.tmp; + gsed "s#https://api.astra.datastax.com#$base_url#; s#/v2/streaming#$base_api#; s#testcreate#$tenant_name#; s#llp-test#$tenant_name_with_topics#; s#blah#$topic_name#; s#astradev-aws#$cluster_name#; s#$BEARER_TOKEN#$BEARER_TOKEN#;" $FILE > $FILE.tmp; chmod 755 $FILE.tmp; fi done diff --git a/modules/ROOT/pages/astream-faq.adoc b/modules/ROOT/pages/astream-faq.adoc index f892a66..6c47a31 100644 --- a/modules/ROOT/pages/astream-faq.adoc +++ b/modules/ROOT/pages/astream-faq.adoc @@ -10,9 +10,9 @@ See xref:getting-started:index.adoc[]. See xref:operations:astream-pricing.adoc[]. -== Why is {product} based on Apache Pulsar? +== Why is {product} based on {pulsar-reg}? -For information about the decision to use Apache Pulsar, see https://www.datastax.com/blog/four-reasons-why-apache-pulsar-essential-modern-data-stack[Four Reasons Why Apache Pulsar is Essential to the Modern Data Stack]. +For information about the decision to use {pulsar}, see https://www.datastax.com/blog/four-reasons-why-apache-pulsar-essential-modern-data-stack[Four Reasons Why {pulsar} is Essential to the Modern Data Stack]. == What happened to Kesque? @@ -26,11 +26,11 @@ With the launch of {product}, {company} began shutting down the Kesque service a The pricing model also makes {product} accessible to mid market and small/medium business customers who need event stream processing capabilities to run core parts of their business. -And finally {product} offers a user-friendly interface and free tier to satisfy the needs of individual developers and technologists who want to learn more about Apache Pulsar and data streaming in general. +And finally {product} offers a user-friendly interface and free tier to satisfy the needs of individual developers and technologists who want to learn more about {pulsar} and data streaming in general. == What is CDC for {astra_db}? -Change Data Capture (CDC) for {astra_db} uses a Pulsar IO source connector that processes changes from the Cassandra Change Agent through a Pulsar topic. +Change Data Capture (CDC) for {astra_db} uses a {pulsar-short} IO source connector that processes changes from the Cassandra Change Agent through a {pulsar-short} topic. For more information, see xref:developing:astream-cdc.adoc[]. == What are tenants, namespaces, topics, and sinks? diff --git a/modules/ROOT/pages/astream-org-permissions.adoc b/modules/ROOT/pages/astream-org-permissions.adoc index b620d5e..d496737 100644 --- a/modules/ROOT/pages/astream-org-permissions.adoc +++ b/modules/ROOT/pages/astream-org-permissions.adoc @@ -36,22 +36,22 @@ Additional permissions might be required, depending on the tasks the role needs To control access to specific streaming tenants, you can set granular xref:astra-db-serverless:administration:manage-database-access.adoc#role-scopes[resource scopes] on custom roles. ==== -== Authentication and authorization in Pulsar and {astra_db} +== Authentication and authorization in {pulsar-reg} and {astra_db} -Pulsar has the concept of https://pulsar.apache.org/docs/security-authorization/[clients with role tokens]. -In Pulsar, authentication is the process of verifying a provided token (JWT), and authorization is the process of determining if the role claimed in that token is allowed to complete the requested action. +{pulsar-short} has the concept of https://pulsar.apache.org/docs/security-authorization/[clients with role tokens]. +In {pulsar-short}, authentication is the process of verifying a provided token (JWT), and authorization is the process of determining if the role claimed in that token is allowed to complete the requested action. -{product} uses the {company} version of Apache Pulsar (xref:luna-streaming::index.adoc[Luna Streaming]). -The https://github.com/datastax/pulsar[Luna project] is an open fork of the Pulsar project that maintains feature parity with OSS Pulsar. {product}, as a managed service, abstracts some features/options of Pulsar to ensure continuous, reliable service. +{product} uses the {company} version of {pulsar} (xref:luna-streaming::index.adoc[Luna Streaming]). +The https://github.com/datastax/pulsar[Luna project] is an open fork of the {pulsar-short} project that maintains feature parity with OSS {pulsar-short}. {product}, as a managed service, abstracts some features/options of {pulsar-short} to ensure continuous, reliable service. -On a shared cluster, your {astra_db} organization has one or more tenants on a shared Pulsar cluster. -Each of your tenants is secured by Pulsar authentication and authorization models, as well as your {astra_db} organization's authentication and authorization ({astra_db} RBAC). +On a shared cluster, your {astra_db} organization has one or more tenants on a shared {pulsar-short} cluster. +Each of your tenants is secured by {pulsar-short} authentication and authorization models, as well as your {astra_db} organization's authentication and authorization ({astra_db} RBAC). {product} shared clusters are created and administered by {product} administrators. Each tenant is assigned a custom role and permissions limited to that tenant only. All tokens created within a tenant are assigned roles similar to the assigning tenant. -For programmatic access, you use {astra_db} application tokens or Pulsar JWT, depending on the operation you need to perform. +For programmatic access, you use {astra_db} application tokens or {pulsar-short} JWT, depending on the operation you need to perform. For more information, see xref:operations:astream-token-gen.adoc[]. == See also diff --git a/modules/ROOT/pages/astream-subscriptions-exclusive.adoc b/modules/ROOT/pages/astream-subscriptions-exclusive.adoc index c50a45e..896b6f9 100644 --- a/modules/ROOT/pages/astream-subscriptions-exclusive.adoc +++ b/modules/ROOT/pages/astream-subscriptions-exclusive.adoc @@ -1,21 +1,21 @@ -= Exclusive subscriptions in Pulsar += Exclusive subscriptions in {pulsar-reg} :navtitle: Exclusive :page-tag: pulsar-subscriptions,quickstart,admin,dev,pulsar -_Subscriptions_ in Pulsar describe which consumers are consuming data from a topic and how they want to consume that data. +_Subscriptions_ in {pulsar-reg} describe which consumers are consuming data from a topic and how they want to consume that data. An _exclusive subscription_ describes a basic publish-subscribe (pub-sub) pattern where a single consumer subscribes to a single topic and consumes from it. -This page explains how to use Pulsar's exclusive subscription model to manage your topic consumption. +This page explains how to use {pulsar-short}'s exclusive subscription model to manage your topic consumption. include::ROOT:partial$subscription-prereq.adoc[] [#example] == Exclusive subscription example -. To configure a Pulsar exclusive subscription, define a `pulsarConsumer` object in `SimplePulsarConsumer.java`, as you would for other subscription types. +. To configure a {pulsar-short} exclusive subscription, define a `pulsarConsumer` object in `SimplePulsarConsumer.java`, as you would for other subscription types. However, you don't need to declare a `subscriptionType`. -Whereas other subscription types required you to declare a specific `subscriptionType`, Pulsar creates an exclusive subscription by default if you don't declare a `subscriptionType`. +Whereas other subscription types required you to declare a specific `subscriptionType`, {pulsar-short} creates an exclusive subscription by default if you don't declare a `subscriptionType`. + .SimplePulsarConsumer.java [source,java] @@ -82,7 +82,7 @@ Caused by: org.apache.pulsar.client.api.PulsarClientException$ConsumerBusyExcept == See also -* xref:astream-subscriptions.adoc[Subscriptions in Pulsar] -* xref:astream-subscriptions-shared.adoc[Shared subscriptions] -* xref:astream-subscriptions-failover.adoc[Failover subscriptions] -* xref:astream-subscriptions-keyshared.adoc[Key shared subscriptions] +* xref:astream-subscriptions.adoc[] +* xref:astream-subscriptions-shared.adoc[] +* xref:astream-subscriptions-failover.adoc[] +* xref:astream-subscriptions-keyshared.adoc[] diff --git a/modules/ROOT/pages/astream-subscriptions-failover.adoc b/modules/ROOT/pages/astream-subscriptions-failover.adoc index e569ddf..95d7837 100644 --- a/modules/ROOT/pages/astream-subscriptions-failover.adoc +++ b/modules/ROOT/pages/astream-subscriptions-failover.adoc @@ -1,22 +1,22 @@ -= Failover subscriptions in Pulsar += Failover subscriptions in {pulsar-reg} :navtitle: Failover :page-tag: pulsar-subscriptions,quickstart,admin,dev,pulsar -_Subscriptions_ in Pulsar describe which consumers are consuming data from a topic and how they want to consume that data. +_Subscriptions_ in {pulsar-reg} describe which consumers are consuming data from a topic and how they want to consume that data. If an xref:astream-subscriptions-exclusive.adoc[exclusive] consumer fails, the topic backlog accumulates stale, unacknowledged messages. -Pulsar solves this problem with failover subscriptions. -In _failover subscriptions_, Pulsar designates one primary consumer and multiple standby consumers. +{pulsar-short} solves this problem with failover subscriptions. +In _failover subscriptions_, {pulsar-short} designates one primary consumer and multiple standby consumers. If the primary consumer disconnects, the standby consumers begin consuming the subsequent unacknowledged messages. -This page explains how to use Pulsar's failover subscription model to manage your topic consumption. +This page explains how to use {pulsar-short}'s failover subscription model to manage your topic consumption. include::ROOT:partial$subscription-prereq.adoc[] [#example] == Failover subscription example -To try out a Pulsar failover subscription, add `.subscriptionType(SubscriptionType.Failover)` to the `pulsarConsumer` in `SimplePulsarConsumer.java`: +To try out a {pulsar-short} failover subscription, add `.subscriptionType(SubscriptionType.Failover)` to the `pulsarConsumer` in `SimplePulsarConsumer.java`: .SimplePulsarConsumer.java [source,java] @@ -86,7 +86,7 @@ To test them, you can progressively end each `SimplePulsarConsumer` process, and == See also -* xref:astream-subscriptions.adoc[Subscriptions in Pulsar] -* xref:astream-subscriptions-exclusive.adoc[Exclusive subscriptions] -* xref:astream-subscriptions-shared.adoc[Shared subscriptions] -* xref:astream-subscriptions-keyshared.adoc[Key shared subscriptions] \ No newline at end of file +* xref:astream-subscriptions.adoc[] +* xref:astream-subscriptions-exclusive.adoc[] +* xref:astream-subscriptions-shared.adoc[] +* xref:astream-subscriptions-keyshared.adoc[] \ No newline at end of file diff --git a/modules/ROOT/pages/astream-subscriptions-keyshared.adoc b/modules/ROOT/pages/astream-subscriptions-keyshared.adoc index 6c81be3..064c883 100644 --- a/modules/ROOT/pages/astream-subscriptions-keyshared.adoc +++ b/modules/ROOT/pages/astream-subscriptions-keyshared.adoc @@ -1,10 +1,10 @@ -= Key shared subscriptions in Pulsar += Key shared subscriptions in {pulsar-reg} :navtitle: Key shared :page-tag: pulsar-subscriptions,quickstart,admin,dev,pulsar -_Subscriptions_ in Pulsar describe which consumers are consuming data from a topic and how they want to consume that data. +_Subscriptions_ in {pulsar-reg} describe which consumers are consuming data from a topic and how they want to consume that data. -Pulsar's xref:astream-subscriptions-shared.adoc[shared subscription] model can increase the message processing rate, but it risks losing message ordering guarantees. +{pulsar-short}'s xref:astream-subscriptions-shared.adoc[shared subscription] model can increase the message processing rate, but it risks losing message ordering guarantees. In a round-robin delivery, there's no way for the broker to know which messages are going to which consumer. _Key shared subscriptions_ allow multiple consumers to subscribe to a topic, and provide additional metadata in the form of _keys_ that link messages to specific consumers. @@ -13,14 +13,14 @@ Keys are generated with hashing that converts arbitrary values like `topic-name` * *Auto hash*: Uses _consistent hashing_ to balance range values across available consumers without requiring manual setup of hash ranges. * *Sticky hash*: The client manually assigns consumer range values, and then all hashes within a configured range go to one consumer. -This page explains how to use Pulsar's key shared subscription model to manage your topic consumption. +This page explains how to use {pulsar-short}'s key shared subscription model to manage your topic consumption. include::ROOT:partial$subscription-prereq.adoc[] [#example] == Key shared subscription example -. To try out a Pulsar key shared subscription, add `.subscriptionType(SubscriptionType.Key_Shared)` to the `pulsarConsumer` in `SimplePulsarConsumer.java`: +. To try out a {pulsar-short} key shared subscription, add `.subscriptionType(SubscriptionType.Key_Shared)` to the `pulsarConsumer` in `SimplePulsarConsumer.java`: + .SimplePulsarConsumer.java [source,java] @@ -144,7 +144,7 @@ Then, you can launch multiple instances of `SimplePulsarConsumer.java` to consum == See also -* xref:astream-subscriptions.adoc[Subscriptions in Pulsar] -* xref:astream-subscriptions-exclusive.adoc[Exclusive subscriptions] -* xref:astream-subscriptions-shared.adoc[Shared subscriptions] -* xref:astream-subscriptions-failover.adoc[Failover subscriptions] \ No newline at end of file +* xref:astream-subscriptions.adoc[] +* xref:astream-subscriptions-exclusive.adoc[] +* xref:astream-subscriptions-shared.adoc[] +* xref:astream-subscriptions-failover.adoc[] \ No newline at end of file diff --git a/modules/ROOT/pages/astream-subscriptions-shared.adoc b/modules/ROOT/pages/astream-subscriptions-shared.adoc index 286a325..811ea84 100644 --- a/modules/ROOT/pages/astream-subscriptions-shared.adoc +++ b/modules/ROOT/pages/astream-subscriptions-shared.adoc @@ -1,21 +1,21 @@ -= Shared subscriptions in Pulsar += Shared subscriptions in {pulsar-reg} :navtitle: Shared :page-tag: pulsar-subscriptions,quickstart,admin,dev,pulsar -_Subscriptions_ in Pulsar describe which consumers are consuming data from a topic and how they want to consume that data. +_Subscriptions_ in {pulsar-reg} describe which consumers are consuming data from a topic and how they want to consume that data. A _shared subscription_ allows multiple consumers to consume messages from a single topic in a round-robin fashion. -More consumers in a shared subscription can increase your Pulsar deployment's rate of message consumption. +More consumers in a shared subscription can increase your {pulsar-short} deployment's rate of message consumption. However, there is a risk of losing message ordering guarantees and acknowledgment schemes. -This page explains how you can use Pulsar's shared subscription model to manage your topic consumption. +This page explains how you can use {pulsar-short}'s shared subscription model to manage your topic consumption. include::ROOT:partial$subscription-prereq.adoc[] [#example] == Shared subscription example -To try out a Pulsar shared subscription, add `.subscriptionType(SubscriptionType.Shared)` to the `pulsarConsumer` in `SimplePulsarConsumer.java`: +To try out a {pulsar-short} shared subscription, add `.subscriptionType(SubscriptionType.Shared)` to the `pulsarConsumer` in `SimplePulsarConsumer.java`: .SimplePulsarConsumer.java [source,java] @@ -85,7 +85,7 @@ All the consumers subscribe to the topic and consume messages in a round-robin f == See also -* xref:astream-subscriptions.adoc[Subscriptions in Pulsar] -* xref:astream-subscriptions-exclusive.adoc[Exclusive subscriptions] -* xref:astream-subscriptions-failover.adoc[Failover subscriptions] -* xref:astream-subscriptions-keyshared.adoc[Key shared subscriptions] +* xref:astream-subscriptions.adoc[] +* xref:astream-subscriptions-exclusive.adoc[] +* xref:astream-subscriptions-failover.adoc[] +* xref:astream-subscriptions-keyshared.adoc[] diff --git a/modules/ROOT/pages/astream-subscriptions.adoc b/modules/ROOT/pages/astream-subscriptions.adoc index 607612e..47ba616 100644 --- a/modules/ROOT/pages/astream-subscriptions.adoc +++ b/modules/ROOT/pages/astream-subscriptions.adoc @@ -1,8 +1,8 @@ -= Subscriptions in Pulsar -:navtitle: Pulsar subscriptions overview += Subscriptions in {pulsar-reg} +:navtitle: {pulsar-short} subscriptions overview :page-tag: pulsar-subscriptions,quickstart,admin,dev,pulsar -_Subscriptions_ in Pulsar describe which consumers are consuming data from a topic and how they want to consume that data. +_Subscriptions_ in {pulsar-reg} describe which consumers are consuming data from a topic and how they want to consume that data. == Subscription metadata @@ -14,7 +14,7 @@ This metadata includes: * Subscription type: The type of subscription being used * Subscription cursor: A representation of the consumer's current place in the subscribed topic log -For example, the Pulsar consumer below has a `Shared` subscription to `my-topic` that starts at the `Earliest` cursor position in `my-subscription`: +For example, the {pulsar-short} consumer below has a `Shared` subscription to `my-topic` that starts at the `Earliest` cursor position in `my-subscription`: [source,java] ---- diff --git a/modules/ROOT/pages/index.adoc b/modules/ROOT/pages/index.adoc index 15efce2..a5b1971 100644 --- a/modules/ROOT/pages/index.adoc +++ b/modules/ROOT/pages/index.adoc @@ -3,9 +3,9 @@ :page-tag: astra-streaming,planner,admin,dev,pulsar {product} is a cloud native data streaming and event stream processing -service tightly integrated into the {astra_ui} and powered by Apache Pulsar(TM). -Using {product}, customers can quickly create Pulsar instances, -manage their clusters, scale across cloud regions, and manage Pulsar resources +service tightly integrated into the {astra_ui} and powered by {pulsar-reg}. +Using {product}, customers can quickly create {pulsar-short} instances, +manage their clusters, scale across cloud regions, and manage {pulsar-short} resources such as topics, connectors, functions and subscriptions. {product} takes advantage of the core capabilities built into {astra_db} such diff --git a/modules/ROOT/partials/subscription-prereq.adoc b/modules/ROOT/partials/subscription-prereq.adoc index 2f7e616..9494324 100644 --- a/modules/ROOT/partials/subscription-prereq.adoc +++ b/modules/ROOT/partials/subscription-prereq.adoc @@ -8,7 +8,7 @@ This example requires the following: * {product} access with at least one streaming tenant and one topic -* A local clone of the https://github.com/datastax/pulsar-subscription-example[{company} Pulsar Subscription Example repository] +* A local clone of the https://github.com/datastax/pulsar-subscription-example[{company} {pulsar-short} Subscription Example repository] * In the `pulsar-subscription-example` repo, navigate to `src/main/resources`, and then edit `application.properties` to connect to your {product} cluster: + diff --git a/modules/apis/pages/api-operations.adoc b/modules/apis/pages/api-operations.adoc index fc0cc22..39d0064 100644 --- a/modules/apis/pages/api-operations.adoc +++ b/modules/apis/pages/api-operations.adoc @@ -1,7 +1,11 @@ = API operations //TODO: Needs more work and clean up of all source blocks. -This {product} workbook is a comprehensive guide that provides detailed examples and practices for managing the {product} platform using the DevOps APIs. It provides details on the most commonly used APIs for managing {product} and Pulsar instances. These details include required parameters and the expected output from the API. The workbook is designed to fill the gap between detailed API reference docs and HowTo guides. The result is to help customers in operating and managing {product} and provide guidance on how to use DevOps API to automate many common tasks. +This {product} workbook is a comprehensive guide that provides detailed examples and practices for managing the {product} platform using the DevOps APIs. +It provides details on the most commonly used APIs for managing {product} and {pulsar-reg} instances. +These details include required parameters and the expected output from the API. +The workbook is designed to fill the gap between detailed API reference docs and HowTo guides. +The result is to help customers in operating and managing {product} and provide guidance on how to use DevOps API to automate many common tasks. The workbook covers a wide range of topics, including provisioning of resources, monitoring, and troubleshooting. It provides instructions for various operations, such as creating a new tenant, namespace, topics, geo-replication, and access tokens, to setting up monitoring and alerting, and troubleshooting common issues. @@ -163,7 +167,7 @@ curl --fail --location --request POST 'https://api.astra.datastax.com/v2/streami .Result [%collapsible] ==== -The output includes the "pulsarToken" which is the JWT for this Pulsar instance. +The output includes the "pulsarToken" which is the JWT for this {pulsar-short} instance. [source,console] ---- @@ -204,9 +208,9 @@ curl --location --request DELETE 'https://api.astra.datastax.com/v2/streaming/te No response indicates success. -== Puslar API namespace operations +== {pulsar-short} API namespace operations -To manage {product} namespaces, use the https://pulsar.apache.org/admin-rest-api/[Pulsar REST APIs]. +To manage {product} namespaces, use the https://pulsar.apache.org/admin-rest-api/[{pulsar-short} REST APIs]. === Get existing namespaces @@ -386,7 +390,7 @@ curl -sS --fail --location "$WEB_SERVICE_URL/admin/v2/namespaces/$TENANT/$NAMES The response is a number. -== Pulsar Admin API topic operations +== {pulsar-short} Admin API topic operations === Get topics in a namespace @@ -932,7 +936,7 @@ curl --location --fail --request DELETE "https://api.astra.datastax.com/v2/strea No response indicates success. -== Pulsar Admin API functions operations +== {pulsar-short} Admin API functions operations === List existing functions in a namespace @@ -1160,10 +1164,10 @@ No response indicates success. === List existing token IDs Get a list of Token IDs for your Cluster. -With the TokenID, you can then lookup and obtain the Pulsar JWT string. +With the TokenID, you can then lookup and obtain the {pulsar-short} JWT string. The TokenIDs are also listed in the {astra_ui} for that Tenant and Cluster. -Required parameters "CLUSTER" is obtained from the “List Tenants with Details" API command. +Required parameters "CLUSTER" is obtained from the "List Tenants with Details" API command. [source,curl] ---- @@ -1205,10 +1209,10 @@ eyJhbGciOiJSUzI1NiIsI . . . === Create a JWT -Create a new Pulsar JWT. +Create a new {pulsar-short} JWT. The new JWT will also be visible in the {astra_ui} for that Tenant and Cluster. -Required parameters "CLUSTER" is obtained from the “List Tenants with Details" API command. +Required parameters "CLUSTER" is obtained from the "List Tenants with Details" API command. [source,curl] ---- @@ -1237,9 +1241,9 @@ curl --fail --location --request DELETE "https://api.astra.datastax.com/v2/strea No response indicates success. -== Pulsar Admin API IO connectors operations +== {pulsar-short} Admin API IO connectors operations -Pulsar Sources and Sinks share a similar API structure for most methods. +{pulsar-short} Sources and Sinks share a similar API structure for most methods. === List existing sources in a namespace diff --git a/modules/apis/pages/index.adoc b/modules/apis/pages/index.adoc index b305b6a..a26c0e7 100644 --- a/modules/apis/pages/index.adoc +++ b/modules/apis/pages/index.adoc @@ -2,32 +2,32 @@ :description: Learn about {product} APIs :page-tag: astra-streaming,dev,develop,pulsar -You use two APIs to manage Pulsar tenants and their resources. +You use two APIs to manage {pulsar-reg} tenants and their resources. == {product} DevOps API -Use the xref:astra-streaming:apis:attachment$devops.html[{product} DevOps API] to manage higher-level objects associated with your account, such as the change data capture (CDC) settings, Pulsar tenants, geo-replications, Pulsar stats, and Pulsar tokens. +Use the xref:astra-streaming:apis:attachment$devops.html[{product} DevOps API] to manage higher-level objects associated with your account, such as the change data capture (CDC) settings, {pulsar-short} tenants, geo-replications, {pulsar-short} stats, and {pulsar-short} tokens. This API uses an {astra_db} application token for authentication. -== {product} Pulsar Admin API +== {product} {pulsar-short} Admin API -Use the xref:astra-streaming:apis:attachment$pulsar-admin.html[{product} Pulsar Admin API] to manage specific resources within a specific tenant, such as namespaces, topics, and subscriptions. +Use the xref:astra-streaming:apis:attachment$pulsar-admin.html[{product} {pulsar-short} Admin API] to manage specific resources within a specific tenant, such as namespaces, topics, and subscriptions. -This API uses your Pulsar token for authentication. +This API uses your {pulsar-short} token for authentication. -=== OSS Pulsar Admin API +=== OSS {pulsar-short} Admin API -The https://pulsar.apache.org/admin-rest-api[open source Pulsar project's Pulsar Admin API] isn't the same as the {product} Pulsar Admin API. +The https://pulsar.apache.org/admin-rest-api[open source {pulsar-short} project's {pulsar-short} Admin API] isn't the same as the {product} {pulsar-short} Admin API. -In OSS Pulsar you manage instances, the clusters within each instance, the tenants in the cluster, and so on. +In OSS {pulsar-short} you manage instances, the clusters within each instance, the tenants in the cluster, and so on. In {product}, clusters are a managed service. You manage only the tenants and resources within those tenants. -Some OSS Pulsar Admin API endpoints aren't supported in the {product} Pulsar Admin API because they don't apply to the {product} managed service. +Some OSS {pulsar-short} Admin API endpoints aren't supported in the {product} {pulsar-short} Admin API because they don't apply to the {product} managed service. == See also * xref:apis:api-operations.adoc[] * xref:developing:using-curl.adoc[] -* https://pulsar.apache.org/docs/reference-rest-api-overview/[Pulsar REST APIs] \ No newline at end of file +* https://pulsar.apache.org/docs/reference-rest-api-overview/[{pulsar-short} REST APIs] \ No newline at end of file diff --git a/modules/developing/nav.adoc b/modules/developing/nav.adoc index c4998bb..05dd2e2 100644 --- a/modules/developing/nav.adoc +++ b/modules/developing/nav.adoc @@ -14,7 +14,7 @@ *** xref:clients/golang-produce-consume.adoc[] *** xref:clients/nodejs-produce-consume.adoc[] *** xref:clients/spring-produce-consume.adoc[] -** Pulsar subscriptions +** {pulsar-short} subscriptions *** xref:ROOT:astream-subscriptions.adoc[] *** xref:ROOT:astream-subscriptions-exclusive.adoc[] *** xref:ROOT:astream-subscriptions-shared.adoc[] diff --git a/modules/developing/pages/astra-cli.adoc b/modules/developing/pages/astra-cli.adoc index 312bde2..bae310c 100644 --- a/modules/developing/pages/astra-cli.adoc +++ b/modules/developing/pages/astra-cli.adoc @@ -12,7 +12,7 @@ The xref:astra-cli:ROOT:index.adoc[{astra_db} Command-Line Interface ({astra_cli {astra_cli} commands are available for {astra_db} and {astra_stream}. They're designed to get you working quickly, with an emphasis on automation. -For example, the following command creates a Pulsar tenant: +For example, the following command creates an {pulsar-reg} tenant: [source,bash,subs="+quotes"] ---- diff --git a/modules/developing/pages/astream-cdc.adoc b/modules/developing/pages/astream-cdc.adoc index 4778442..3579e38 100644 --- a/modules/developing/pages/astream-cdc.adoc +++ b/modules/developing/pages/astream-cdc.adoc @@ -3,12 +3,12 @@ [IMPORTANT] ==== -Enabling CDC for {db-serverless} databases incurs billed charges based on your {product} usage. +Enabling CDC for {astra_db} databases incurs billed charges based on your {product} usage. See https://www.datastax.com/pricing/astra-streaming[{product} pricing] and https://www.datastax.com/products/datastax-astra/cdc-for-astra-db[CDC metering rates]. ==== CDC for {astra_db} automatically captures changes in real time, de-duplicates the changes, and streams the clean set of changed data into {product} where it can be processed by client applications or sent to downstream systems. -{product} processes data changes via a Pulsar topic. By design, the Change Data Capture (CDC) component is simple, with a 1:1 correspondence between the table and a single Pulsar topic. +{product} processes data changes via an {pulsar-reg} topic. By design, the Change Data Capture (CDC) component is simple, with a 1:1 correspondence between the table and a single {pulsar-short} topic. For instructions and more information about CDC for {astra_db}, see xref:astra-db-serverless:databases:change-data-capture.adoc[]. diff --git a/modules/developing/pages/astream-functions.adoc b/modules/developing/pages/astream-functions.adoc index d0c2403..033e0c6 100644 --- a/modules/developing/pages/astream-functions.adoc +++ b/modules/developing/pages/astream-functions.adoc @@ -8,8 +8,7 @@ Functions run inside {product}, which makes them serverless. You write the code for your function in Java, Python, or Go, and then upload the code. It automatically runs for each message published to the specified input topic. -Functions are implemented using https://pulsar.apache.org/docs/en/functions-overview/[Apache Pulsar(R) functions]. -See [Pulsar Functions overview] for more information about Pulsar functions. +Functions are implemented using https://pulsar.apache.org/docs/en/functions-overview/[{pulsar-reg} functions]. [IMPORTANT] ==== @@ -21,9 +20,9 @@ Organizations on the *Free* plan can use xref:streaming-learning:functions:index [#create-an-archive] == Deploy a function archive -You can write Pulsar functions for {product} in Python, Java, or Go. +You can write {pulsar-short} functions for {product} in Python, Java, or Go. -To deploy a function to {product} or Pulsar, you can package the project into an archive, including the function code and any dependencies. +To deploy a function to {product} or {pulsar-short}, you can package the project into an archive, including the function code and any dependencies. You can deploy the same archive to either environment. This is recommended for complex functions with long scripts, multiple scripts, or many dependencies. @@ -193,7 +192,7 @@ Must have 4 steps to maintain numbering. ====== [start=5] -. If you haven't done so already, xref:configure-pulsar-env.adoc[set up your environment for the Pulsar binaries]. +. If you haven't done so already, xref:configure-pulsar-env.adoc[set up your environment for the {pulsar-short} binaries]. . Create a deployment configuration YAML file that defines the function metadata and associated topics: + @@ -238,7 +237,7 @@ Optionally, you can declare a `logTopic` in the same way: `persistent://**TENANT * `**DISPLAY_NAME**`: The function display name in {product}, such as `testpythonfunction`. -. Use `pulsar-admin` to deploy the function to {product} or Pulsar using your configuration file: +. Use `pulsar-admin` to deploy the function to {product} or {pulsar-short} using your configuration file: + [source,bash,subs="+quotes"] ---- @@ -351,7 +350,7 @@ This means there is a change that a message is not processed. * *Auto Acknowledge*: Enable or disable automatic message acknowledgment. . (Optional) Provide a config key, if required. -For more information, see the https://pulsar.apache.org/functions-rest-api/#operation/registerFunction[Pulsar documentation]. +For more information, see the https://pulsar.apache.org/functions-rest-api/#operation/registerFunction[{pulsar-short} documentation]. . Click *Create*. diff --git a/modules/developing/pages/astream-kafka.adoc b/modules/developing/pages/astream-kafka.adoc index 7768d19..3ac1055 100644 --- a/modules/developing/pages/astream-kafka.adoc +++ b/modules/developing/pages/astream-kafka.adoc @@ -1,21 +1,20 @@ -= Starlight for Kafka += {kafka_for_astra} :page-tag: starlight-kafka,dev,admin,pulsar,kafka -{kafka_for_astra} brings native Apache Kafka(R) protocol support to Apache Pulsar(R), enabling migration of existing Kafka applications and services to Pulsar without modifying the code. Kafka applications can now leverage Pulsar’s powerful features, such as: +{kafka_for_astra} brings native Apache Kafka(R) protocol support to {pulsar-reg}, enabling migration of existing Kafka applications and services to {pulsar-short} without modifying the code. +Kafka applications can leverage {pulsar-short} features such as the following: * Streamlined operations with enterprise-grade multi-tenancy * Simplified operations with a rebalance-free architecture * Infinite event stream retention with Apache BookKeeper(TM) and tiered storage -* Serverless event processing with xref:astream-functions.adoc[Pulsar Functions] +* Serverless event processing with xref:astream-functions.adoc[{pulsar-short} Functions] -By integrating two popular event streaming ecosystems, {kafka_for_astra} unlocks new use cases and reduces barriers for users adopting Pulsar. Leverage advantages from each ecosystem and build a truly unified event streaming platform with {kafka_for_astra} to accelerate the development of real-time applications and services. +By integrating two popular event streaming ecosystems, {kafka_for_astra} unlocks new use cases and reduces barriers for users adopting {pulsar-short}. Leverage advantages from each ecosystem and build a truly unified event streaming platform with {kafka_for_astra} to accelerate the development of real-time applications and services. -This document will help you get started producing and consuming Kafka messages on a Pulsar cluster. +This document will help you get started producing and consuming Kafka messages on a {pulsar-short} cluster. == {kafka_for_astra} Quickstart -:page-tag: starlight-kafka,quickstart,install,admin,dev,pulsar,kafka - . To start connecting {kafka_for_astra}, select *Kafka* in the {product} *Connect* tab. . When the popup appears, confirm you want to enable Kafka on your tenant. @@ -47,7 +46,7 @@ sasl.mechanism: PLAIN + The configuration details depend on your {product} tenant configuration. -== Connect Kafka and Pulsar +== Connect Kafka and {pulsar-short} This example uses tools included with the https://kafka.apache.org/downloads[Apache Kafka tarball]. @@ -94,11 +93,11 @@ hello pulsar . Send a few messages, and then return to your `kafka` namespace dashboard in {product} to monitor your activity. + -Your Kafka messages are being produced and consumed in a Pulsar cluster: +Your Kafka messages are being produced and consumed in a {pulsar-short} cluster: + image::astream-kafka-monitor.png[Monitor Kafka Activity] == See also -* https://github.com/datastax/starlight-for-kafka[{company} Starlight for Kafka project] +* https://github.com/datastax/starlight-for-kafka[{company} {kafka_for_astra} project] * xref:getting-started:index.adoc[] diff --git a/modules/developing/pages/astream-rabbit.adoc b/modules/developing/pages/astream-rabbit.adoc index 8ef186d..8ee9540 100644 --- a/modules/developing/pages/astream-rabbit.adoc +++ b/modules/developing/pages/astream-rabbit.adoc @@ -1,16 +1,17 @@ = {starlight_rabbitmq} :page-tag: starlight-rabbitmq,quickstart,admin,dev,pulsar -{starlight_rabbitmq} brings native RabbitMQ(R) protocol support to Apache Pulsar(R), enabling migration of existing RabbitMQ applications and services to Pulsar without modifying the code. RabbitMQ applications can now leverage Pulsar’s powerful features, such as: +{starlight_rabbitmq} brings native RabbitMQ(R) protocol support to {pulsar-reg}, enabling migration of existing RabbitMQ applications and services to {pulsar-short} without modifying the code. +RabbitMQ applications can leverage {pulsar-short} features such as the following: * *Consistent metadata store*: {starlight_rabbitmq} uses Apache ZooKeeper(TM), so existing Zookeeper configuration stores can store {starlight_rabbitmq} metadata. -* *Security and authentication*: {starlight_rabbitmq} connects to brokers that have TLS, authentication, and/or authorization enabled, because it uses the same `AuthenticationService` as Pulsar. +* *Security and authentication*: {starlight_rabbitmq} connects to brokers that have TLS, authentication, and/or authorization enabled, because it uses the same `AuthenticationService` as {pulsar-short}. * *Clustering*: Launch multiple stateless {starlight_rabbitmq} instances simultaneously for scalability and high availability. -* *Multi-tenancy*: {starlight_rabbitmq} offers support for multi-tenancy, mapping an AMQP virtual host to a Pulsar tenant and namespace. +* *Multi-tenancy*: {starlight_rabbitmq} offers support for multi-tenancy, mapping an AMQP virtual host to a {pulsar-short} tenant and namespace. -By integrating two popular event streaming ecosystems, {starlight_rabbitmq} unlocks new use cases and reduces barriers for users adopting Pulsar. Leverage advantages from each ecosystem and build a truly unified event streaming platform with {starlight_rabbitmq} to accelerate the development of real-time applications and services. +By integrating two popular event streaming ecosystems, {starlight_rabbitmq} unlocks new use cases and reduces barriers for users adopting {pulsar-short}. Leverage advantages from each ecosystem and build a truly unified event streaming platform with {starlight_rabbitmq} to accelerate the development of real-time applications and services. -Get started producing and consuming RabbitMQ messages on a Pulsar cluster. +Get started producing and consuming RabbitMQ messages on a {pulsar-short} cluster. == {starlight_rabbitmq} Quickstart @@ -40,9 +41,9 @@ virtual_host: azure/rabbitmq + The configuration details depend on your {product} tenant configuration. -== Connect RabbitMQ and Pulsar +== Connect RabbitMQ and {pulsar-short} -This example uses a Python script to create a connection between RabbitMQ and your Pulsar tenant, establish a message queue named `queuename`, print ten messages, and then close the connection. +This example uses a Python script to create a connection between RabbitMQ and your {pulsar-short} tenant, establish a message queue named `queuename`, print ten messages, and then close the connection. . Create a `connect-test.py` file containing the following code: + @@ -120,15 +121,15 @@ started a channel . Navigate to your `rabbitmq` namespace dashboard in {product}, and then monitor your activity. + If configured correctly, you should have new topics called `amq.default.__queuename` and `amq.default_routingkey` that were created by the Python script, as well as an increasing amount of traffic and messages. -Your RabbitMQ messages are being published to a Pulsar topic. +Your RabbitMQ messages are being published to a {pulsar-short} topic. -== RabbitMQ exchanges and Pulsar topics +== RabbitMQ exchanges and {pulsar-short} topics -{starlight_rabbitmq} maps RabbitMQ _exchanges_ to Pulsar _topics_, as described in the following table: +{starlight_rabbitmq} maps RabbitMQ _exchanges_ to {pulsar-short} _topics_, as described in the following table: [cols="1,1,1,1"] |=== -|Exchange |Routing key |Pulsar topic name |Usage example +|Exchange |Routing key |{pulsar-short} topic name |Usage example |`amp.direct` |used @@ -160,6 +161,6 @@ channel.basic_publish(exchange='header_logs'),` == See also -* https://github.com/datastax/starlight-for-rabbitmq[{company} Starlight for RabbitMQ project] +* https://github.com/datastax/starlight-for-rabbitmq[{company} {starlight_rabbitmq} project] * xref:getting-started:index.adoc[] -* xref:astream-kafka.adoc[Starlight for Kafka] \ No newline at end of file +* xref:astream-kafka.adoc[{kafka_for_astra}] \ No newline at end of file diff --git a/modules/developing/pages/clients/csharp-produce-consume.adoc b/modules/developing/pages/clients/csharp-produce-consume.adoc index 5145407..dbe30e1 100644 --- a/modules/developing/pages/clients/csharp-produce-consume.adoc +++ b/modules/developing/pages/clients/csharp-produce-consume.adoc @@ -1,15 +1,15 @@ -= Use the C# Pulsar client on {product} += Use the C# {pulsar-short} client on {product} :navtitle: C# -:description: Produce and consume messages with the C# Pulsar client and {product}. +:description: Produce and consume messages with the C# {pulsar-short} client and {product}. -You can produce and consume messages with the C# Pulsar client and {product}. +You can produce and consume messages with the C# {pulsar-short} client and {product}. Go to the https://github.com/datastax/astra-streaming-examples[examples repo] for the complete source of this example. == Prerequisites * https://learn.microsoft.com/en-us/dotnet/core/install/[.NET 7 SDK] -* A Pulsar topic in {product} +* An {pulsar-reg} topic in {product} * A text editor or IDE == Create a console project diff --git a/modules/developing/pages/clients/golang-produce-consume.adoc b/modules/developing/pages/clients/golang-produce-consume.adoc index 1c3344b..4b69118 100644 --- a/modules/developing/pages/clients/golang-produce-consume.adoc +++ b/modules/developing/pages/clients/golang-produce-consume.adoc @@ -1,16 +1,16 @@ -= Use the Golang Pulsar client with {product} += Use the Golang {pulsar-short} client with {product} :navtitle: Golang -:description: Produce and consume messages with the Golang Pulsar client and {product}. +:description: Produce and consume messages with the Golang {pulsar-short} client and {product}. :page-tag: astra-streaming,dev,develop,pulsar,go -You can produce and consume messages with the Golang Pulsar client and {product}. +You can produce and consume messages with the Golang {pulsar-short} client and {product}. Go to the https://github.com/datastax/astra-streaming-examples[examples repo] for the complete source of this example. == Prerequisites * Golang version 1.15 or later -* A Pulsar topic in {product} +* An {pulsar-reg} topic in {product} * A text editor or IDE == Create a project @@ -29,11 +29,11 @@ touch main.go go get -u github.com/apache/pulsar-client-go ---- + -The new project includes a `main` file and the retrieved Pulsar client package. +The new project includes a `main` file and the retrieved {pulsar-short} client package. == Write the script -. Open the `main.go` file, and then add the following code to import the required packages, establish an entry point for the application, and create a new instance of a Pulsar client: +. Open the `main.go` file, and then add the following code to import the required packages, establish an entry point for the application, and create a new instance of a {pulsar-short} client: + .main.go [source,golang] diff --git a/modules/developing/pages/clients/index.adoc b/modules/developing/pages/clients/index.adoc index 166d6e5..aaaa6d8 100644 --- a/modules/developing/pages/clients/index.adoc +++ b/modules/developing/pages/clients/index.adoc @@ -1,11 +1,11 @@ -= Use Pulsar clients with {product} -:navtitle: Pulsar clients -:description: Use any of the Pulsar Clients to interact with your {product} topics. += Use {pulsar-reg} clients with {product} +:navtitle: {pulsar-short} clients +:description: Use any of the {pulsar-short} Clients to interact with your {product} topics. -{product} is powered by http://pulsar.apache.org/[Apache Pulsar]. +{product} is powered by http://pulsar.apache.org/[{pulsar-reg}]. -To connect to your service, use the open-source client APIs provided by the Apache Pulsar project. -{product} is running Pulsar version {pulsar_version}. You should use this API version or higher. +To connect to your service, use the open-source client APIs provided by the {pulsar} project. +{product} is running {pulsar-short} version {pulsar-version}. You should use this API version or higher. For more information and examples, see the following: diff --git a/modules/developing/pages/clients/java-produce-consume.adoc b/modules/developing/pages/clients/java-produce-consume.adoc index 5fbffac..229e034 100644 --- a/modules/developing/pages/clients/java-produce-consume.adoc +++ b/modules/developing/pages/clients/java-produce-consume.adoc @@ -1,9 +1,9 @@ -= Use the Java Pulsar client with {product} += Use the Java {pulsar-short} client with {product} :navtitle: Java -:description: Produce and consume messages with the Java Pulsar client and {product}. +:description: Produce and consume messages with the Java {pulsar-short} client and {product}. :page-tag: astra-streaming,dev,develop,pulsar,java -You can produce and consume messages with the Java Pulsar client and {product}. +You can produce and consume messages with the Java {pulsar-short} client and {product}. Go to the https://github.com/datastax/astra-streaming-examples[examples repo] for the complete source of this example. @@ -13,7 +13,7 @@ For this example, you need the following: * JRE 8 * https://maven.apache.org/install.html[Maven] -* A Pulsar topic in {product} +* An {pulsar-reg} topic in {product} * A text editor or IDE == Create a project @@ -25,7 +25,7 @@ For this example, you need the following: include::{astra-streaming-examples-repo}/java/simple-producer-consumer/create-project.sh[] ---- -. Add the Pulsar client dependency in `pom.xml`: +. Add the {pulsar-short} client dependency in `pom.xml`: + .pom.xml [source,xml] diff --git a/modules/developing/pages/clients/nodejs-produce-consume.adoc b/modules/developing/pages/clients/nodejs-produce-consume.adoc index de49c84..34f308a 100644 --- a/modules/developing/pages/clients/nodejs-produce-consume.adoc +++ b/modules/developing/pages/clients/nodejs-produce-consume.adoc @@ -1,9 +1,9 @@ -= Use the Node.js Pulsar client with {product} += Use the Node.js {pulsar-short} client with {product} :navtitle: Node.js -:description: Produce and consume messages with the Node.js Pulsar client and {product}. +:description: Produce and consume messages with the Node.js {pulsar-short} client and {product}. :page-tag: astra-streaming,connect,dev,develop,nodejs,pulsar -You can produce and consume messages with the Node.js Pulsar client and {product}. +You can produce and consume messages with the Node.js {pulsar-short} client and {product}. Go to the https://github.com/datastax/astra-streaming-examples[examples repo] for the complete source of this example. @@ -12,14 +12,14 @@ Go to the https://github.com/datastax/astra-streaming-examples[examples repo] fo * `sudo` permission to install dependencies * Node.js version 10 or later * npm 6 or later -* A Pulsar topic in {product} +* An {pulsar-reg} topic in {product} * A text editor or IDE == Set up the environment -Install the C++ Pulsar library dependency required by the Node.js Pulsar client npm package. +Install the {cpp} {pulsar-short} library dependency required by the Node.js {pulsar-short} client npm package. -Pulsar Node client versions 1.8 and later do not require installation of the C++ Pulsar library dependency. +{pulsar-short} Node client versions 1.8 and later do not require installation of the {cpp} {pulsar-short} library dependency. [tabs] ====== diff --git a/modules/developing/pages/clients/python-produce-consume.adoc b/modules/developing/pages/clients/python-produce-consume.adoc index aed1ae5..bbf125e 100644 --- a/modules/developing/pages/clients/python-produce-consume.adoc +++ b/modules/developing/pages/clients/python-produce-consume.adoc @@ -1,9 +1,9 @@ -= Use the Python Pulsar client with {product} += Use the Python {pulsar-short} client with {product} :navtitle: Python -:description: Use the Python Pulsar client with {product} to produce and consume messages. +:description: Use the Python {pulsar-short} client with {product} to produce and consume messages. :page-tag: astra-streaming,dev,develop,python,pulsar -You can use the Python Pulsar client with {product} to produce and consume messages. +You can use the Python {pulsar-short} client with {product} to produce and consume messages. Go to the https://github.com/datastax/astra-streaming-examples[examples repo] for the complete source of this example. @@ -12,14 +12,14 @@ Go to the https://github.com/datastax/astra-streaming-examples[examples repo] fo * A supported Python version: ** For Linux, versions 3.4 to 3.7 are supported ** For macOS, version 3.7 is supported -* A Pulsar topic in {product} +* An {pulsar-reg} topic in {product} * A text editor or IDE == Create a project . Create a folder for a new Python project. -. In your new directory, install the Pulsar client library with pip: +. In your new directory, install the {pulsar-short} client library with pip: + [source,shell] ---- @@ -29,7 +29,7 @@ include::{astra-streaming-examples-repo}/python/simple-producer-consumer/create- == Write the script . Create an `index.py` file containing the following code. -This code creates a Pulsar client instance with the topic URL and token authentication. +This code creates a {pulsar-short} client instance with the topic URL and token authentication. + .index.py [source,python] diff --git a/modules/developing/pages/clients/spring-produce-consume.adoc b/modules/developing/pages/clients/spring-produce-consume.adoc index 4c46fd2..8ebba95 100644 --- a/modules/developing/pages/clients/spring-produce-consume.adoc +++ b/modules/developing/pages/clients/spring-produce-consume.adoc @@ -1,9 +1,9 @@ -= Use the Java Pulsar client with {product} and Spring += Use the Java {pulsar-short} client with {product} and Spring :navtitle: Spring -:description: Produce and consume messages with the Java Pulsar client, {product}, and Spring. +:description: Produce and consume messages with the Java {pulsar-short} client, {product}, and Spring. :page-tag: astra-streaming,dev,develop,pulsar,java -You can produce and consume messages with the Java Pulsar client, {product}, and Spring. +You can produce and consume messages with the Java {pulsar-short} client, {product}, and Spring. Go to the https://github.com/datastax/astra-streaming-examples[examples repo] for the complete source of this example. @@ -13,16 +13,16 @@ For this example, you need the following: * JRE 8 * https://maven.apache.org/install.html[Maven] -* A Pulsar topic in {product} +* An {pulsar-reg} topic in {product} * A text editor or IDE == Create a Maven project in Spring Initializr -You can use Spring Initializr to quickly create a Java project with the required dependencies, including the Pulsar client dependency. +You can use Spring Initializr to quickly create a Java project with the required dependencies, including the {pulsar-short} client dependency. . Go to https://start.spring.io/[Spring Initializr] to initialize a new project. -. Select Maven, Java 17, a non-SNAPSHOT version of Spring Boot, and the Apache Pulsar dependency: +. Select Maven, Java 17, a non-SNAPSHOT version of Spring Boot, and the {pulsar} dependency: + image::spring-initializr.png[Spring Initializr] @@ -64,7 +64,7 @@ include::{astra-streaming-examples-repo}/java/spring-boot/SpringBoot/src/main/re ---- ==== -. From your project's root directory, compile the Java application with the Pulsar client dependency: +. From your project's root directory, compile the Java application with the {pulsar-short} client dependency: + [source,bash] ---- diff --git a/modules/developing/pages/configure-pulsar-env.adoc b/modules/developing/pages/configure-pulsar-env.adoc index 955611d..582d211 100644 --- a/modules/developing/pages/configure-pulsar-env.adoc +++ b/modules/developing/pages/configure-pulsar-env.adoc @@ -1,21 +1,21 @@ -= Use Pulsar binaries with {product} -:navtitle: Configure the Pulsar CLI -:description: Download a compatible Pulsar artifact and configure the binaries for use with {product}. += Use {pulsar-reg} binaries with {product} +:navtitle: Configure the {pulsar-short} CLI +:description: Download a compatible {pulsar-short} artifact and configure the binaries for use with {product}. -{product} runs Apache Pulsar(TM). -The benefits of OSS Pulsar are also available in {product}. +{product} runs a {company} version of {pulsar-reg}. +The benefits of OSS {pulsar-short} are also available in {product}. -To get started, you must download a compatible Pulsar artifact, and then configure the binaries for use with {product}. +To get started, you must download a compatible {pulsar-short} artifact, and then configure the binaries for use with {product}. == Download a compatible artifact -{product} is compatible with Pulsar {pulsar_version}. +{product} is compatible with {pulsar-short} version {pulsar-version}. -. Download the binaries for the https://pulsar.apache.org/download/[latest {pulsar_version} patch version]: +. Download the binaries for the https://pulsar.apache.org/download/[latest {pulsar-version} patch release]: + [source,shell,subs="+quotes,+attributes"] ---- -PULSAR_VERSION="{pulsar_version}.**PATCH**" +PULSAR_VERSION="{pulsar-version}.**PATCH**" wget https://archive.apache.org/dist/pulsar/pulsar-$PULSAR_VERSION/apache-pulsar-$PULSAR_VERSION-bin.tar.gz ---- @@ -27,13 +27,13 @@ tar xvfz apache-pulsar-$PULSAR_VERSION-bin.tar.gz ---- + The resulting directory is named `apache-pulsar-**PULSAR_VERSON**`. -This directory is known as the _Pulsar folder_. -Pulsar guides assume you are working within this directory. -Pulsar commands prefixed by `./bin` indicate the command is run from within the Pulsar folder. +This directory is known as the _{pulsar-short} folder_. +{pulsar-short} guides assume you are working within this directory. +{pulsar-short} commands prefixed by `./bin` indicate the command is run from within the {pulsar-short} folder. == Configure binaries for {product} -There are several files and folders in the Pulsar folder. +There are several files and folders in the {pulsar-short} folder. The two most important folders are `/conf` and `/bin`. The executables in `/bin` use the configurations in `/conf` to run commands. @@ -43,17 +43,17 @@ You must download the tenant configuration from {product}, and then overwrite th . In the {astra_ui} navigation menu, click *Streaming*, and then select your tenant. -. Click the *Connect* tab, in the *Pulsar CLI* section, click *Download client.conf*. +. Click the *Connect* tab, in the *{pulsar-short} CLI* section, click *Download client.conf*. . Save the file in `apache-pulsar-**PULSAR_VERSION**/conf`. This overwrites the default `client.conf` in the `/conf` folder. -. With your {product} tenant's configuration in place, use the binaries to interact with a Pulsar cluster: +. With your {product} tenant's configuration in place, use the binaries to interact with a {pulsar-short} cluster: + * `./bin/pulsar-admin`: Administrative commands to manage namespaces, topics, functions, connectors, and so on * `./bin/pulsar-client`: Interactive commands for producing and consuming messages + -For a full reference of all commands within the CLI, see the https://pulsar.apache.org/docs/reference-cli-tools/[Pulsar's CLI docs]. +For a full reference of all commands within the CLI, see the https://pulsar.apache.org/docs/reference-cli-tools/[{pulsar-short} CLI documentation]. == Validate the connection diff --git a/modules/developing/pages/gpt-schema-translator.adoc b/modules/developing/pages/gpt-schema-translator.adoc index a636247..9e0e15b 100644 --- a/modules/developing/pages/gpt-schema-translator.adoc +++ b/modules/developing/pages/gpt-schema-translator.adoc @@ -3,13 +3,13 @@ Systems in streaming pipelines can use different representations for schema and data types. Schema mapping is required to align congruent types in a pipeline. -For example, to send data from a CDC-enabled {cassandra} table to a Pulsar topic, you must define schema mapping between the Cassandra table and the Pulsar topic. +For example, to send data from a CDC-enabled {cassandra} table to a {pulsar-reg} topic, you must define schema mapping between the Cassandra table and the {pulsar-short} topic. If the schema includes more complex data types, like maps and nested data structures, schema management becomes more difficult. Schema management is a complicated, tedious, and error-prone tasks that requires you to understand and translate multiple sets of schema rules. Instead, you can use the {gpt-schema-translator} to save time and reduce schema mapping toil. -This tool uses generative AI,based on the `GPT-4` model, to automatically generate schema mappings between {product} (Pulsar topics) and the {astra_db} sink connector (Cassandra tables). +This tool uses generative AI,based on the `GPT-4` model, to automatically generate schema mappings between {product} ({pulsar-short} topics) and the {astra_db} sink connector (Cassandra tables). == Prerequisites @@ -20,8 +20,8 @@ The {gpt-schema-translator} is available for the {astra_db} sink connector only. == JSON-to-CQL mapping example -This example uses a JSON schema for a Pulsar topic, and a CQL schema for an {astra_db} table. -The {gpt-schema-translator} generates a mapping between the two schemas that the {astra_db} sink connector can use to write data from the Pulsar topic to the {astra_db} table. +This example uses a JSON schema for a {pulsar-short} topic, and a CQL schema for an {astra_db} table. +The {gpt-schema-translator} generates a mapping between the two schemas that the {astra_db} sink connector can use to write data from the {pulsar-short} topic to the {astra_db} table. . In the {astra_ui} navigation menu, click *Streaming*, and then select your tenant. @@ -35,12 +35,12 @@ If this button isn't available, the GPT schema translator doesn't have an availa + image::two-schemas.png[Schema mapping,320,240] + -.Cassandra-to-Pulsar schema mapping example +.Cassandra-to-{pulsar-short} schema mapping example [%collapsible] ==== [cols="1,1,1"] |=== -| Cassandra table schema | Pulsar JSON schema | Generated mapping +| Cassandra table schema | {pulsar-short} JSON schema | Generated mapping a| [source,cql] @@ -131,7 +131,7 @@ You can check the {astra_ui} logs to confirm that the data is flowing into your This example demonstrates how you can generates schema mapping in real time. -. The xref:streaming-learning:pulsar-io:connectors/sources/data-generator.adoc[DataGenerator source connector] generates data for a Pulsar topic with an AVRO schema. +. The xref:streaming-learning:pulsar-io:connectors/sources/data-generator.adoc[DataGenerator source connector] generates data for a {pulsar-short} topic with an AVRO schema. + .AVRO schema example [%collapsible] @@ -422,13 +422,13 @@ The {gpt-schema-translator} generates an AVRO-to-CQL schema mapping while messag passportnumber=value.passportNumber, age=value.age, firstname=value.firstName, lastname=value.lastName ---- + -Notice that the `firstname` value became `firstName` because the Pulsar topic AVRO schema superseded the Cassandra table schema. +Notice that the `firstname` value became `firstName` because the {pulsar-short} topic AVRO schema superseded the Cassandra table schema. -== No schema on Pulsar topic +== No schema on {pulsar-short} topic -If you don't declare a schema in the Pulsar topic, the schema translator can generate a default schema mapping based on the values of your Cassandra table schema, without using GPT. +If you don't declare a schema in the {pulsar-short} topic, the schema translator can generate a default schema mapping based on the values of your Cassandra table schema, without using GPT. -When you create the mapping in the {astra_ui}, you can click *Generate Mapping* to create a generic Pulsar topic schema based on your Cassandra table schema. +When you create the mapping in the {astra_ui}, you can click *Generate Mapping* to create a generic {pulsar-short} topic schema based on your Cassandra table schema. If schema mapping isn't possible for the selected table and topic, the *Generate Mapping* button isn't available. For example, assume you have the following Cassandra table schema: @@ -466,7 +466,7 @@ For example, assume you have the following Cassandra table schema: } ---- -The schema translator would generate the following Pulsar JSON schema mapping based on the given Cassandra table schema: +The schema translator would generate the following {pulsar-short} JSON schema mapping based on the given Cassandra table schema: [source,plain] ---- diff --git a/modules/developing/pages/produce-consume-pulsar-client.adoc b/modules/developing/pages/produce-consume-pulsar-client.adoc index c84ea00..7c729db 100644 --- a/modules/developing/pages/produce-consume-pulsar-client.adoc +++ b/modules/developing/pages/produce-consume-pulsar-client.adoc @@ -1,12 +1,12 @@ -= Use the {product} Pulsar Client -:navtitle: Pulsar CLI += Use the {product} {pulsar-short} Client +:navtitle: {pulsar-short} CLI :description: Use the pulsar-client CLI to interact with your {product} tenants You can use the `pulsar-client` CLI to produce and consume messages in your {product} tenants. . xref:getting-started:index.adoc[Create a {product} tenant.] -. xref:developing:configure-pulsar-env.adoc[Configure Pulsar binaries for {product}.] +. xref:developing:configure-pulsar-env.adoc[Configure {pulsar-reg} binaries for {product}.] . Set the following environment variables: + diff --git a/modules/developing/pages/using-curl.adoc b/modules/developing/pages/using-curl.adoc index 4900993..a227a1f 100644 --- a/modules/developing/pages/using-curl.adoc +++ b/modules/developing/pages/using-curl.adoc @@ -2,12 +2,12 @@ :navtitle: Form HTTP requests :description: Interact with {product} over HTTP, such as with curl commands. -You can use the xref:apis:index.adoc[{product} APIs] and https://pulsar.apache.org/docs/reference-rest-api-overview/[Pulsar REST APIs] to programmatically interact with your tenants and related {product} configurations. +You can use the xref:apis:index.adoc[{product} APIs] and https://pulsar.apache.org/docs/reference-rest-api-overview/[{pulsar-reg} REST APIs] to programmatically interact with your tenants and related {product} configurations. Each API supports different functionalities. Depending on the API you use, you need certain information to form HTTP requests: -* To use the {product} Pulsar Admin API and Pulsar REST APIs, you need the tenant's Web Service URL and Pulsar token. +* To use the {product} {pulsar-short} Admin API and {pulsar-short} REST APIs, you need the tenant's Web Service URL and {pulsar-short} token. * To use the {product} DevOps API, you need an xref:operations:astream-token-gen.adoc[{astra_db} application token]. == Get the tenant web service URL @@ -17,26 +17,26 @@ Depending on the API you use, you need certain information to form HTTP requests . Click the *Connect* tab. . In the *Details* section, locate the *Tenant Details*. -Here you can find the essential information you need to communicate with your Pulsar tenant, including the *Web Service URL*. +Here you can find the essential information you need to communicate with your {pulsar-short} tenant, including the *Web Service URL*. + image:tenant-details.png[Tenant details in {product}] + [TIP] ==== -The *Web Service URL* is _not_ the same as the Pulsar *Broker Service URL*. +The *Web Service URL* is _not_ the same as the {pulsar-short} *Broker Service URL*. Web Service URLs start with `http`. Broker Service URLs start with `pulsar(+ssl)`. ==== -== Create a {product} Pulsar token +== Create a {product} {pulsar-short} token [IMPORTANT] ==== -An xref:operations:astream-token-gen.adoc[{astra_db} application token] is _not_ the same as a Pulsar token. +An xref:operations:astream-token-gen.adoc[{astra_db} application token] is _not_ the same as a {pulsar-short} token. ==== -For information about creating Pulsar tokens, see xref:operations:astream-token-gen.adoc[]. +For information about creating {pulsar-short} tokens, see xref:operations:astream-token-gen.adoc[]. == Make a request diff --git a/modules/developing/partials/client-variables-table.adoc b/modules/developing/partials/client-variables-table.adoc index bef1400..7ad7406 100644 --- a/modules/developing/partials/client-variables-table.adoc +++ b/modules/developing/partials/client-variables-table.adoc @@ -3,13 +3,13 @@ |Parameter |Definition |Where to find the value |`serviceUrl` -|The URL to connect to the Pulsar cluster +|The URL to connect to the {pulsar-short} cluster |In the {astra_ui} navigation menu, click *Streaming*, select your streaming tenant, and then click the *Connect* tab. In the *Details* section, get the *Broker Service URL*. |`pulsarToken` -|The token for Pulsar cluster authentication -|For information about creating Pulsar tokens, see xref:operations:astream-token-gen.adoc[]. +|The token for {pulsar-short} cluster authentication +|For information about creating {pulsar-short} tokens, see xref:operations:astream-token-gen.adoc[]. |`tenantName` |The name of your streaming tenant diff --git a/modules/getting-started/pages/index.adoc b/modules/getting-started/pages/index.adoc index c37d5f0..50d1856 100644 --- a/modules/getting-started/pages/index.adoc +++ b/modules/getting-started/pages/index.adoc @@ -2,20 +2,20 @@ :navtitle: Get started :page-tag: astra-streaming,planner,quickstart,pulsar -{product} is a serverless data streaming and event stream processing service integrated in the {astra_ui} and powered by Apache Pulsar(TM). -Using {product}, you can create Pulsar instances, manage streaming clusters, scale across cloud regions, and manage Pulsar resources such as topics, connectors, functions and subscriptions. +{product} is a serverless data streaming and event stream processing service integrated in the {astra_ui} and powered by {pulsar-reg}. +Using {product}, you can create {pulsar-short} instances, manage streaming clusters, scale across cloud regions, and manage {pulsar-short} resources such as topics, connectors, functions and subscriptions. -This quickstart demonstrates how to create and use a streaming tenant running Apache Pulsar. +This quickstart demonstrates how to create and use a streaming tenant running {pulsar-short}. == Prerequisites -* Sign in or create an {login_url}[{astra_db} account^]. +* Sign in or create an {url-astra}[{astra_db} account^]. == Create a streaming tenant -A {product} tenant is a portion of {company}-managed Apache Pulsar that is only yours. +A {product} tenant is a portion of {company}-managed {pulsar} that is only yours. Within tenants, you create namespaces, topics, functions, and more. -To learn more about the concept of tenancy, see the https://pulsar.apache.org/docs/concepts-multi-tenancy/[Pulsar documentation]. +To learn more about the concept of tenancy, see the https://pulsar.apache.org/docs/concepts-multi-tenancy/[{pulsar-short} documentation]. You can create a tenant in the {astra_ui} or programmatically. For this quickstart, use the {astra_ui}. @@ -43,11 +43,11 @@ Namespaces are logical groupings, such as environments or applications, for mess {product} automatically creates a `default` namespaces when you create a tenant. You can use the default namespace or create other namespaces. Tenants usually have many namespaces. -To learn more about namespaces, see the https://pulsar.apache.org/docs/concepts-messaging/#namespaces[Pulsar documentation]. +To learn more about namespaces, see the https://pulsar.apache.org/docs/concepts-messaging/#namespaces[{pulsar-short} documentation]. You can create namespaces in the {astra_ui} or programmatically. For this quickstart, use the {astra_ui}. -For information about the Pulsar CLI or APIs, see xref:developing:configure-pulsar-env.adoc[] and xref:developing:using-curl.adoc[]. +For information about the {pulsar-short} CLI or APIs, see xref:developing:configure-pulsar-env.adoc[] and xref:developing:using-curl.adoc[]. . In the {astra_ui} navigation menu, click *Streaming*, and then select your tenant. @@ -67,8 +67,8 @@ You can also apply more advanced characteristics, like schemas, at the topic lev Topics are where other applications or services can "listen" for new messages. Consumers subscribe to topics to receive messages, and functions and connectors can listen for messages to trigger automated workflows. -In Pulsar, topic addresses are formatted like URLs, such as `persistent://tenant/namespace/topic`. -To learn more about topics, see the https://pulsar.apache.org/docs/concepts-messaging/#topics[Pulsar documentation]. +In {pulsar-short}, topic addresses are formatted like URLs, such as `persistent://tenant/namespace/topic`. +To learn more about topics, see the https://pulsar.apache.org/docs/concepts-messaging/#topics[{pulsar-short} documentation]. As in the previous steps, you can create topics in the {astra_ui} or programmatically. @@ -90,5 +90,5 @@ Your new topic is ready to produce and consume messages. There are several different ways to do this: * xref:developing:produce-consume-astra-portal.adoc[{astra_ui}]: Use {product}'s "Try Me" feature in the {astra_ui}. -* xref:developing:produce-consume-pulsar-client.adoc[Pulsar Client]: Use the Pulsar CLI to interact with the topic. -* xref:developing:clients/index.adoc[Runtime Clients]: Create a client application that interacts with Pulsar. \ No newline at end of file +* xref:developing:produce-consume-pulsar-client.adoc[{pulsar-short} Client]: Use the {pulsar-short} CLI to interact with the topic. +* xref:developing:clients/index.adoc[Runtime Clients]: Create a client application that interacts with {pulsar-short}. \ No newline at end of file diff --git a/modules/operations/examples/curl_deflate.sh b/modules/operations/examples/curl_deflate.sh index 33a5b48..b5bd363 100644 --- a/modules/operations/examples/curl_deflate.sh +++ b/modules/operations/examples/curl_deflate.sh @@ -1 +1 @@ -curl -v -H 'Authorization: Bearer {bearer_token}' -H 'Accept-encoding: deflate' https://prometheus-aws-useast1.streaming.datastax.com/pulsarmetrics/tenant-1 --compressed \ No newline at end of file +curl -v -H 'Authorization: Bearer $BEARER_TOKEN' -H 'Accept-encoding: deflate' https://prometheus-aws-useast1.streaming.datastax.com/pulsarmetrics/tenant-1 --compressed \ No newline at end of file diff --git a/modules/operations/examples/curl_gzip.sh b/modules/operations/examples/curl_gzip.sh index 1c4eb12..57725ff 100644 --- a/modules/operations/examples/curl_gzip.sh +++ b/modules/operations/examples/curl_gzip.sh @@ -1 +1 @@ -curl -v -H 'Authorization: Bearer {bearer_token}' -H 'Accept-encoding: gzip' https://prometheus-aws-useast1.streaming.datastax.com/pulsarmetrics/tenant-1 | zcat \ No newline at end of file +curl -v -H 'Authorization: Bearer $BEARER_TOKEN' -H 'Accept-encoding: gzip' https://prometheus-aws-useast1.streaming.datastax.com/pulsarmetrics/tenant-1 | zcat \ No newline at end of file diff --git a/modules/operations/pages/astream-georeplication.adoc b/modules/operations/pages/astream-georeplication.adoc index a9eebbe..0a2d72b 100644 --- a/modules/operations/pages/astream-georeplication.adoc +++ b/modules/operations/pages/astream-georeplication.adoc @@ -1,27 +1,27 @@ = Geo-replication -A key feature of Apache Pulsar(TM) is how it handles geo-replication. While other pub-sub messaging systems require additional processes to mirror messages between data centers, Pulsar has multi-datacenter replication as an integrated feature. +A key feature of {pulsar-reg} is how it handles geo-replication. While other pub-sub messaging systems require additional processes to mirror messages between data centers, {pulsar-short} has multi-datacenter replication as an integrated feature. -Pulsar's serving layer (brokers) and storage layer (bookies) are decoupled in Pulsar architecture, allowing seamless message replication across data centers in different regions. +{pulsar-short}'s serving layer (brokers) and storage layer (bookies) are decoupled in {pulsar-short} architecture, allowing seamless message replication across data centers in different regions. -Geo-replication typically provides redundancy in the event of datacenter outages, but can also be used for any application where Pulsar messages are produced and consumed across regions. +Geo-replication typically provides redundancy in the event of datacenter outages, but can also be used for any application where {pulsar-short} messages are produced and consumed across regions. [#overview] -== Message replication in Pulsar +== Message replication in {pulsar-short} -In Pulsar, cross-cluster message replication can be implemented with _synchronous_ or _asynchronous_ message replication, and with or without a global configuration store in ZooKeeper. +In {pulsar-short}, cross-cluster message replication can be implemented with _synchronous_ or _asynchronous_ message replication, and with or without a global configuration store in ZooKeeper. {product} supports only asynchronous geo-replication without a global configuration store. This approach offers better performance and lower latency. -In asynchronous geo-replication, each region has its own local Pulsar cluster. Each Pulsar cluster contains its own set of brokers, bookies, and ZooKeeper nodes that are completely isolated from one another. +In asynchronous geo-replication, each region has its own local {pulsar-short} cluster. Each {pulsar-short} cluster contains its own set of brokers, bookies, and ZooKeeper nodes that are completely isolated from one another. -When messages are produced on a Pulsar topic, they are first persisted to the local cluster, and are then replicated asynchronously to the remote clusters in other regions. -This is achieved through Pulsar's built-in geo-replication capability. +When messages are produced on a {pulsar-short} topic, they are first persisted to the local cluster, and are then replicated asynchronously to the remote clusters in other regions. +This is achieved through {pulsar-short}'s built-in geo-replication capability. -The message producer doesn't wait for confirmation from multiple Pulsar clusters. +The message producer doesn't wait for confirmation from multiple {pulsar-short} clusters. The producer receives a response immediately after the nearest cluster successfully persists the data. -The data is then asynchronously replicated to the other Pulsar clusters in the background. +The data is then asynchronously replicated to the other {pulsar-short} clusters in the background. [#astra-ui] == Enable geo-replication in {product} @@ -90,14 +90,14 @@ pulsar-aws-useast2-staging ---- ==== -. Create a Pulsar consumer with a subscription to a specified topic: +. Create a {pulsar-short} consumer with a subscription to a specified topic: + [source,bash,subs="+quotes"] ---- bin/pulsar-client consume -s "subscription-test" **TENANT_NAME**/**NAMESPACE_NAME**/**TOPIC_NAME** -n 0 ---- -. Create a Pulsar producer to produce messages from a specific topic: +. Create a {pulsar-short} producer to produce messages from a specific topic: + [source,bash,subs="+quotes"] ---- @@ -262,4 +262,4 @@ include::operations:partial$georeplication-monitoring.adoc[] == See also -For more on multiregion georeplication, including region awareness and rack awareness, see the https://pulsar.apache.org/docs/concepts-replication/[Pulsar documentation]. +For more on multiregion georeplication, including region awareness and rack awareness, see the https://pulsar.apache.org/docs/concepts-replication/[{pulsar-short} documentation]. diff --git a/modules/operations/pages/astream-limits.adoc b/modules/operations/pages/astream-limits.adoc index 4f95f65..165eaf8 100644 --- a/modules/operations/pages/astream-limits.adoc +++ b/modules/operations/pages/astream-limits.adoc @@ -301,9 +301,9 @@ You can perform these actions in the {astra_ui} or programmatically with a suffi == Function and connector resources -A function instance is a unit used for scaling Pulsar functions or Pulsar IO connectors running on {product}. -Each function instance is assigned a specific amount of CPU and memory which can be allocated to a Pulsar function. -Each Pulsar function running on {product} has a minimum of one function instance allocated to it. +A function instance is a unit used for scaling {pulsar-reg} functions or {pulsar-short} IO connectors running on {product}. +Each function instance is assigned a specific amount of CPU and memory which can be allocated to a {pulsar-short} function. +Each {pulsar-short} function running on {product} has a minimum of one function instance allocated to it. Functions and connector resources for function instances are set in the control plane based as resource limits. You can't customize these resources. diff --git a/modules/operations/pages/astream-pricing.adoc b/modules/operations/pages/astream-pricing.adoc index c96692d..08de4c4 100644 --- a/modules/operations/pages/astream-pricing.adoc +++ b/modules/operations/pages/astream-pricing.adoc @@ -20,8 +20,8 @@ It is meant for evaluation before upgrading to a paid plan. These plans require a payment method on file. For metering details, see see https://www.datastax.com/pricing/astra-streaming[{product} pricing]. -By default, {product} plans use secure, shared Pulsar clusters. -Your data and interaction with Pulsar are secured over a public internet connection. +By default, {product} plans use secure, shared {pulsar-reg} clusters. +Your data and interaction with {pulsar-short} are secured over a public internet connection. If desired, you can opt in to <>. [#dedicated-clusters] @@ -29,7 +29,7 @@ If desired, you can opt in to <>. If you prefer not to use shared clusters, you can opt for dedicated clusters. -With dedicated clusters, you have your own private Pulsar cluster with all the benefits of {product} as a managed service. +With dedicated clusters, you have your own private {pulsar-short} cluster with all the benefits of {product} as a managed service. You sign in to {astra_db} and use {product} in the same way that you would on shared clusters. When you create a tenant, you have the option to deploy to your private cluster. This means that you can use both shared or dedicated clusters, depending on your tenants' use cases. diff --git a/modules/operations/pages/astream-release-notes.adoc b/modules/operations/pages/astream-release-notes.adoc index 2576892..0234402 100644 --- a/modules/operations/pages/astream-release-notes.adoc +++ b/modules/operations/pages/astream-release-notes.adoc @@ -127,7 +127,7 @@ Organizations on the *Free* plan can use xref:streaming-learning:functions:index [discrete] ==== {new} -* xref:developing:astream-rabbit.adoc[{starlight_rabbitmq}] is now available, bringing built-in RabbitMQ(R) protocol support to Apache Pulsar(TM), enabling migration of existing RabbitMQ applications and services to Pulsar without modifying the code. +* xref:developing:astream-rabbit.adoc[{starlight_rabbitmq}] is now available, bringing built-in RabbitMQ(R) protocol support to {pulsar-reg}, enabling migration of existing RabbitMQ applications and services to {pulsar-short} without modifying the code. [discrete] === April 19, 2022 @@ -137,7 +137,7 @@ Organizations on the *Free* plan can use xref:streaming-learning:functions:index [discrete] ==== {new} -* xref:developing:astream-kafka.adoc[{kafka_for_astra}] is now available, bringing built-in Apache Kafka(R) protocol support to Apache Pulsar. +* xref:developing:astream-kafka.adoc[{kafka_for_astra}] is now available, bringing built-in Apache Kafka(R) protocol support to {pulsar-short}. [discrete] === March 24, 2022 @@ -159,7 +159,7 @@ Organizations on the *Free* plan can use xref:streaming-learning:functions:index * {product} is now generally available. * Added support for the Google Cloud `us-central1` (Council Bluffs, Iowa) region. -* xref:operations:astream-token-gen.adoc[Pulsar tokens] simplify connecting to your streaming instances. +* xref:operations:astream-token-gen.adoc[{pulsar-short} tokens] simplify connecting to your streaming instances. * Enabled xref:operations:astream-pricing.adoc[billing]. ==== @@ -176,5 +176,5 @@ Organizations on the *Free* plan can use xref:streaming-learning:functions:index * Security upgrade to Log4J 2.17.0 to mitigate CVE-2021-45105. -* The public preview of {product} brings the ability to quickly create Apache Pulsar(TM) instances, manage your clusters, scale across cloud regions, and manage Pulsar resources such as topics, connectors, functions and subscriptions. +* The public preview of {product} brings the ability to quickly create {pulsar-reg} instances, manage your clusters, scale across cloud regions, and manage {pulsar-short} resources such as topics, connectors, functions and subscriptions. ==== diff --git a/modules/operations/pages/astream-scrape-metrics.adoc b/modules/operations/pages/astream-scrape-metrics.adoc index e028f53..2ad0762 100644 --- a/modules/operations/pages/astream-scrape-metrics.adoc +++ b/modules/operations/pages/astream-scrape-metrics.adoc @@ -82,10 +82,10 @@ In Docker Desktop, click *File Sharing*, click *Resources*, and then make sure y . Navigate to `http://localhost:9090/graph`, and click the *Graph* tab. . In the *Expression* field, enter `pulsar_in_messages_total`, and then click *Execute*. -Prometheus now shows the total incoming Pulsar messages for your {product} cluster. +Prometheus now shows the total incoming {pulsar-reg} messages for your {product} cluster. -. To test the integration, produce a few messages in your tenant with the Pulsar CLI or the {product} Websocket. -Make sure your Prometheus graph displays the number of incoming Pulsar messages with each 60 second scrape: +. To test the integration, produce a few messages in your tenant with the {pulsar-short} CLI or the {product} Websocket. +Make sure your Prometheus graph displays the number of incoming {pulsar-short} messages with each 60 second scrape: + image::astream-prometheus-graph.png[Scraping {product} with Prometheus] diff --git a/modules/operations/pages/astream-token-gen.adoc b/modules/operations/pages/astream-token-gen.adoc index 6134a7b..9de05e5 100644 --- a/modules/operations/pages/astream-token-gen.adoc +++ b/modules/operations/pages/astream-token-gen.adoc @@ -12,14 +12,14 @@ You need an application token for actions related to {astra_db} organizations an For information about creating and managing {astra_db} application tokens, see xref:astra-db-serverless:administration:manage-application-tokens.adoc[]. [#pulsar-token] -== {product} Pulsar tokens +== {product} {pulsar-short} tokens -{product} Pulsar token are Pulsar https://jwt.io/introduction/[JSON Web Token (JWT)] for authentication to your {product} Pulsar cluster through the Pulsar CLI, runtime clients, or the Pulsar Admin API. -If necessary, {astra_db} forwards the JWT to the Pulsar cluster for role verification. +{product} {pulsar-short} token are {pulsar-reg} https://jwt.io/introduction/[JSON Web Token (JWT)] for authentication to your {product} {pulsar-short} cluster through the {pulsar-short} CLI, runtime clients, or the {pulsar-short} Admin API. +If necessary, {astra_db} forwards the JWT to the {pulsar-short} cluster for role verification. -You need a Pulsar JWT for actions related to Pulsar tenants, namespaces, messages, topics, and functions, as well as Pulsar CLI/API commands. +You need a {pulsar-short} JWT for actions related to {pulsar-short} tenants, namespaces, messages, topics, and functions, as well as {pulsar-short} CLI/API commands. -You can generate, copy, or delete {product} Pulsar tokens for each of your {product} tenants: +You can generate, copy, or delete {product} {pulsar-short} tokens for each of your {product} tenants: . In the {astra_ui} navigation menu, click *Streaming*. @@ -42,8 +42,8 @@ The token is shown only once. . To delete a token, click *Delete*. + -Ensure you update your application with a new, valid Pulsar token before deletion. -Applications using the deleted Pulsar token will no longer be able to connect to {product}. +Ensure you update your application with a new, valid {pulsar-short} token before deletion. +Applications using the deleted {pulsar-short} token will no longer be able to connect to {product}. == Usage examples @@ -63,8 +63,8 @@ curl -sS --location -X GET "https://api.astra.datastax.com/v2/databases/**DATABA === Monitor a topic's health -Use a Pulsar token to monitor a topic's health. -For example, the following command would authenticate through a Pulsar token declared in the `pulsar-admin` binary configuration: +Use a {pulsar-short} token to monitor a topic's health. +For example, the following command would authenticate through a {pulsar-short} token declared in the `pulsar-admin` binary configuration: [source,shell] ---- @@ -73,7 +73,7 @@ bin/pulsar-admin topics stats === Monitor a connector's health -Use a Pulsar token to monitor a connector's health. +Use a {pulsar-short} token to monitor a connector's health. For example: [source,shell] diff --git a/modules/operations/pages/monitoring/index.adoc b/modules/operations/pages/monitoring/index.adoc index 5362413..6da05d0 100644 --- a/modules/operations/pages/monitoring/index.adoc +++ b/modules/operations/pages/monitoring/index.adoc @@ -1,15 +1,15 @@ = Monitor streaming tenants :navtitle: Monitoring overview -Because {product} is a managed SaaS offering, some https://pulsar.apache.org/docs/reference-metrics/[Apache Pulsar metrics] aren't exposed for external integration purposes. +Because {product} is a managed SaaS offering, some https://pulsar.apache.org/docs/reference-metrics/[{pulsar-reg} metrics] aren't exposed for external integration purposes. At a high level, {product} only exposes metrics related to namespaces. Metrics that are not directly related to namespaces aren't exposed externally, such as the Bookkeeper ledger and journal metrics and Zookeeper metrics. Additionally, of the exposed metrics, not all metrics are recommended for external integration. -== Pulsar raw metrics +== {pulsar-short} raw metrics -For a complete Pulsar metrics reference, see: +For a complete {pulsar-short} metrics reference, see: * https://pulsar.apache.org/docs/reference-metrics/#namespace-metrics[Namespace metrics] @@ -51,7 +51,7 @@ include::example$subscription-metrics.csv[] === Function metrics -The following table gives the list of recommended function metrics as a starting point. This is only relevant when Pulsar functions are deployed in {product}. +The following table gives the list of recommended function metrics as a starting point. This is only relevant when {pulsar-short} functions are deployed in {product}. [%header,format=csv,cols="2,1,3"] |=== @@ -60,7 +60,7 @@ include::example$function-metrics.csv[] === Source connector metrics -The following table gives the list of recommended source connector metrics as a starting point. This is only relevant when Pulsar source connectors are deployed in {product}. +The following table gives the list of recommended source connector metrics as a starting point. This is only relevant when {pulsar-short} source connectors are deployed in {product}. [%header,format=csv,cols="2,1,3"] |=== @@ -69,7 +69,7 @@ include::example$source-connector-metrics.csv[] === Sink connector metrics -The following table gives the list of recommended source connector metrics as a starting point. This is only relevant when Pulsar sink connectors are deployed in {product}. +The following table gives the list of recommended source connector metrics as a starting point. This is only relevant when {pulsar-short} sink connectors are deployed in {product}. [%header,format=csv,cols="2,1,3"] |=== include::example$sink-connector-metrics.csv[] @@ -86,7 +86,7 @@ For more information, see xref:astream-limits.adoc[] and xref:operations:astream Each externally exposed raw {product} metric is reported at a very low level, at each individual server instance (the `exported_instance` label) and each topic partition (the `topic` label). The same raw metrics could come from multiple server instances. From a {product} user's perspective, the direct monitoring of raw metrics is not really useful. Raw metrics need to be aggregated first - for example, by averaging or summing the raw metrics over a period of time. -The following example shows some raw metrics for a Pulsar message backlog (`pulsar_msg_backlog`) scraped from an {product} cluster in the Google Cloud `us-central1` region: +The following example shows some raw metrics for a {pulsar-short} message backlog (`pulsar_msg_backlog`) scraped from an {product} cluster in the Google Cloud `us-central1` region: [source,console] ---- @@ -98,7 +98,7 @@ pulsar_msg_backlog{app="pulsar", cluster="pulsar-gcp-uscentral1", component="bro To transform raw metrics into a usable state, {company} recommends the following: * Aggregate metrics at the parent topic level, at minimum, instead of at the partition level. -In Pulsar, end user applications only deal with messages at the parent topic level; however, internally, Pulsar handles message processing at the partition level. +In {pulsar-short}, end user applications only deal with messages at the parent topic level; however, internally, {pulsar-short} handles message processing at the partition level. * Exclude reported metrics that are associated with {product}'s system namespaces and topics, which are usually prefixed by two underscores, such as: + @@ -128,7 +128,7 @@ You can use the following expression to filter system topics: ---- This expression excludes messages with topic labels that include two consecutive underscores. -This works because Pulsar system topics and namespaces are usually prefixed by two underscores, such as: +This works because {pulsar-short} system topics and namespaces are usually prefixed by two underscores, such as: [source,plain] ---- diff --git a/modules/operations/pages/monitoring/integration.adoc b/modules/operations/pages/monitoring/integration.adoc index 5e26616..81134f1 100644 --- a/modules/operations/pages/monitoring/integration.adoc +++ b/modules/operations/pages/monitoring/integration.adoc @@ -1,7 +1,7 @@ = Integrate with an external Prometheus and Grafana instance :navtitle: Integrate external Prometheus and Grafana -{product} exposes some of the Pulsar metrics through Prometheus endpoints. +{product} exposes some of the {pulsar-reg} metrics through Prometheus endpoints. The Prometheus configuration information to scrape {product} metrics into an external Prometheus server is found in the {astra_ui}. This page explains how to set up a Prometheus server in a Kubernetes cluster and configure it to scrape {product} metrics. @@ -97,7 +97,7 @@ kubectl rollout status daemonset \ Make sure the additional scrape job is in `UP` status. If not, review the configuration instructions and YAML examples to ensure your configuration is correct. + -If the additional scrape job returns a `401 Unauthorized` error, make sure your Pulsar JWT isn't expired. +If the additional scrape job returns a `401 Unauthorized` error, make sure your {pulsar-short} JWT isn't expired. For more information, see xref:astream-token-gen.adoc[]. == See also diff --git a/modules/operations/pages/monitoring/metrics.adoc b/modules/operations/pages/monitoring/metrics.adoc index 3c660ac..ae6dc79 100644 --- a/modules/operations/pages/monitoring/metrics.adoc +++ b/modules/operations/pages/monitoring/metrics.adoc @@ -4,7 +4,7 @@ You can get the dashboards from the https://github.com/datastax/astra-streaming-examples/tree/master/grafana-dashboards[{product} Examples repository]. -Dashboards are available for scraping metrics at Pulsar's tenant, namespace, and topic levels: +Dashboards are available for scraping metrics at {pulsar-short}'s tenant, namespace, and topic levels: * xref:monitoring/overview-dashboard.adoc[Overview Dashboard] * xref:monitoring/namespace-dashboard.adoc[Namespace Dashboard] diff --git a/modules/operations/pages/monitoring/namespace-dashboard.adoc b/modules/operations/pages/monitoring/namespace-dashboard.adoc index 206579c..3ccfd05 100644 --- a/modules/operations/pages/monitoring/namespace-dashboard.adoc +++ b/modules/operations/pages/monitoring/namespace-dashboard.adoc @@ -43,4 +43,4 @@ Geo-replication displays the time series metrics chart summarized at the namespa == See also -Dashboards are available for scraping metrics at Pulsar's xref:monitoring/overview-dashboard.adoc[tenant], xref:monitoring/namespace-dashboard.adoc[namespace], and xref:monitoring/topic-dashboard.adoc[topic] levels. \ No newline at end of file +Dashboards are available for scraping metrics at {pulsar-short}'s xref:monitoring/overview-dashboard.adoc[tenant], xref:monitoring/namespace-dashboard.adoc[namespace], and xref:monitoring/topic-dashboard.adoc[topic] levels. \ No newline at end of file diff --git a/modules/operations/pages/monitoring/overview-dashboard.adoc b/modules/operations/pages/monitoring/overview-dashboard.adoc index 4f9a37b..201f673 100644 --- a/modules/operations/pages/monitoring/overview-dashboard.adoc +++ b/modules/operations/pages/monitoring/overview-dashboard.adoc @@ -43,4 +43,4 @@ Messaging displays the time series metrics chart summarized at the tenant level. == See also -Dashboards are available for scraping metrics at Pulsar's xref:monitoring/overview-dashboard.adoc[tenant], xref:monitoring/namespace-dashboard.adoc[namespace], and xref:monitoring/topic-dashboard.adoc[topic] levels. \ No newline at end of file +Dashboards are available for scraping metrics at {pulsar-short}'s xref:monitoring/overview-dashboard.adoc[tenant], xref:monitoring/namespace-dashboard.adoc[namespace], and xref:monitoring/topic-dashboard.adoc[topic] levels. \ No newline at end of file diff --git a/modules/operations/pages/monitoring/stream-audit-logs.adoc b/modules/operations/pages/monitoring/stream-audit-logs.adoc index 37aae5b..e01430d 100644 --- a/modules/operations/pages/monitoring/stream-audit-logs.adoc +++ b/modules/operations/pages/monitoring/stream-audit-logs.adoc @@ -39,7 +39,7 @@ You can use the xref:astra-api-docs:ROOT:attachment$devops-api/index.html#tag/Or . In the {link-astra-portal}, create an application token with the **Organization Administrator** role. -. Create the audit log streaming configuration using the values from the tenant's `client.conf` file and your Pulsar configuration: +. Create the audit log streaming configuration using the values from the tenant's `client.conf` file and your {pulsar-short} configuration: + [source,curl,subs="+quotes"] ---- diff --git a/modules/operations/pages/monitoring/topic-dashboard.adoc b/modules/operations/pages/monitoring/topic-dashboard.adoc index 32da40f..6bd1ccb 100644 --- a/modules/operations/pages/monitoring/topic-dashboard.adoc +++ b/modules/operations/pages/monitoring/topic-dashboard.adoc @@ -59,4 +59,4 @@ Georeplication displays the time series metrics chart summarized at the topic le == See also -Dashboards are available for scraping metrics at Pulsar's xref:monitoring/overview-dashboard.adoc[tenant], xref:monitoring/namespace-dashboard.adoc[namespace], and xref:monitoring/topic-dashboard.adoc[topic] levels. \ No newline at end of file +Dashboards are available for scraping metrics at {pulsar-short}'s xref:monitoring/overview-dashboard.adoc[tenant], xref:monitoring/namespace-dashboard.adoc[namespace], and xref:monitoring/topic-dashboard.adoc[topic] levels. \ No newline at end of file diff --git a/modules/operations/pages/onboarding-faq.adoc b/modules/operations/pages/onboarding-faq.adoc index e503ceb..d00a5bc 100644 --- a/modules/operations/pages/onboarding-faq.adoc +++ b/modules/operations/pages/onboarding-faq.adoc @@ -8,12 +8,12 @@ This page answers some common questions about getting started with {product}. == Why does {company} call {product} "serverless"? -Running a - Pulsar cluster that can handle at-scale workloads is not a trivial task. +Running a {pulsar-reg} cluster that can handle at-scale workloads is not a trivial task. It requires many (virtual) machines to be configured in a very particular way. In traditional cloud environments, you would pay hourly for every machine whether they are being used for workloads or not, and you would carry the burden of maintaining the server infrastructure. -Serverless removes those operational burdens, and you pay only for the resources you actually use. +A serverless environment removes those operational burdens, and you pay only for the resources you actually use. == What is the difference between shared and dedicated clusters for {product}? @@ -24,10 +24,10 @@ See xref:operations:astream-pricing.adoc[]. Connections to both cluster types are secure. However, dedicated clusters offer the option for private connectivity. -For dedicated Pulsar clusters, all connections in {product} are guarded by authentication, authorization, and secure (TLS) communications. +For dedicated {pulsar-short} clusters, all connections in {product} are guarded by authentication, authorization, and secure (TLS) communications. You can connect over the public internet or xref:operations:private-connectivity.adoc[establish a private connection]. -Shared Pulsar clusters also use a secure connection over the public internet. +Shared {pulsar-short} clusters also use a secure connection over the public internet. However, shared clusters don't support private links. For more information, see xref:operations:astream-pricing.adoc[]. @@ -37,11 +37,11 @@ For more information, see xref:operations:astream-pricing.adoc[]. If your {astra_db} organization is on the *Pay As You Go* or *Enterprise* {astra_db} subscription plan, your users can use SSO to sign in to the {astra_ui}. For more information, see xref:astra-db-serverless:administration:configure-sso.adoc[]. -== How do {astra_db} roles and permissions map to Pulsar roles and permissions? +== How do {astra_db} roles and permissions map to {pulsar-short} roles and permissions? See xref:ROOT:astream-org-permissions.adoc[]. -== What is the difference between {astra_db} application tokens and the Pulsar tokens? +== What is the difference between {astra_db} application tokens and the {pulsar-short} tokens? See xref:operations:astream-token-gen.adoc[]. @@ -64,7 +64,7 @@ For more on geo-replication, see xref:astream-georeplication.adoc[]. == Application development -=== Can I migrate data from my existing Pulsar cluster to {product}? +=== Can I migrate data from my existing {pulsar-short} cluster to {product}? Unless you are starting a project from scratch, you likely have message data that needs to be brought over to your {product} tenants. For migration assistance, contact {support_url}[{company} Support]. @@ -94,9 +94,9 @@ While this doesn't offer as much flexibility as separation by tenant, it does of Also, note that in this scheme you cannot limit access by namespace. All tokens would have access to all namespaces. -=== Can I develop applications on open source Pulsar and then move to {product}? +=== Can I develop applications on open source {pulsar-short} and then move to {product}? -{product} is actively maintained to keep parity with the official https://pulsar.apache.org[Apache Pulsar project]. +{product} is actively maintained to keep parity with the official https://pulsar.apache.org[{pulsar} project]. The notable differences arise from accessibility and security. Naturally, you have less control in a managed, serverless cluster than you do in a cluster running in your own environment. Beyond those differences, the effort to develop locally and then move to {product} should not be significant, but {company} recommends that you develop directly in {product}. @@ -104,8 +104,8 @@ If you are trying to reduce costs, use the free tier of {product} and then switc === Can I use {product} with my existing Kafka or RabbitMQ applications? -Yes, {product} offers a fully compatible Kafka and RabbitMQ implementation. This means you can use your existing Kafka or RabbitMQ applications with {product}. You can also use the {product} Kafka or RabbitMQ implementation with your existing Pulsar applications. {product} comes with custom ports for Kafka and RabbitMQ workloads. xref:streaming-learning:use-cases-architectures:starlight/index.adoc[Learn more] about the Starlight suite of APIs. +Yes, {product} offers a fully compatible Kafka and RabbitMQ implementation. This means you can use your existing Kafka or RabbitMQ applications with {product}. You can also use the {product} Kafka or RabbitMQ implementation with your existing {pulsar-short} applications. {product} comes with custom ports for Kafka and RabbitMQ workloads. xref:streaming-learning:use-cases-architectures:starlight/index.adoc[Learn more] about the Starlight suite of APIs. === Can I use {product} with my existing Java applications? -Yes, {product} offers a fully compatible JMS implementation. This means you can use your existing JMS applications with {product}. You can also use the {product} JMS implementation with your existing Pulsar applications. xref:streaming-learning:use-cases-architectures:starlight/index.adoc[Learn more] about the Starlight suite of APIs. \ No newline at end of file +Yes, {product} offers a fully compatible JMS implementation. This means you can use your existing JMS applications with {product}. You can also use the {product} JMS implementation with your existing {pulsar-short} applications. xref:streaming-learning:use-cases-architectures:starlight/index.adoc[Learn more] about the Starlight suite of APIs. \ No newline at end of file diff --git a/modules/operations/pages/private-connectivity.adoc b/modules/operations/pages/private-connectivity.adoc index 9cf4359..e404681 100644 --- a/modules/operations/pages/private-connectivity.adoc +++ b/modules/operations/pages/private-connectivity.adoc @@ -18,7 +18,7 @@ Be prepared to provide the <> required for your cloud p {product} supports inbound traffic flowing from your private endpoint to {product}. -The first inbound traffic pattern describes Pulsar, Kafka, and RabbitMQ messaging traffic, as well as Prometheus metrics traffic, flowing from a user's private endpoint to {product}. +The first inbound traffic pattern describes {pulsar-reg}, Apache Kafka(R), and RabbitMQ messaging traffic, as well as Prometheus metrics traffic, flowing from a user's private endpoint to {product}. You create a connection to the {company} private link service, and then {company} routes traffic to your {product} dedicated cluster. If you have multiple tenants, they can have different VPCs. @@ -33,7 +33,7 @@ The private link service pattern is the same across cloud providers, but the hos |=== |Service |Endpoint pattern -|Pulsar Messaging +|{pulsar-short} Messaging |`pulsar-azure-eastus.private.streaming.datastax.com:6651` |Kafka Messaging diff --git a/modules/operations/partials/code-examples-text.adoc b/modules/operations/partials/code-examples-text.adoc index 7a1b17d..d4ba1e6 100644 --- a/modules/operations/partials/code-examples-text.adoc +++ b/modules/operations/partials/code-examples-text.adoc @@ -1,7 +1,7 @@ -{product} is powered by http://pulsar.apache.org/[Apache Pulsar]. -To connect to your service, use the open-source client APIs provided by the Apache Pulsar project. +{product} is powered by http://pulsar.apache.org/[{pulsar-reg}]. +To connect to your service, use the open-source client APIs provided by the {pulsar} project. -{product} is running Pulsar version {pulsar_version}. +{product} is running {pulsar-short} version {pulsar-version}. You should use this API version or higher. Choose your preferred language: