StreamNative CLI Overview

StreamNative provides powerful command-line interfaces (CLIs) for managing your messaging infrastructure.

The primary tool is the StreamNative Cloud CLI (snctl). It serves as a unified interface to:

  • Deploy and manage StreamNative Cloud infrastructure (instances, clusters, service accounts, API keys, etc.).
  • Interact directly with your Pulsar clusters using the snctl pulsar commands (for managing tenants, namespaces, topics, producing/consuming messages, running admin tasks, etc.).
  • Interact with Kafka-protocol endpoints (KSN / Ursa) using the snctl kafka commands (for managing topics, consumer groups, producing/consuming messages, etc.).

Additionally, the traditional Pulsar CLI (pulsarctl) remains available. While snctl now covers most common Pulsar management tasks for StreamNative Cloud clusters via its Service Context feature, pulsarctl is still relevant for:

  • Managing self-managed, open-source Apache Pulsar clusters.
  • Users who prefer its specific command set or have existing scripts based on it.
  • Potentially accessing advanced Pulsar features or configurations not yet exposed through snctl pulsar admin.

By primarily leveraging snctl, you can automate the complete workflow of provisioning StreamNative Cloud resources and managing the Pulsar/Kafka resources within them. You can supplement with pulsarctl for specific OSS or advanced use cases if needed.

Resources you can manage

by snctl

You can provision or manage the following StreamNative Cloud resources by using snctl:

Generic resources

  • Organization

Infrastructure resources

  • CloudConnection
  • CloudEnvironment
  • PulsarGateway
  • Pool
  • PoolMember

Instance & Cluster resources

  • PulsarInstance
  • PulsarCluster

Security, access control, and observability resources

  • ServiceAccount
  • Role
  • RoleBinding
  • User
  • APIKey

Pulsar resources on PulsarCluster

  • Cluster
  • Broker
  • Tenant
  • Namespace
  • Topic
  • Subscription
  • Schema
  • Source
  • Sink
  • Function
  • Packages

Kafka resources on KSN enabled PulsarCluster or Ursa engine PulsarCluster

  • Topics
  • Partitions
  • Groups
  • Schema Registry
  • Kafka Connect

by pulsarctl

You can provision or manage the following Pulsar resources by using pulsarctl:

  • Cluster
  • Broker
  • Tenant
  • Namespace
  • Topic
  • Subscription
  • Schema
  • Source
  • Sink
  • Function
  • Packages

Other tools

You can use the other existing tools to interact with your StreamNative clusters.

Pulsar CLI tools

You can use the existing OSS Pulsar CLI tools, such as pulsar-admin, pulsar-client, and pulsar-perf, to manage the Pulsar resources or interact with your StreamNative clusters through the Pulsar protocol.

See Use Pulsar Tools With StreamNative Cloud for more information.

Kafka CLI tools

Apache Kafka CLI tools

Apache Kafka provides a suite of command-line interface (CLI) tools that can be accessed from the /bin directory after downloading and extracting the Kafka distribution. These tools offer a range of capabilities, including starting and stopping Kafka, managing topics, and handling partitions. You can use these tools to interact with your StreamNative clusters through the Kafka protocol.

See Use Kafka Tools With StreamNative Cloud for more information.

kcat

kcat is a popular CLI tool to interact with Apache Kafka. You can use it to interact with your StreamNative clusters as well.

See Use kcat to interact with StreamNative Cloud for more information.

Previous
StreamNative CLI