---
name: "apache-pulsar-tiered-storage-s3"
description: "Decouple stream serving from storage and tier historical topic logs to cloud object storage."
metadata:
  author: "Apache Software Foundation"
  version: "1.0.0"
  runtime_compatibility:
    - "codex"
    - "claude-code"
    - "cursor"
    - "windsurf"
triggers:
  - "configure pulsar s3 offloader"
  - "setup pulsar subscription modes"
  - "deploy pulsar functions"
permissions:
  fs_read: true
  fs_write: "workspace"
  shell_exec: false
  net_access: false
---

# Apache Pulsar Multi-Tenant Streaming & Tiered Storage

Architects Apache Pulsar: configuring multi-tenancy (tenant/namespace/topic), Apache BookKeeper bookies, tiered storage offloaders to S3, unified queueing and streaming subscriptions, and Pulsar Functions.

## When to Invoke
Invoke this skill whenever you need to:
- configure pulsar s3 offloader
- setup pulsar subscription modes
- deploy pulsar functions

## Execution SOP & Rules
1. Configure conf/tiered-storage-s3.conf with AWS credentials and target S3 bucket.
2. Set namespace offload policy: bin/pulsar-admin namespaces set-offload-threshold --size 1G my-tenant/my-ns.
3. Subscribe using ConsumerType: Exclusive, Shared, Failover, or Key_Shared.
4. Trigger manual offload: bin/pulsar-admin topics offload --size-threshold 10M persistent://tenant/ns/topic.

## Verification Checklist
- Run local linting, syntax validation, and type-checks before reporting completion.
- Ensure all created or modified files adhere to workspace boundaries and avoid uncommitted secrets.
- Verify tests or build commands exit cleanly with return code 0.
