Pulsar admin CLI
Pulsar admin CLI
tip 이 페이지는 더 이상 업데이트되지 않는 문서예요.
Pulsar admin의 최신 완전한 정보(명령어, 플래그, 설명 등)는 Pulsar admin 문서를 확인해 주세요.
pulsar-admin 도구는 클러스터, 브로커, 네임스페이스, 테넌트 등 Pulsar 설치본을 관리할 수 있게 해줘요. 이번에는 이 도구로 할 수 있는 관리 작업과 각 명령어의 사용법을 하나씩 살펴볼게요.
출처: 문서
본문
사용법 (Usage)
pulsar-admin command
명령어 (Commands)
broker-statsbrokersclustersfunctionsfunctions-workernamespacesns-isolation-policysources자세한 내용은 여기에서 확인해 주세요.sinks자세한 내용은 여기에서 확인해 주세요.topicstenantsresource-quotasschemas
broker-stats
브로커 통계(broker statistics)를 수집하는 작업이에요.
pulsar-admin broker-stats subcommand
하위 명령어 (Subcommands)
allocator-statstopics(destinations)mbeansmonitoring-metricsload-report
allocator-stats
할당기(allocator) 통계를 덤프(dump)해요.
사용법
pulsar-admin broker-stats allocator-stats allocator-name
topics(destinations)
토픽 통계를 덤프해요.
사용법
pulsar-admin broker-stats topics options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -i, --indent | JSON 출력을 들여쓰기(indent)해요 | false |
mbeans
Mbean 통계를 덤프해요.
사용법
pulsar-admin broker-stats mbeans options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -i, --indent | JSON 출력을 들여쓰기(indent)해요 | false |
monitoring-metrics
모니터링을 위한 메트릭을 덤프해요.
사용법
pulsar-admin broker-stats monitoring-metrics options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -i, --indent | JSON 출력을 들여쓰기(indent)해요 | false |
load-report
브로커의 로드 리포트(load-report)를 덤프해요.
사용법
pulsar-admin broker-stats load-report
brokers
브로커에 대한 작업이에요.
pulsar-admin brokers subcommand
하위 명령어 (Subcommands)
listnamespacesupdate-dynamic-configlist-dynamic-configget-all-dynamic-configget-internal-configget-runtime-confighealthcheck
list
클러스터의 활성 브로커(active brokers)를 나열해요.
사용법
pulsar-admin brokers list cluster-name
leader-broker
리더 브로커(leader broker)의 정보를 가져와요.
사용법
pulsar-admin brokers leader-broker
namespaces
브로커가 소유한 네임스페이스를 나열해요.
사용법
pulsar-admin brokers namespaces cluster-name options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --url | 브로커의 URL | |
update-dynamic-config
브로커의 동적 서비스 구성(dynamic service configuration)을 업데이트해요.
사용법
pulsar-admin brokers update-dynamic-config options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --config | 서비스 구성 매개변수 이름 | |
| --value | --config 플래그로 지정한 구성 매개변수 값 | |
list-dynamic-config
업데이트 가능한 구성 이름 목록을 가져와요.
사용법
pulsar-admin brokers list-dynamic-config
delete-dynamic-config
브로커의 동적 서비스 구성(dynamic-serviceConfiguration)을 삭제해요.
사용법
pulsar-admin brokers delete-dynamic-config options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --config | 서비스 구성 매개변수 이름 | |
get-all-dynamic-config
재정의된(overridden) 모든 동적 구성 값을 가져와요.
사용법
pulsar-admin brokers get-all-dynamic-config
get-internal-config
내부 구성 정보를 가져와요.
사용법
pulsar-admin brokers get-internal-config
get-runtime-config
런타임 구성 값을 가져와요.
사용법
pulsar-admin brokers get-runtime-config
healthcheck
브로커에 대해 상태 확인(health check)을 실행해요.
사용법
pulsar-admin brokers healthcheck
clusters
클러스터에 대한 작업이에요.
사용법
pulsar-admin clusters subcommand
하위 명령어 (Subcommands)
getcreateupdatedeletelistupdate-peer-clustersget-peer-clustersget-failure-domaincreate-failure-domainupdate-failure-domaindelete-failure-domainlist-failure-domains
get
지정한 클러스터의 구성 데이터를 가져와요.
사용법
pulsar-admin clusters get cluster-name
create
새 클러스터를 프로비저닝(provision)해요. 이 작업은 Pulsar 슈퍼유저(super-user) 권한이 필요해요.
사용법
pulsar-admin clusters create cluster-name options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --broker-url | 브로커 서비스의 URL | |
| --broker-url-secure | 보안 연결을 위한 브로커 서비스 URL | |
| --url | service-url | |
| --url-secure | 보안 연결을 위한 service-url | |
update
클러스터의 구성을 업데이트해요.
사용법
pulsar-admin clusters update cluster-name options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --broker-url | 브로커 서비스의 URL | |
| --broker-url-secure | 보안 연결을 위한 브로커 서비스 URL | |
| --url | service-url | |
| --url-secure | 보안 연결을 위한 service-url | |
update cluster migration
클러스터의 구성을 업데이트해요.
사용법
pulsar-admin clusters update-cluster-migration cluster-name options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --migrated | 클러스터가 마이그레이션(migrated)되었는지 여부 | |
| --broker-url | 브로커 서비스의 새 클러스터 URL | |
| --broker-url-secure | 보안 연결을 위한 새 클러스터 서비스 URL | |
| --url | service-url | |
| --url-secure | 보안 연결을 위한 service-url | |
delete
기존 클러스터를 삭제해요.
사용법
pulsar-admin clusters delete cluster-name
list
기존 클러스터를 나열해요.
사용법
pulsar-admin clusters list
update-peer-clusters
피어 클러스터(peer cluster) 이름을 업데이트해요.
사용법
pulsar-admin clusters update-peer-clusters cluster-name options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --peer-clusters | 쉼표로 구분된 피어 클러스터 이름 (목록을 삭제하려면 빈 문자열 ""을 전달) | |
get-peer-clusters
피어 클러스터 목록을 가져와요.
사용법
pulsar-admin clusters get-peer-clusters
get-failure-domain
장애 도메인(failure domain)의 브로커 구성을 가져와요.
사용법
pulsar-admin clusters get-failure-domain cluster-name options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --domain-name | 장애 도메인 이름 (Pulsar 클러스터 아래의 논리 도메인) | |
create-failure-domain
클러스터에 새 장애 도메인을 만들어요 (이미 있으면 업데이트해요).
사용법
pulsar-admin clusters create-failure-domain cluster-name options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --broker-list | 쉼표로 구분된 브로커 목록 | |
| --domain-name | 장애 도메인 이름 (Pulsar 클러스터 아래의 논리 도메인) | |
update-failure-domain
클러스터의 장애 도메인을 업데이트해요 (없으면 새로 만들어요).
사용법
pulsar-admin clusters update-failure-domain cluster-name options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --broker-list | 쉼표로 구분된 브로커 목록 | |
| --domain-name | 장애 도메인 이름 (Pulsar 클러스터 아래의 논리 도메인) | |
delete-failure-domain
기존 장애 도메인을 삭제해요.
사용법
pulsar-admin clusters delete-failure-domain cluster-name options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --domain-name | 장애 도메인 이름 (Pulsar 클러스터 아래의 논리 도메인) | |
list-failure-domains
클러스터의 기존 장애 도메인을 나열해요.
사용법
pulsar-admin clusters list-failure-domains cluster-name
functions
Pulsar Functions를 위한 커맨드라인 인터페이스예요.
사용법
pulsar-admin functions subcommand
하위 명령어 (Subcommands)
localruncreatedeleteupdategetrestartstopstartstatusstatslistquerystateputstatetrigger
localrun
Pulsar Function을 로컬에서 실행해요 (Pulsar 클러스터에 배포하지 않고요).
사용법
pulsar-admin functions localrun options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --cpu | 함수 인스턴스 당 할당할 CPU(코어 단위) (docker 런타임에만 적용) | |
| --ram | 함수 인스턴스 당 할당할 RAM(바이트 단위) (process/docker 런타임에만 적용) | |
| --disk | 함수 인스턴스 당 할당할 디스크(바이트 단위) (docker 런타임에만 적용) | |
| --auto-ack | 프레임워크가 메시지를 자동으로 acknowledge할지 여부 | |
| --subs-name | 입력 토픽 컨슈머에 특정 subscription 이름을 쓰고 싶을 때의 Pulsar 소스 구독 이름 | |
| --broker-service-url | Pulsar 브로커의 URL | |
| --classname | 함수의 클래스 이름 | |
| --custom-serde-inputs | 입력 토픽과 SerDe 클래스 이름의 맵 (JSON 문자열로) | |
| --custom-schema-inputs | 입력 토픽과 Schema 클래스 이름의 맵 (JSON 문자열로) | |
| --client-auth-params | 클라이언트 인증 매개변수 | |
| --client-auth-plugin | function-process가 브로커에 연결할 때 쓰는 클라이언트 인증 플러그인 | |
| --function-config-file | 함수 구성을 지정한 YAML 구성 파일의 절대 경로 | |
| --hostname-verification-enabled | 호스트 이름 검증을 활성화해요 | false |
| --instance-id-offset | instanceId를 이 오프셋에서 시작해요 | 0 |
| --inputs | 함수의 입력 토픽 (여러 토픽은 쉼표로 구분해 지정) | |
| --log-topic | 함수 로그가 생성되는 토픽 | |
| --jar | 함수의 jar 파일 절대 경로 (Java로 작성된 경우). worker가 패키지를 다운로드할 수 있는 URL 경로 [http/https/file (file 프로토콜은 파일이 이미 worker 호스트에 존재한다고 가정)/function (패키지 관리 서비스의 패키지 URL)]도 지원해요. | |
| --name | 함수의 이름 | |
| --namespace | 함수의 네임스페이스 | |
| --output | 함수의 출력 토픽 (지정하지 않으면 출력이 기록되지 않아요) | |
| --output-serde-classname | 함수가 출력한 메시지에 사용할 SerDe 클래스 | |
| --parallelism | 함수의 병렬성(parallelism) 계수, 즉 실행할 함수 인스턴스 개수 | 1 |
| --processing-guarantees | 함수에 적용되는 처리 보장(전달 의미론, delivery semantics). 가능한 값: [ATLEAST_ONCE, ATMOST_ONCE, EFFECTIVELY_ONCE] | ATLEAST_ONCE |
| --py | 함수의 메인 Python 파일/Python Wheel 파일 절대 경로 (Python으로 작성된 경우). worker가 패키지를 다운로드할 수 있는 URL 경로 [http/https/file (file 프로토콜은 파일이 이미 worker 호스트에 존재한다고 가정)/function (패키지 관리 서비스의 패키지 URL)]도 지원해요. | |
| --go | 함수의 메인 Go 실행 바이너리 절대 경로 (Go로 작성된 경우). worker가 패키지를 다운로드할 수 있는 URL 경로 [http/https/file (file 프로토콜은 파일이 이미 worker 호스트에 존재한다고 가정)/function (패키지 관리 서비스의 패키지 URL)]도 지원해요. | |
| --schema-type | 함수가 출력한 메시지에 사용할 내장 스키마 타입 또는 사용자 지정 스키마 클래스 이름 | |
| --sliding-interval-count | 윈도우가 슬라이딩되는 메시지 개수 | |
| --sliding-interval-duration-ms | 윈도우가 슬라이딩되는 시간(ms) | |
| --state-storage-service-url | 상태 저장 서비스의 URL. 기본적으로 Apache BookKeeper의 서비스 URL로 설정돼요. Pulsar Function이 로컬에서 실행될 때 이 서비스 URL을 수동으로 추가해야 해요. | |
| --tenant | 함수의 테넌트 | |
| --topics-pattern | 패턴과 일치하는 네임스페이스 아래 토픽 목록에서 소비할 토픽 패턴. [--input]과 [--topic-pattern]은 상호 배타적이에요. --custom-serde-inputs에 패턴에 대한 SerDe 클래스 이름을 추가해 주세요 (Java 함수만 지원). | |
| --user-config | 사용자 정의 구성 키/값 | |
| --window-length-count | 윈도우 당 메시지 개수 | |
| --window-length-duration-ms | 윈도우의 시간(밀리초) | |
| --dead-letter-topic | 성공적으로 처리되지 못한 모든 메시지가 전송되는 토픽 | |
| --fqfn | 함수의 완전한 함수 이름 (Fully Qualified Function Name, FQFN) | |
| --max-message-retries | 메시지를 포기하기 전에 처리하려는 횟수 | |
| --retain-ordering | 함수가 메시지를 순서대로 소비하고 처리해요 | |
| --retain-key-ordering | 함수가 메시지를 키 순서대로 소비하고 처리해요 | |
| --timeout-ms | 메시지 타임아웃(밀리초) | |
| --tls-allow-insecure | 안전하지 않은 tls 연결 허용 | false |
| --tls-trust-cert-path | tls 신뢰 인증서 파일 경로 | |
| --use-tls | tls 연결 사용 | false |
| --producer-config | 사용자 지정 프로듀서 구성 (JSON 문자열) | |
create
클러스터 모드에서 Pulsar Function을 만들어요 (즉, Pulsar 클러스터에 배포해요).
사용법
pulsar-admin functions create options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --cpu | 함수 인스턴스 당 할당할 CPU(코어 단위) (docker 런타임에만 적용) | |
| --ram | 함수 인스턴스 당 할당할 RAM(바이트 단위) (process/docker 런타임에만 적용) | |
| --disk | 함수 인스턴스 당 할당할 디스크(바이트 단위) (docker 런타임에만 적용) | |
| --auto-ack | 프레임워크가 메시지를 자동으로 acknowledge할지 여부 | |
| --subs-name | 입력 토픽 컨슈머에 특정 subscription 이름을 쓰고 싶을 때의 Pulsar 소스 구독 이름 | |
| --classname | 함수의 클래스 이름 | |
| --custom-serde-inputs | 입력 토픽과 SerDe 클래스 이름의 맵 (JSON 문자열로) | |
| --custom-schema-inputs | 입력 토픽과 Schema 클래스 이름의 맵 (JSON 문자열로) | |
| --function-config-file | 함수 구성을 지정한 YAML 구성 파일의 절대 경로 | |
| --inputs | 함수의 입력 토픽 (여러 토픽은 쉼표로 구분해 지정) | |
| --log-topic | 함수 로그가 생성되는 토픽 | |
| --jar | 함수의 jar 파일 절대 경로 (Java로 작성된 경우). worker가 패키지를 다운로드할 수 있는 URL 경로 [http/https/file (file 프로토콜은 파일이 이미 worker 호스트에 존재한다고 가정)/function (패키지 관리 서비스의 패키지 URL)]도 지원해요. | |
| --name | 함수의 이름 | |
| --namespace | 함수의 네임스페이스 | |
| --output | 함수의 출력 토픽 (지정하지 않으면 출력이 기록되지 않아요) | |
| --output-serde-classname | 함수가 출력한 메시지에 사용할 SerDe 클래스 | |
| --parallelism | 함수의 병렬성 계수, 즉 실행할 함수 인스턴스 개수 | 1 |
| --processing-guarantees | 함수에 적용되는 처리 보장(전달 의미론). 가능한 값: [ATLEAST_ONCE, ATMOST_ONCE, EFFECTIVELY_ONCE] | ATLEAST_ONCE |
| --py | 함수의 메인 Python 파일/Python Wheel 파일 절대 경로 (Python으로 작성된 경우). URL 경로 [http/https/file (file 프로토콜은 파일이 이미 worker 호스트에 존재한다고 가정)/function (패키지 관리 서비스의 패키지 URL)]도 지원해요. | |
| --go | 함수의 메인 Go 실행 바이너리 절대 경로 (Go로 작성된 경우). URL 경로 [http/https/file (file 프로토콜은 파일이 이미 worker 호스트에 존재한다고 가정)/function (패키지 관리 서비스의 패키지 URL)]도 지원해요. | |
| --schema-type | 함수가 출력한 메시지에 사용할 내장 스키마 타입 또는 사용자 지정 스키마 클래스 이름 | |
| --sliding-interval-count | 윈도우가 슬라이딩되는 메시지 개수 | |
| --sliding-interval-duration-ms | 윈도우가 슬라이딩되는 시간(ms) | |
| --tenant | 함수의 테넌트 | |
| --topics-pattern | 패턴과 일치하는 네임스페이스 아래 토픽 목록에서 소비할 토픽 패턴. [--input]과 [--topic-pattern]은 상호 배타적이에요. --custom-serde-inputs에 패턴에 대한 SerDe 클래스 이름을 추가해 주세요 (Java 함수만 지원). | |
| --user-config | 사용자 정의 구성 키/값 | |
| --window-length-count | 윈도우 당 메시지 개수 | |
| --window-length-duration-ms | 윈도우의 시간(밀리초) | |
| --dead-letter-topic | 성공적으로 처리되지 못한 메시지가 전송되는 토픽 | |
| --fqfn | 함수의 완전한 함수 이름 (FQFN) | |
| --max-message-retries | 메시지를 포기하기 전에 처리하려는 횟수 | |
| --retain-ordering | 함수가 메시지를 순서대로 소비하고 처리해요 | |
| --retain-key-ordering | 함수가 메시지를 키 순서대로 소비하고 처리해요 | |
| --timeout-ms | 메시지 타임아웃(밀리초) | |
| --producer-config | 사용자 지정 프로듀서 구성 (JSON 문자열) | |
delete
Pulsar 클러스터에서 실행 중인 Pulsar Function을 삭제해요.
사용법
pulsar-admin functions delete options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --fqfn | 함수의 완전한 함수 이름 (FQFN) | |
| --name | 함수의 이름 | |
| --namespace | 함수의 네임스페이스 | |
| --tenant | 함수의 테넌트 | |
update
Pulsar 클러스터에 배포된 Pulsar Function을 업데이트해요.
사용법
pulsar-admin functions update options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --cpu | 함수 인스턴스 당 할당할 CPU(코어 단위) (docker 런타임에만 적용) | |
| --ram | 함수 인스턴스 당 할당할 RAM(바이트 단위) (process/docker 런타임에만 적용) | |
| --disk | 함수 인스턴스 당 할당할 디스크(바이트 단위) (docker 런타임에만 적용) | |
| --auto-ack | 프레임워크가 메시지를 자동으로 acknowledge할지 여부 | |
| --subs-name | 입력 토픽 컨슈머에 특정 subscription 이름을 쓰고 싶을 때의 Pulsar 소스 구독 이름 | |
| --classname | 함수의 클래스 이름 | |
| --custom-serde-inputs | 입력 토픽과 SerDe 클래스 이름의 맵 (JSON 문자열로) | |
| --custom-schema-inputs | 입력 토픽과 Schema 클래스 이름의 맵 (JSON 문자열로) | |
| --function-config-file | 함수 구성을 지정한 YAML 구성 파일의 절대 경로 | |
| --inputs | 함수의 입력 토픽 (여러 토픽은 쉼표로 구분해 지정) | |
| --log-topic | 함수 로그가 생성되는 토픽 | |
| --jar | 함수의 jar 파일 절대 경로 (Java로 작성된 경우). URL 경로 [http/https/file (file 프로토콜은 파일이 이미 worker 호스트에 존재한다고 가정)/function (패키지 관리 서비스의 패키지 URL)]도 지원해요. | |
| --name | 함수의 이름 | |
| --namespace | 함수의 네임스페이스 | |
| --output | 함수의 출력 토픽 (지정하지 않으면 출력이 기록되지 않아요) | |
| --output-serde-classname | 함수가 출력한 메시지에 사용할 SerDe 클래스 | |
| --parallelism | 함수의 병렬성 계수, 즉 실행할 함수 인스턴스 개수 | 1 |
| --processing-guarantees | 함수에 적용되는 처리 보장(전달 의미론). 가능한 값: [ATLEAST_ONCE, ATMOST_ONCE, EFFECTIVELY_ONCE] | ATLEAST_ONCE |
| --py | 함수의 메인 Python 파일/Python Wheel 파일 절대 경로 (Python으로 작성된 경우). URL 경로 [http/https/file (file 프로토콜은 파일이 이미 worker 호스트에 존재한다고 가정)/function (패키지 관리 서비스의 패키지 URL)]도 지원해요. | |
| --go | 함수의 메인 Go 실행 바이너리 절대 경로 (Go로 작성된 경우). URL 경로 [http/https/file (file 프로토콜은 파일이 이미 worker 호스트에 존재한다고 가정)/function (패키지 관리 서비스의 패키지 URL)]도 지원해요. | |
| --schema-type | 함수가 출력한 메시지에 사용할 내장 스키마 타입 또는 사용자 지정 스키마 클래스 이름 | |
| --sliding-interval-count | 윈도우가 슬라이딩되는 메시지 개수 | |
| --sliding-interval-duration-ms | 윈도우가 슬라이딩되는 시간(ms) | |
| --tenant | 함수의 테넌트 | |
| --topics-pattern | 패턴과 일치하는 네임스페이스 아래 토픽 목록에서 소비할 토픽 패턴. [--input]과 [--topic-pattern]은 상호 배타적이에요. --custom-serde-inputs에 패턴에 대한 SerDe 클래스 이름을 추가해 주세요 (Java 함수만 지원). | |
| --user-config | 사용자 정의 구성 키/값 | |
| --window-length-count | 윈도우 당 메시지 개수 | |
| --window-length-duration-ms | 윈도우의 시간(밀리초) | |
| --dead-letter-topic | 성공적으로 처리되지 못한 메시지가 전송되는 토픽 | |
| --fqfn | 함수의 완전한 함수 이름 (FQFN) | |
| --max-message-retries | 메시지를 포기하기 전에 처리하려는 횟수 | |
| --retain-ordering | 함수가 메시지를 순서대로 소비하고 처리해요 | |
| --retain-key-ordering | 함수가 메시지를 키 순서대로 소비하고 처리해요 | |
| --timeout-ms | 메시지 타임아웃(밀리초) | |
| --producer-config | 사용자 지정 프로듀서 구성 (JSON 문자열) | |
get
Pulsar Function에 대한 정보를 가져와요.
사용법
pulsar-admin functions get options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --fqfn | 함수의 완전한 함수 이름 (FQFN) | |
| --name | 함수의 이름 | |
| --namespace | 함수의 네임스페이스 | |
| --tenant | 함수의 테넌트 | |
restart
함수 인스턴스를 재시작해요.
사용법
pulsar-admin functions restart options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --fqfn | 함수의 완전한 함수 이름 (FQFN) | |
| --instance-id | 함수의 instanceId (instance-id를 제공하지 않으면 모든 인스턴스를 재시작) | |
| --name | 함수의 이름 | |
| --namespace | 함수의 네임스페이스 | |
| --tenant | 함수의 테넌트 | |
stop
함수 인스턴스를 중지해요.
사용법
pulsar-admin functions stop options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --fqfn | 함수의 완전한 함수 이름 (FQFN) | |
| --instance-id | 함수의 instanceId (instance-id를 제공하지 않으면 모든 인스턴스를 중지) | |
| --name | 함수의 이름 | |
| --namespace | 함수의 네임스페이스 | |
| --tenant | 함수의 테넌트 | |
start
중지된 함수 인스턴스를 시작해요.
사용법
pulsar-admin functions start options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --fqfn | 함수의 완전한 함수 이름 (FQFN) | |
| --instance-id | 함수의 instanceId (instance-id를 제공하지 않으면 모든 인스턴스를 시작) | |
| --name | 함수의 이름 | |
| --namespace | 함수의 네임스페이스 | |
| --tenant | 함수의 테넌트 | |
status
Pulsar Function의 현재 상태를 확인해요.
사용법
pulsar-admin functions status options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --fqfn | 함수의 완전한 함수 이름 (FQFN) | |
| --instance-id | 함수의 instanceId (instance-id를 제공하지 않으면 모든 인스턴스의 상태를 가져와요) | |
| --name | 함수의 이름 | |
| --namespace | 함수의 네임스페이스 | |
| --tenant | 함수의 테넌트 | |
stats
Pulsar Function의 현재 통계를 가져와요.
사용법
pulsar-admin functions stats options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --fqfn | 함수의 완전한 함수 이름 (FQFN) | |
| --instance-id | 함수의 instanceId (instance-id를 제공하지 않으면 모든 인스턴스의 통계를 가져와요) | |
| --name | 함수의 이름 | |
| --namespace | 함수의 네임스페이스 | |
| --tenant | 함수의 테넌트 | |
list
특정 테넌트와 네임스페이스 아래에서 실행 중인 모든 Pulsar Function을 나열해요.
사용법
pulsar-admin functions list options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --namespace | 함수의 네임스페이스 | |
| --tenant | 함수의 테넌트 | |
querystate
클러스터 모드에서 실행 중인 Pulsar Function과 연관된 현재 상태를 가져와요.
사용법
pulsar-admin functions querystate options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --fqfn | 함수의 완전한 함수 이름 (FQFN) | |
| -k, --key | 가져오려는 상태의 키 | |
| --name | 함수의 이름 | |
| --namespace | 함수의 네임스페이스 | |
| --tenant | 함수의 테넌트 | |
| -w, --watch | Pulsar Function의 키에 연결된 값 변경을 감시해요 | false |
putstate
Pulsar Function과 연관된 상태에 키/값 쌍을 넣어요.
사용법
pulsar-admin functions putstate options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --fqfn | Pulsar Function의 완전한 함수 이름 (FQFN) | |
| --name | Pulsar Function의 이름 | |
| --namespace | Pulsar Function의 네임스페이스 | |
| --tenant | Pulsar Function의 테넌트 | |
| -s, --state | 넣어야 할 FunctionState | |
trigger
지정한 Pulsar Function을 주어진 값으로 트리거해요.
사용법
pulsar-admin functions trigger options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --fqfn | 함수의 완전한 함수 이름 (FQFN) | |
| --name | 함수의 이름 | |
| --namespace | 함수의 네임스페이스 | |
| --tenant | 함수의 테넌트 | |
| --topic | 함수가 소비하는, 데이터를 주입하려는 특정 토픽 이름 | |
| --trigger-file | 함수를 트리거할 데이터가 담긴 파일 경로 | |
| --trigger-value | 함수를 트리거할 값 | |
functions-worker
function-worker 통계를 수집하는 작업이에요.
pulsar-admin functions-worker subcommand
하위 명령어 (Subcommands)
function-statsget-clusterget-cluster-leaderget-function-assignmentsmonitoring-metrics
function-stats
이 브로커에서 실행 중인 모든 함수의 통계를 덤프해요.
사용법
pulsar-admin functions-worker function-stats
get-cluster
이 클러스터에 속한 모든 worker를 가져와요.
사용법
pulsar-admin functions-worker get-cluster
get-cluster-leader
worker 클러스터의 리더를 가져와요.
사용법
pulsar-admin functions-worker get-cluster-leader
get-function-assignments
worker 클러스터 전반에 걸친 함수의 할당(assignments)을 가져와요.
사용법
pulsar-admin functions-worker get-function-assignments
monitoring-metrics
모니터링을 위한 메트릭을 덤프해요.
사용법
pulsar-admin functions-worker monitoring-metrics
namespaces
네임스페이스 관리 작업이에요.
pulsar-admin namespaces subcommand
하위 명령어 (Subcommands)
listtopicspoliciescreatedeleteset-deduplicationset-auto-topic-creationremove-auto-topic-creationset-auto-subscription-creationremove-auto-subscription-creationpermissionsgrant-permissionrevoke-permissiongrant-subscription-permissionrevoke-subscription-permissionset-clustersget-clustersget-backlog-quotasset-backlog-quotaremove-backlog-quotaget-persistenceset-persistenceget-message-ttlset-message-ttlremove-message-ttlget-anti-affinity-groupset-anti-affinity-groupget-anti-affinity-namespacesdelete-anti-affinity-groupget-retentionset-retentionunloadsplit-bundleset-dispatch-rateget-dispatch-rateset-replicator-dispatch-rateget-replicator-dispatch-rateset-subscribe-rateget-subscribe-rateset-subscription-dispatch-rateget-subscription-dispatch-rateclear-backlogunsubscribeset-encryption-requiredset-delayed-deliveryget-delayed-deliveryset-subscription-auth-modeget-max-producers-per-topicset-max-producers-per-topicget-max-consumers-per-topicset-max-consumers-per-topicget-max-consumers-per-subscriptionset-max-consumers-per-subscriptionget-max-unacked-messages-per-subscriptionset-max-unacked-messages-per-subscriptionget-max-unacked-messages-per-consumerset-max-unacked-messages-per-consumerget-compaction-thresholdset-compaction-thresholdget-offload-thresholdset-offload-thresholdget-offload-deletion-lagset-offload-deletion-lagclear-offload-deletion-lagget-schema-autoupdate-strategyset-schema-autoupdate-strategyset-offload-policiesget-offload-policiesset-max-subscriptions-per-topicget-max-subscriptions-per-topicremove-max-subscriptions-per-topic
list
테넌트의 네임스페이스를 가져와요.
사용법
pulsar-admin namespaces list tenant-name
topics
네임스페이스의 토픽 목록을 가져와요.
사용법
pulsar-admin namespaces topics tenant/namespace
policies
네임스페이스의 구성 정책(policies)을 가져와요.
사용법
pulsar-admin namespaces policies tenant/namespace
create
새 네임스페이스를 만들어요.
사용법
pulsar-admin namespaces create tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -b, --bundles | 활성화할 번들(bundles) 개수 | 0 |
| -c, --clusters | 이 네임스페이스에 할당할 클러스터 목록 | |
delete
네임스페이스를 삭제해요. 네임스페이스는 비어 있어야 해요.
사용법
pulsar-admin namespaces delete tenant/namespace
set-deduplication
네임스페이스에서 메시지 중복 제거(deduplication)를 활성화하거나 비활성화해요.
사용법
pulsar-admin namespaces set-deduplication tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --enable, -e | 지정한 네임스페이스에서 메시지 중복 제거를 활성화해요 | false |
| --disable, -d | 지정한 네임스페이스에서 메시지 중복 제거를 비활성화해요 | false |
set-auto-topic-creation
브로커 설정을 재정의(override)하면서 네임스페이스에 대해 autoTopicCreation을 활성화하거나 비활성화해요.
사용법
pulsar-admin namespaces set-auto-topic-creation tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --enable, -e | 네임스페이스에서 allowAutoTopicCreation을 활성화해요 | false |
| --disable, -d | 네임스페이스에서 allowAutoTopicCreation을 비활성화해요 | false |
| --type, -t | 자동 생성할 토픽의 타입. 가능한 값: (partitioned, non-partitioned) | non-partitioned |
| --num-partitions, -n | 자동 생성할 토픽의 기본 파티션 개수 (partitioned 토픽에만 적용) | |
remove-auto-topic-creation
네임스페이스에 대한 autoTopicCreation 재정의를 제거해요.
사용법
pulsar-admin namespaces remove-auto-topic-creation tenant/namespace
set-auto-subscription-creation
브로커 설정을 재정의하면서 네임스페이스에 대해 autoSubscriptionCreation을 활성화해요.
사용법
pulsar-admin namespaces set-auto-subscription-creation tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --enable, -e | 네임스페이스에서 allowAutoSubscriptionCreation을 활성화해요 | false |
remove-auto-subscription-creation
네임스페이스에 대한 autoSubscriptionCreation 재정의를 제거해요.
사용법
pulsar-admin namespaces remove-auto-subscription-creation tenant/namespace
permissions
네임스페이스에 대한 권한을 가져와요.
사용법
pulsar-admin namespaces permissions tenant/namespace
grant-permission
네임스페이스에 권한을 부여해요.
사용법
pulsar-admin namespaces grant-permission tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --actions | 부여할 작업 (produce 또는 consume) | |
| --role | 권한을 부여할 클라이언트 역할 | |
revoke-permission
네임스페이스에서 권한을 회수해요.
사용법
pulsar-admin namespaces revoke-permission tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --role | 권한을 회수할 클라이언트 역할 | |
grant-subscription-permission
구독 admin-api에 접근할 권한을 부여해요.
사용법
pulsar-admin namespaces grant-subscription-permission tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --roles | 권한을 부여할 클라이언트 역할 (쉼표로 구분된 역할들) | |
| --subscription | 역할에 권한을 부여할 구독 이름 | |
revoke-subscription-permission
구독 admin-api에 접근할 권한을 회수해요.
사용법
pulsar-admin namespaces revoke-subscription-permission tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --role | 권한을 회수할 클라이언트 역할 | |
| --subscription | 역할에서 권한을 회수할 구독 이름 | |
set-clusters
네임스페이스의 복제 클러스터(replication clusters)를 설정해요.
사용법
pulsar-admin namespaces set-clusters tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -c, --clusters | 복제 클러스터 ID 목록 (쉼표로 구분된 값) | |
get-clusters
네임스페이스의 복제 클러스터를 가져와요.
사용법
pulsar-admin namespaces get-clusters tenant/namespace
get-backlog-quotas
네임스페이스의 백로그 할당량(backlog quota) 정책을 가져와요.
사용법
pulsar-admin namespaces get-backlog-quotas tenant/namespace
set-backlog-quota
네임스페이스에 백로그 할당량 정책을 설정해요.
사용법
pulsar-admin namespaces set-backlog-quota tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -t, --type | 백로그 할당량 타입. 유효한 옵션: destination_storage와 message_age. | destination_storage |
| -l, --limit | 백로그 할당량 타입이 destination_storage이면 이 매개변수로 백로그 크기 제한을 설정할 수 있어요 (예: 10MB 또는 16GB). 크기 제한을 비활성화하려면 0 이하의 값을 사용해요. | |
| -lt, --limitTime | 백로그 할당량 타입이 message_age이면 이 매개변수로 시간 제한을 초 단위로 설정할 수 있어요 (또는 분, 시, 일, 주 단위, 예: 100m, 3h, 2d, 5w). 시간 제한을 비활성화하려면 0 이하의 값을 사용해요. | |
| -p, --policy | 제한에 도달했을 때 적용할 보존 정책. 유효한 옵션: producer_request_hold, producer_exception, consumer_backlog_eviction. | |
시간 제한과 크기 제한을 모두 설정하려면 각각 따로 설정해야 해요.
예시 (Example)
pulsar-admin namespaces set-backlog-quota my-tenant/my-ns \ --type destination_storage \ --limit 2G \ --policy producer_request_hold
pulsar-admin namespaces set-backlog-quota my-tenant/my-ns \ --limitTime 3600 \ --policy producer_request_hold \ --type message_age
remove-backlog-quota
네임스페이스에서 백로그 할당량 정책을 제거해요.
| 플래그 | 설명 | 기본값 |
| -t, --type | 제거할 백로그 할당량 타입. 유효한 옵션: destination_storage, message_age | destination_storage |
사용법
pulsar-admin namespaces remove-backlog-quota tenant/namespace
get-persistence
네임스페이스의 영속성(persistence) 정책을 가져와요.
사용법
pulsar-admin namespaces get-persistence tenant/namespace
set-persistence
네임스페이스의 영속성 정책을 설정해요.
사용법
pulsar-admin namespaces set-persistence tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -a, --bookkeeper-ack-quorum | 각 엔트리에 대해 기다릴 ack(보장된 복사본) 개수 | 2 |
| -e, --bookkeeper-ensemble | 토픽에 사용할 bookie 개수 | 2 |
| -w, --bookkeeper-write-quorum | 각 엔트리를 몇 번 쓸지 | 2 |
| -r, --ml-mark-delete-max-rate | mark-delete 작업의 제한 속도 (0은 제한 없음) | 0 |
get-message-ttl
네임스페이스의 메시지 TTL을 가져와요.
사용법
pulsar-admin namespaces get-message-ttl tenant/namespace
set-message-ttl
네임스페이스의 메시지 TTL을 설정해요.
사용법
pulsar-admin namespaces set-message-ttl tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -ttl, --messageTTL | 메시지 TTL(초 단위, 또는 분, 시, 일, 주 단위 예: 100m, 3h, 2d, 5w). 값이 0이면 TTL이 비활성화돼요. TTL은 기본적으로 비활성화돼 있어요. | 0 |
remove-message-ttl
네임스페이스의 메시지 TTL을 제거해요.
사용법
pulsar-admin namespaces remove-message-ttl tenant/namespace
get-anti-affinity-group
네임스페이스의 안티-어피니티 그룹(anti-affinity group) 이름을 가져와요.
사용법
pulsar-admin namespaces get-anti-affinity-group tenant/namespace
set-anti-affinity-group
네임스페이스의 안티-어피니티 그룹 이름을 설정해요.
사용법
pulsar-admin namespaces set-anti-affinity-group tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -g, --group | 안티-어피니티 그룹 이름 | |
get-anti-affinity-namespaces
주어진 안티-어피니티 그룹 이름으로 묶인 안티-어피니티 네임스페이스를 가져와요.
사용법
pulsar-admin namespaces get-anti-affinity-namespaces options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -c, --cluster | 클러스터 이름 | |
| -g, --group | 안티-어피니티 그룹 이름 | |
| -p, --tenant | 테넌트는 인가(authorization)에만 사용돼요. 이 api에 접근하려면 클라이언트가 테넌트 중 하나의 admin이어야 해요 | |
delete-anti-affinity-group
네임스페이스의 안티-어피니티 그룹 이름을 제거해요.
사용법
pulsar-admin namespaces delete-anti-affinity-group tenant/namespace
get-retention
지정한 네임스페이스 안의 각 토픽에 적용되는 보존(retention) 정책을 가져와요.
사용법
pulsar-admin namespaces get-retention tenant/namespace
set-retention
지정한 네임스페이스 안의 각 토픽에 대한 보존 정책을 설정해요.
사용법
pulsar-admin namespaces set-retention tenant/namespace
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -s, --size | 네임스페이스의 각 토픽에 대한 보존 크기 제한 (예: 10M, 16G 또는 3T). 0은 보존 없음, -1은 무한 크기 보존 | |
| -t, --time | 선택적 시간 단위 접미사가 있는 보존 시간. 예: 100m, 3h, 2d, 5w. 시간 단위를 지정하지 않으면 기본 단위는 초예요. 예: -t 120은 보존을 2분으로 설정해요. 0은 보존 없음, -1은 무한 시간 보존 | |
unload
현재 서빙 브로커에서 네임스페이스 또는 네임스페이스 번들을 언로드해요.
사용법
pulsar-admin namespaces unload tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -b, --bundle | {start-boundary}_{end-boundary} (예: 0x00000000_0xffffffff) | |
split-bundle
현재 서빙 브로커에서 네임스페이스-번들을 분할해요.
사용법
pulsar-admin namespaces split-bundle tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -b, --bundle | {start-boundary}_{end-boundary} (예: 0x00000000_0xffffffff) | |
| -u, --unload | 이전 번들을 분할한 후 새로 분할된 번들을 언로드해요 | false |
set-dispatch-rate
네임스페이스의 모든 토픽에 대한 메시지 전달 속도(message-dispatch-rate)를 설정해요.
사용법
pulsar-admin namespaces set-dispatch-rate tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -bd, --byte-dispatch-rate | 바이트 전달 속도 (전달하지 않으면 기본 -1이 덮어써져요) | -1 |
| -dt, --dispatch-rate-period | 전달 속도 기간(초 단위) (전달하지 않으면 기본 1초가 덮어써져요) | 1 |
| -md, --msg-dispatch-rate | 메시지 전달 속도 (전달하지 않으면 기본 -1이 덮어써져요) | -1 |
get-dispatch-rate
네임스페이스의 모든 토픽에 대한 설정된 메시지 전달 속도를 가져와요 (값이 < 0이면 비활성화).
사용법
pulsar-admin namespaces get-dispatch-rate tenant/namespace
set-replicator-dispatch-rate
네임스페이스의 모든 토픽에 대한 복제기(replicator) 메시지 전달 속도를 설정해요.
사용법
pulsar-admin namespaces set-replicator-dispatch-rate tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -bd, --byte-dispatch-rate | 바이트 전달 속도 (전달하지 않으면 기본 -1이 덮어써져요) | -1 |
| -dt, --dispatch-rate-period | 전달 속도 기간(초 단위) (전달하지 않으면 기본 1초가 덮어써져요) | 1 |
| -md, --msg-dispatch-rate | 메시지 전달 속도 (전달하지 않으면 기본 -1이 덮어써져요) | -1 |
get-replicator-dispatch-rate
네임스페이스의 모든 토픽에 대한 설정된 복제기 메시지 전달 속도를 가져와요 (값이 < 0이면 비활성화).
사용법
pulsar-admin namespaces get-replicator-dispatch-rate tenant/namespace
set-subscribe-rate
네임스페이스의 모든 토픽에 대해 컨슈머별 구독 속도(subscribe-rate)를 설정해요.
사용법
pulsar-admin namespaces set-subscribe-rate tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -sr, --subscribe-rate | 구독 속도 (전달하지 않으면 기본 -1이 덮어써져요) | -1 |
| -st, --subscribe-rate-period | 구독 속도 기간(초 단위) (전달하지 않으면 기본 30초가 덮어써져요) | 30 |
get-subscribe-rate
네임스페이스의 모든 토픽에 대해 컨슈머별 설정된 구독 속도를 가져와요.
사용법
pulsar-admin namespaces get-subscribe-rate tenant/namespace
set-subscription-dispatch-rate
네임스페이스의 모든 구독에 대한 구독 메시지 전달 속도를 설정해요.
사용법
pulsar-admin namespaces set-subscription-dispatch-rate tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -bd, --byte-dispatch-rate | 바이트 전달 속도 (전달하지 않으면 기본 -1이 덮어써져요) | -1 |
| -dt, --dispatch-rate-period | 전달 속도 기간(초 단위) (전달하지 않으면 기본 1초가 덮어써져요) | 1 |
| -md, --sub-msg-dispatch-rate | 메시지 전달 속도 (전달하지 않으면 기본 -1이 덮어써져요) | -1 |
get-subscription-dispatch-rate
네임스페이스의 모든 토픽에 대한 설정된 구독 메시지 전달 속도를 가져와요 (값이 < 0이면 비활성화).
사용법
pulsar-admin namespaces get-subscription-dispatch-rate tenant/namespace
clear-backlog
네임스페이스의 백로그를 비워요.
사용법
pulsar-admin namespaces clear-backlog tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -b, --bundle | {start-boundary}_{end-boundary} (예: 0x00000000_0xffffffff) | |
| -force, --force | 확인 없이 강제로 백로그를 비울지 여부 | false |
| -s, --sub | 구독 이름 | |
unsubscribe
네임스페이스의 모든 destination에서 주어진 구독을 구독 해지해요.
사용법
pulsar-admin namespaces unsubscribe tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -b, --bundle | {start-boundary}_{end-boundary} (예: 0x00000000_0xffffffff) | |
| -s, --sub | 구독 이름 | |
set-encryption-required
네임스페이스에 대해 필수 메시지 암호화(encryption required)를 활성화하거나 비활성화해요.
사용법
pulsar-admin namespaces set-encryption-required tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -d, --disable | 필수 메시지 암호화를 비활성화해요 | false |
| -e, --enable | 필수 메시지 암호화를 활성화해요 | false |
set-delayed-delivery
네임스페이스에 지연 전달(delayed delivery) 정책을 설정해요.
사용법
pulsar-admin namespaces set-delayed-delivery tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -d, --disable | 지연 전달 메시지를 비활성화해요 | false |
| -e, --enable | 지연 전달 메시지를 활성화해요 | false |
| -t, --time | 지연 전달 메시지를 재시도할 때의 tick 시간 | 1s |
get-delayed-delivery
네임스페이스의 지연 전달 정책을 가져와요.
사용법
pulsar-admin namespaces get-delayed-delivery-time tenant/namespace
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -t, --time | 지연 전달 메시지를 재시도할 때의 tick 시간 | 1s |
set-subscription-auth-mode
네임스페이스에 구독 인증 모드(subscription auth mode)를 설정해요.
사용법
pulsar-admin namespaces set-subscription-auth-mode tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -m, --subscription-auth-mode | Pulsar 정책에 대한 구독 인가 모드. 유효한 옵션: [None, Prefix] | |
get-max-producers-per-topic
네임스페이스의 maxProducersPerTopic을 가져와요.
사용법
pulsar-admin namespaces get-max-producers-per-topic tenant/namespace
set-max-producers-per-topic
네임스페이스의 maxProducersPerTopic을 설정해요.
사용법
pulsar-admin namespaces set-max-producers-per-topic tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -p, --max-producers-per-topic | 네임스페이스의 maxProducersPerTopic | 0 |
get-max-consumers-per-topic
네임스페이스의 maxConsumersPerTopic을 가져와요.
사용법
pulsar-admin namespaces get-max-consumers-per-topic tenant/namespace
set-max-consumers-per-topic
네임스페이스의 maxConsumersPerTopic을 설정해요.
사용법
pulsar-admin namespaces set-max-consumers-per-topic tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -c, --max-consumers-per-topic | 네임스페이스의 maxConsumersPerTopic | 0 |
get-max-consumers-per-subscription
네임스페이스의 maxConsumersPerSubscription을 가져와요.
사용법
pulsar-admin namespaces get-max-consumers-per-subscription tenant/namespace
set-max-consumers-per-subscription
네임스페이스의 maxConsumersPerSubscription을 설정해요.
사용법
pulsar-admin namespaces set-max-consumers-per-subscription tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -c, --max-consumers-per-subscription | 네임스페이스의 maxConsumersPerSubscription | 0 |
get-max-unacked-messages-per-subscription
네임스페이스의 maxUnackedMessagesPerSubscription을 가져와요.
사용법
pulsar-admin namespaces get-max-unacked-messages-per-subscription tenant/namespace
set-max-unacked-messages-per-subscription
네임스페이스의 maxUnackedMessagesPerSubscription을 설정해요.
사용법
pulsar-admin namespaces set-max-unacked-messages-per-subscription tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -c, --max-unacked-messages-per-subscription | 네임스페이스의 maxUnackedMessagesPerSubscription | -1 |
get-max-unacked-messages-per-consumer
네임스페이스의 maxUnackedMessagesPerConsumer를 가져와요.
사용법
pulsar-admin namespaces get-max-unacked-messages-per-consumer tenant/namespace
set-max-unacked-messages-per-consumer
네임스페이스의 maxUnackedMessagesPerConsumer를 설정해요.
사용법
pulsar-admin namespaces set-max-unacked-messages-per-consumer tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -c, --max-unacked-messages-per-consumer | 네임스페이스의 maxUnackedMessagesPerConsumer | -1 |
get-compaction-threshold
네임스페이스의 compactionThreshold를 가져와요.
사용법
pulsar-admin namespaces get-compaction-threshold tenant/namespace
set-compaction-threshold
네임스페이스의 compactionThreshold를 설정해요.
사용법
pulsar-admin namespaces set-compaction-threshold tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -t, --threshold | 컴팩션(compaction)이 트리거되기 전 토픽 백로그의 최대 바이트 수 (예: 10M, 16G, 3T). 0은 자동 컴팩션을 비활성화해요 | 0 |
get-offload-threshold
네임스페이스의 offloadThreshold를 가져와요.
사용법
pulsar-admin namespaces get-offload-threshold tenant/namespace
set-offload-threshold
네임스페이스의 offloadThreshold를 설정해요.
사용법
pulsar-admin namespaces set-offload-threshold tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -s, --size | 장기 저장소(longterm storage)로 자동 오프로드(offloaded)되기 전에 pulsar 클러스터에 저장되는 토픽당 최대 바이트 수 (예: 10M, 16G, 3T, 100). 음수 값은 자동 오프로드를 비활성화해요. 0은 가능한 한 빨리 오프로드를 트리거해요. | -1 |
get-offload-deletion-lag
네임스페이스의 offloadDeletionLag(분 단위)를 가져와요.
사용법
pulsar-admin namespaces get-offload-deletion-lag tenant/namespace
set-offload-deletion-lag
네임스페이스의 offloadDeletionLag를 설정해요.
사용법
pulsar-admin namespaces set-offload-deletion-lag tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -l, --lag | ledger 세그먼트를 오프로드한 후 클러스터 로컬 저장소에서 해당 세그먼트의 복사본을 삭제하기 전에 기다리는 시간 (예: 10m, 5h, 3d, 2w) | -1 |
clear-offload-deletion-lag
네임스페이스의 offloadDeletionLag를 비워요.
사용법
pulsar-admin namespaces clear-offload-deletion-lag tenant/namespace
get-schema-autoupdate-strategy
네임스페이스의 스키마 자동 업데이트 전략을 가져와요.
사용법
pulsar-admin namespaces get-schema-autoupdate-strategy tenant/namespace
set-schema-autoupdate-strategy
네임스페이스의 스키마 자동 업데이트 전략을 설정해요.
사용법
pulsar-admin namespaces set-schema-autoupdate-strategy tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -c, --compatibility | Producer를 통해 새 스키마가 생성될 때 요구되는 호환성 수준. 가능한 값 (Full, Backward, Forward, None) | Full |
| -d, --disabled | 자동 스키마 업데이트를 비활성화해요 | false |
get-publish-rate
네임스페이스의 각 토픽에 대한 메시지 발행 속도(get)를 바이트와 초당 메시지 수로 가져와요.
사용법
pulsar-admin namespaces get-publish-rate tenant/namespace
set-publish-rate
네임스페이스의 각 토픽에 대한 메시지 발행 속도를 설정해요.
사용법
pulsar-admin namespaces set-publish-rate tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -m, --msg-publish-rate | 네임스페이스의 토픽당 초당 메시지 수 임계값 (-1은 미설정, 0은 제한 없음) | -1 |
| -b, --byte-publish-rate | 네임스페이스의 토픽당 초당 바이트 수 임계값 (-1은 미설정, 0은 제한 없음) | -1 |
set-offload-policies
네임스페이스의 오프로드 정책을 설정해요.
사용법
pulsar-admin namespaces set-offload-policies tenant/namespace options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -d, --driver | 오래된 데이터를 장기 저장소로 오프로드할 때 사용할 드라이버 (가능한 값: S3, aws-s3, google-cloud-storage) | |
| -r, --region | 장기 저장소 리전 | |
| -b, --bucket | 오프로드된 ledger를 넣을 버킷 | |
| -e, --endpoint | 연결할 대체 엔드포인트 | |
| -i, --aws-id | S3 또는 aws-s3 드라이버를 사용할 때 사용할 AWS 자격 증명 Id | |
| -s, --aws-secret | S3 또는 aws-s3 드라이버를 사용할 때 사용할 AWS 자격 증명 Secret | |
| -ro, --s3-role | S3 또는 aws-s3 드라이버를 사용할 때 STSAssumeRoleSessionCredentialsProvider에 사용되는 S3 역할 | |
| -rsn, --s3-role-session-name | S3 또는 aws-s3 드라이버를 사용할 때 STSAssumeRoleSessionCredentialsProvider에 사용되는 S3 역할 세션 이름 | |
| -mbs, --maxBlockSize | 최대 블록 크기 | 64MB |
| -rbs, --readBufferSize | 읽기 버퍼 크기 | 1MB |
| -oat, --offloadAfterThreshold | 임계값 크기 이후 오프로드 (예: 1M, 5M) | |
| -oae, --offloadAfterElapsed | 경과 시간 이후 오프로드 (밀리초, 또는 분, 시, 일, 주 단위 예: 100m, 3h, 2d, 5w) | |
get-offload-policies
네임스페이스의 오프로드 정책을 가져와요.
사용법
pulsar-admin namespaces get-offload-policies tenant/namespace
set-max-subscriptions-per-topic
네임스페이스의 토픽당 최대 구독 수를 설정해요.
사용법
pulsar-admin namespaces set-max-subscriptions-per-topic tenant/namespace
get-max-subscriptions-per-topic
네임스페이스의 토픽당 최대 구독 수를 가져와요.
사용법
pulsar-admin namespaces get-max-subscriptions-per-topic tenant/namespace
remove-max-subscriptions-per-topic
네임스페이스의 토픽당 최대 구독 수 제한을 제거해요.
사용법
pulsar-admin namespaces remove-max-subscriptions-per-topic tenant/namespace
ns-isolation-policy
네임스페이스 격리 정책(namespace isolation policies) 관리 작업이에요.
사용법
pulsar-admin ns-isolation-policy subcommand
하위 명령어 (Subcommands)
setgetlistdeletebrokersbroker
set
클러스터의 네임스페이스 격리 정책을 만들거나 업데이트해요. 이 작업은 Pulsar 슈퍼유저 권한이 필요해요.
사용법
pulsar-admin ns-isolation-policy set cluster-name policy-name options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --auto-failover-policy-params | 쉼표로 구분된 name=value 자동 장애 조치 정책 매개변수 | [] |
| --auto-failover-policy-type | 자동 장애 조치 정책 타입 이름. 현재 가능한 옵션: min_available | [] |
| --namespaces | 쉼표로 구분된 네임스페이스 정규식 목록 | [] |
| --primary | 쉼표로 구분된 기본 브로커 정규식 목록 | [] |
| --secondary | 쉼표로 구분된 보조 브로커 정규식 목록 | [] |
get
클러스터의 네임스페이스 격리 정책을 가져와요. 이 작업은 Pulsar 슈퍼유저 권한이 필요해요.
사용법
pulsar-admin ns-isolation-policy get cluster-name policy-name
list
클러스터의 모든 네임스페이스 격리 정책을 나열해요. 이 작업은 Pulsar 슈퍼유저 권한이 필요해요.
사용법
pulsar-admin ns-isolation-policy list cluster-name
delete
클러스터의 네임스페이스 격리 정책을 삭제해요. 이 작업은 슈퍼유저 권한이 필요해요.
사용법
pulsar-admin ns-isolation-policy delete
brokers
네임스페이스-격리 정책이 연결된 모든 브로커를 나열해요. 이 작업은 Pulsar 슈퍼유저 권한이 필요해요.
사용법
pulsar-admin ns-isolation-policy brokers cluster-name
broker
네임스페이스-격리 정책이 연결된 브로커를 가져와요. 이 작업은 Pulsar 슈퍼유저 권한이 필요해요.
사용법
pulsar-admin ns-isolation-policy broker cluster-name options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --broker | 네임스페이스-격리 정책을 가져올 브로커 이름 | |
topics
Pulsar 토픽(영속적(persistent) 및 비영속적(non-persistent)) 관리 작업이에요.
사용법
pulsar-admin topics subcommand
Pulsar 2.7.0부터 일부 네임스페이스 수준 정책을 토픽 수준에서도 사용할 수 있어요. Pulsar에서 토픽 수준 정책을 활성화하려면 broker.conf 파일에서 다음 매개변수를 구성해야 해요.
systemTopicEnabled=truetopicLevelPoliciesEnabled=true
하위 명령어 (Subcommands)
compactcompaction-statusoffloadoffload-statuscreate-partitioned-topiccreate-missed-partitionsdelete-partitioned-topiccreateget-partitioned-topic-metadataupdate-partitioned-topiclist-partitioned-topicslistterminatepermissionsgrant-permissionrevoke-permissionlookupbundle-rangedeleteunloadcreate-subscriptionsubscriptionsunsubscribestatsstats-internalinfo-internalpartitioned-statspartitioned-stats-internalskipclear-backlogexpire-messagesexpire-messages-all-subscriptionspeek-messagesreset-cursorget-message-by-idlast-message-idget-backlog-quotasset-backlog-quotaremove-backlog-quotaget-persistenceset-persistenceremove-persistenceget-message-ttlset-message-ttlremove-message-ttlget-deduplicationset-deduplicationremove-deduplicationget-retentionset-retentionremove-retentionget-dispatch-rateset-dispatch-rateremove-dispatch-rateget-max-unacked-messages-per-subscriptionset-max-unacked-messages-per-subscriptionremove-max-unacked-messages-per-subscriptionget-max-unacked-messages-per-consumerset-max-unacked-messages-per-consumerremove-max-unacked-messages-per-consumerget-delayed-deliveryset-delayed-deliveryremove-delayed-deliveryget-max-producersset-max-producersremove-max-producersget-max-consumersset-max-consumersremove-max-consumersget-compaction-thresholdset-compaction-thresholdremove-compaction-thresholdget-offload-policiesset-offload-policiesremove-offload-policiesget-inactive-topic-policiesset-inactive-topic-policiesremove-inactive-topic-policiesset-max-subscriptionsget-max-subscriptionsremove-max-subscriptions
compact
지정한 토픽에 대해 컴팩션을 실행해요 (영속 토픽만).
사용법
pulsar-admin topics compact persistent://tenant/namespace/topic
compaction-status
토픽 컴팩션의 상태를 확인해요 (영속 토픽만).
사용법
pulsar-admin topics compaction-status persistent://tenant/namespace/topic
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -w, --wait-complete | 컴팩션이 완료될 때까지 기다려요 | false |
offload
토픽에서 데이터를 장기 저장소(예: Amazon S3)로 오프로드하는 것을 트리거해요.
사용법
pulsar-admin topics offload persistent://tenant/namespace/topic options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -s, --size-threshold | 특정 토픽에 대해 BookKeeper에 보관할 최대 데이터 양 | |
offload-status
토픽에서 장기 저장소로 데이터 오프로딩의 상태를 확인해요.
사용법
pulsar-admin topics offload-status persistent://tenant/namespace/topic op
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -w, --wait-complete | 컴팩션이 완료될 때까지 기다려요 | false |
create-partitioned-topic
파티셔닝된 토픽(partitioned topic)을 만들어요. 파티셔닝된 토픽은 프로듀서가 발행하기 전에 만들어져야 해요.
note 기본적으로 생성 후 60초가 지나면 토픽은 비활성(inactive)으로 간주되어 쓰레기 데이터 생성을 방지하기 위해 자동으로 삭제돼요. 이 기능을 비활성화하려면
brokerDeleteInactiveTopicsEnabled를false로 설정해 주세요. 비활성 토픽 확인 빈도를 변경하려면brokerDeleteInactiveTopicsFrequencySeconds를 원하는 값으로 설정해 주세요. 이 두 매개변수에 대한 자세한 내용은 여기에서 확인해 주세요.
사용법
pulsar-admin topics create-partitioned-topic {persistent|non-persistent}://tenant/namespace/topic options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -p, --partitions | 토픽의 파티션 개수 | 0 |
create-missed-partitions
파티셔닝된 토픽의 파티션을 만들려고 시도해요. 파티션 토픽의 파티션은 생성되어야 하며, 토픽 자동 생성이 비활성화되어 있을 때 파티션을 복구하는 데 사용할 수 있어요.
사용법
pulsar-admin topics create-missed-partitions persistent://tenant/namespace/topic
delete-partitioned-topic
파티셔닝된 토픽을 삭제해요. 토픽의 모든 파티션이 존재하면 그것도 함께 삭제돼요.
사용법
pulsar-admin topics delete-partitioned-topic {persistent|non-persistent}
create
비파티셔닝된 토픽(non-partitioned topic)을 만들어요. allowAutoTopicCreation 또는 createIfMissing이 비활성화되어 있으면 비파티셔닝된 토픽은 사용자가 명시적으로 만들어야 해요.
note 기본적으로 생성 후 60초가 지나면 토픽은 비활성으로 간주되어 쓰레기 데이터 생성을 방지하기 위해 자동으로 삭제돼요. 이 기능을 비활성화하려면
brokerDeleteInactiveTopicsEnabled를false로 설정해 주세요. 비활성 토픽 확인 빈도를 변경하려면brokerDeleteInactiveTopicsFrequencySeconds를 원하는 값으로 설정해 주세요. 이 두 매개변수에 대한 자세한 내용은 여기에서 확인해 주세요.
사용법
pulsar-admin topics create {persistent|non-persistent}://tenant/namespace/topic
get-partitioned-topic-metadata
파티셔닝된 토픽 메타데이터를 가져와요. 토픽이 생성되지 않았거나 비파티셔닝된 토픽이면 파티션이 0인 빈 토픽을 반환해요.
사용법
pulsar-admin topics get-partitioned-topic-metadata {persistent|non-persistent}://tenant/namespace/topic
update-partitioned-topic
기존 파티셔닝된 토픽을 업데이트해요. 새 파티션 개수는 기존 파티션 개수보다 커야 해요.
사용법
pulsar-admin topics update-partitioned-topic {persistent|non-persistent}://tenant/namespace/topic options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -p, --partitions | 토픽의 파티션 개수 | 0 |
list-partitioned-topics
네임스페이스 아래의 파티셔닝된 토픽 목록을 가져와요.
사용법
pulsar-admin topics list-partitioned-topics tenant/namespace
list
네임스페이스 아래의 토픽 목록을 가져와요.
사용법
pulsar-admin topics list tenant/cluster/namespace
terminate
영속 토픽을 종료해요 (토픽에 더 이상 메시지가 발행되지 않도록 해요).
사용법
pulsar-admin topics terminate persistent://tenant/namespace/topic
partitioned-terminate
영속 토픽을 종료해요 (토픽에 더 이상 메시지가 발행되지 않도록 해요).
사용법
pulsar-admin topics partitioned-terminate persistent://tenant/namespace/topic
permissions
토픽에 대한 권한을 가져와요. destination에 대한 유효한 권한(effective permissions)을 검색해요. 이 권한은 네임스페이스 수준에서 설정된 권한과 토픽에 설정된 특정 권한의 합집합(union)으로 정의돼요.
사용법
pulsar-admin topics permissions topic
grant-permission
단일 토픽의 클라이언트 역할에 새 권한을 부여해요.
사용법
pulsar-admin topics grant-permission {persistent|non-persistent}://tenant/namespace/topic options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --actions | 부여할 작업 (produce 또는 consume) | |
| --role | 권한을 부여할 클라이언트 역할 | |
revoke-permission
단일 토픽의 클라이언트 역할에서 권한을 회수해요. 권한이 토픽 수준이 아니라 네임스페이스 수준에서 설정된 경우 이 작업은 오류(HTTP 상태 코드 412)를 반환해요.
사용법
pulsar-admin topics revoke-permission topic
lookup
현재 서빙 브로커에서 토픽을 조회해요.
사용법
pulsar-admin topics lookup topic
bundle-range
주어진 토픽을 포함하는 네임스페이스 번들을 가져와요.
사용법
pulsar-admin topics bundle-range topic
delete
토픽을 삭제해요. 토픽에 연결된 활성 구독이나 프로듀서가 있으면 토픽을 삭제할 수 없어요.
사용법
pulsar-admin topics delete topic
unload
토픽을 언로드해요.
사용법
pulsar-admin topics unload topic
create-subscription
토픽에 새 구독을 만들어요.
사용법
pulsar-admin topics create-subscription [options] persistent://tenant/namespace/topic
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -m, --messageId | 구독을 만들 위치의 messageId. 'latest', 'earliest' 또는 (ledgerId :entryId ) 중 하나가 될 수 있어요 | latest |
| -s, --subscription | 위치를 재설정할 구독 | |
subscriptions
토픽의 구독 목록을 가져와요.
사용법
pulsar-admin topics subscriptions topic
unsubscribe
토픽에서 내구성 있는 구독자(durable subscriber)를 삭제해요.
사용법
pulsar-admin topics unsubscribe topic options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -s, --subscription | 삭제할 구독 | |
| -f, --force | 모든 컨슈머를 끊고 닫은 후 구독을 강제로 삭제해요 | false |
stats
토픽과 연결된 프로듀서 및 컨슈머의 통계를 가져와요. 모든 속도는 1분 윈도우에 대해 계산되며 마지막으로 완료된 1분 기간을 기준으로 해요.
사용법
pulsar-admin topics stats topic
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -etb,--get-earliest-time-in-backlog | true로 설정하면 백로그에서 가장 이른 시간을 가져와요 | false |
| -gpb,--get-precise-backlog | true로 설정하면 정확한 백로그를 가져와요 | false |
| -sbs, --get-subscription-backlog-size | true로 설정하면 각 구독의 백로그 크기를 가져와요 (잠금 필요) | false |
note
storageSize와averageMsgSize의 단위는 Byte예요.
stats-internal
토픽의 내부 통계를 가져와요.
사용법
pulsar-admin topics stats-internal topic
info-internal
토픽의 내부 메타데이터 정보를 가져와요.
사용법
pulsar-admin topics info-internal topic
partitioned-stats
파티셔닝된 토픽과 연결된 프로듀서 및 컨슈머의 통계를 가져와요. 모든 속도는 1분 윈도우에 대해 계산되며 마지막으로 완료된 1분 기간을 기준으로 해요.
사용법
pulsar-admin topics partitioned-stats topic options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -gpb,--get-precise-backlog | true로 설정하면 정확한 백로그를 가져와요 | false |
| -sbs, --get-subscription-backlog-size | true로 설정하면 각 구독의 백로그 크기를 가져와요 (잠금 필요) | false |
| --per-partition | 파티션별 통계를 가져와요 | false |
partitioned-stats-internal
파티셔닝된 토픽과 연결된 프로듀서 및 컨슈머의 내부 통계를 가져와요. 모든 속도는 1분 윈도우에 대해 계산되며 마지막으로 완료된 1분 기간을 기준으로 해요.
사용법
pulsar-admin topics partitioned-stats-internal topic
skip
구독에 대해 일부 메시지를 건너뛰어요.
사용법
pulsar-admin topics skip topic options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -n, --count | 건너뛸 메시지 개수 | 0 |
| -s, --subscription | 메시지를 건너뛸 구독 | |
clear-backlog
구독에 대해 백로그를 비워요 (모든 메시지 건너뛰기).
사용법
pulsar-admin topics clear-backlog topic options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -s, --subscription | 비울 구독 | |
expire-messages
구독에 대해 주어진 만료 시간(초)보다 오래된 메시지를 만료시켜요.
사용법
pulsar-admin topics expire-messages topic options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -t, --expireTime | 초 단위(또는 분, 시, 일, 주 단위 예: 100m, 3h, 2d, 5w)보다 오래된 메시지를 만료시켜요 | 0 |
| -s, --subscription | 메시지를 건너뛸 구독 | |
expire-messages-all-subscriptions
모든 구독에 대해 주어진 만료 시간(초)보다 오래된 메시지를 만료시켜요.
사용법
pulsar-admin topics expire-messages-all-subscriptions topic options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -t, --expireTime | 초 단위(또는 분, 시, 일, 주 단위 예: 100m, 3h, 2d, 5w)보다 오래된 메시지를 만료시켜요 | 0 |
peek-messages
구독에 대해 일부 메시지를 들여다봐요(peek).
사용법
pulsar-admin topics peek-messages topic options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -n, --count | 메시지 개수 | 0 |
| -s, --subscription | 메시지를 가져올 구독 | |
reset-cursor
타임스탬프 또는 messageId에 가장 가까운 위치로 구독 위치를 재설정해요.
사용법
pulsar-admin topics reset-cursor topic options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -s, --subscription | 위치를 재설정할 구독 | |
| -t, --time | 되돌아갈 시간(분 단위, 또는 분, 시, 일, 주 단위 등). 예: 100m, 3h, 2d, 5w | |
| -m, --messageId | 되돌아갈 메시지 ID (ledgerId:entryId 또는 earliest 또는 latest) | |
get-message-by-id
ledger id와 entry id로 메시지를 가져와요.
사용법
pulsar-admin topics get-message-by-id topic options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -l, --ledgerId | ledger id | 0 |
| -e, --entryId | entry id | 0 |
last-message-id
토픽의 마지막 커밋 메시지 ID를 가져와요.
사용법
pulsar-admin topics last-message-id persistent://tenant/namespace/topic
get-backlog-quotas
토픽의 백로그 할당량 정책을 가져와요.
사용법
pulsar-admin topics get-backlog-quotas tenant/namespace/topic
set-backlog-quota
토픽에 백로그 할당량 정책을 설정해요.
| 플래그 | 설명 | 기본값 |
| -l, --limit | 백로그 크기 제한 (예: 10M 또는 16G) | |
| -lt, --limitTime | 시간 제한(초 단위, 또는 분, 시, 일, 주 단위 예: 100m, 3h, 2d, 5w). 시간 제한을 비활성화하려면 0 이하의 값을 사용해요 (예: 1시간은 3600) | |
| -p, --policy | 제한에 도달했을 때 적용할 보존 정책. 유효한 옵션: producer_request_hold, producer_exception 또는 consumer_backlog_eviction | |
| -t, --type | 설정할 백로그 할당량 타입. 유효한 옵션: destination_storage, message_age | destination_storage |
사용법
pulsar-admin topics set-backlog-quota tenant/namespace/topic options
예시 (Example)
pulsar-admin namespaces set-backlog-quota my-tenant/my-ns/my-topic \--limit 2G \--policy producer_request_hold
pulsar-admin namespaces set-backlog-quota my-tenant/my-ns/my-topic \--limitTime 3600 \--policy producer_request_hold \--type message_age
remove-backlog-quota
토픽에서 백로그 할당량 정책을 제거해요.
| 플래그 | 설명 | 기본값 |
| -t, --type | 제거할 백로그 할당량 타입. 유효한 옵션: destination_storage, message_age | destination_storage |
사용법
pulsar-admin topics remove-backlog-quota tenant/namespace/topic
get-persistence
토픽의 영속성 정책을 가져와요.
사용법
pulsar-admin topics get-persistence tenant/namespace/topic
set-persistence
토픽의 영속성 정책을 설정해요.
사용법
pulsar-admin topics set-persistence tenant/namespace/topic options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -e, --bookkeeper-ensemble | 토픽에 사용할 bookie 개수 | 2 |
| -w, --bookkeeper-write-quorum | 각 엔트리를 몇 번 쓸지 | 2 |
| -a, --bookkeeper-ack-quorum | 각 엔트리에 대해 기다릴 ack(보장된 복사본) 개수 | 2 |
| -r, --ml-mark-delete-max-rate | mark-delete 작업의 제한 속도 (0은 제한 없음) | 0 |
remove-persistence
토픽의 영속성 정책을 제거해요.
사용법
pulsar-admin topics remove-persistence tenant/namespace/topic
get-message-ttl
토픽의 메시지 TTL을 가져와요.
사용법
pulsar-admin topics get-message-ttl tenant/namespace/topic
set-message-ttl
토픽의 메시지 TTL을 설정해요.
사용법
pulsar-admin topics set-message-ttl tenant/namespace/topic options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -t, --ttl | 토픽의 메시지 TTL(초 단위, 또는 분, 시, 일, 주 단위 예: 100m, 3h, 2d, 5w). 허용 범위는 1부터 Integer.MAX_VALUE까지 | 0 |
remove-message-ttl
토픽의 메시지 TTL을 제거해요.
사용법
pulsar-admin topics remove-message-ttl tenant/namespace/topic
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --enable, -e | 지정한 토픽에서 메시지 중복 제거를 활성화해요 | false |
| --disable, -d | 지정한 토픽에서 메시지 중복 제거를 비활성화해요 | false |
get-deduplication
토픽의 중복 제거 정책을 가져와요.
사용법
pulsar-admin topics get-deduplication tenant/namespace/topic
set-deduplication
토픽의 중복 제거 정책을 설정해요.
사용법
pulsar-admin topics set-deduplication tenant/namespace/topic options
remove-deduplication
토픽의 중복 제거 정책을 제거해요.
사용법
pulsar-admin topics remove-deduplication tenant/namespace/topic
tenants
테넌트 관리 작업이에요.
사용법
pulsar-admin tenants subcommand
하위 명령어 (Subcommands)
listgetcreateupdatedelete
list
기존 테넌트를 나열해요.
사용법
pulsar-admin tenants list
get
테넌트의 구성을 가져와요.
사용법
pulsar-admin tenants get tenant-name
create
새 테넌트를 만들어요.
사용법
pulsar-admin tenants create tenant-name options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -r, --admin-roles | 쉼표로 구분된 admin 역할 | |
| -c, --allowed-clusters | 쉼표로 구분된 허용 클러스터 | |
update
테넌트를 업데이트해요.
사용법
pulsar-admin tenants update tenant-name options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -r, --admin-roles | 쉼표로 구분된 admin 역할 | |
| -c, --allowed-clusters | 쉼표로 구분된 허용 클러스터 | |
delete
기존 테넌트를 삭제해요.
사용법
pulsar-admin tenants delete tenant-name
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -f, --force | 아래의 모든 네임스페이스를 삭제해 테넌트를 강제로 삭제해요 | false |
resource-quotas
리소스 할당량(resource quotas) 관리 작업이에요.
사용법
pulsar-admin resource-quotas subcommand
하위 명령어 (Subcommands)
getsetreset-namespace-bundle-quota
get
지정한 네임스페이스 번들의 리소스 할당량을 가져와요. 네임스페이스/번들을 지정하지 않으면 기본 할당량을 가져와요.
사용법
pulsar-admin resource-quotas get options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -b, --bundle | {start-boundary}_{end_boundary} 형태의 번들. -n/--namespace와 함께 지정해야 해요. | |
| -n, --namespace | 네임스페이스 | |
set
지정한 네임스페이스 번들의 리소스 할당량을 설정해요. 네임스페이스/번들을 지정하지 않으면 기본 할당량을 설정해요.
사용법
pulsar-admin resource-quotas set options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -bi, --bandwidthIn | 예상 인바운드 대역폭 (바이트/초) | 0 |
| -bo, --bandwidthOut | 예상 아웃바운드 대역폭 (바이트/초)0 | |
| -b, --bundle | {start-boundary}_{end_boundary} 형태의 번들. -n/--namespace와 함께 지정해야 해요. | |
| -d, --dynamic | 동적으로 재계산할 수 있게 허용할지 여부 | false |
| -mem, --memory | 예상 메모리 사용량 (메가바이트 단위) | 0 |
| -mi, --msgRateIn | 예상 초당 수신 메시지 수 | 0 |
| -mo, --msgRateOut | 예상 초당 발신 메시지 수 | 0 |
| -n, --namespace | tenant/namespace 형태의 네임스페이스 (예: my-tenant/my-ns). -b/--bundle과 함께 지정해야 해요. | |
reset-namespace-bundle-quota
지정한 네임스페이스 번들의 리소스 할당량을 기본값으로 재설정해요.
사용법
pulsar-admin resource-quotas reset-namespace-bundle-quota options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -b, --bundle | {start-boundary}_{end_boundary} 형태의 번들. -n/--namespace와 함께 지정해야 해요. | |
| -n, --namespace | 네임스페이스 | |
schemas
Pulsar 토픽과 연관된 스키마 관련 작업이에요.
사용법
pulsar-admin schemas subcommand
하위 명령어 (Subcommands)
uploaddeletegetextract
upload
토픽에 대한 스키마 정의를 업로드해요.
사용법
pulsar-admin schemas upload persistent://tenant/namespace/topic options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --filename | 스키마 정의 파일의 경로. 예시 스키마 파일은 conf 디렉터리에서 사용할 수 있어요. | |
delete
토픽과 연관된 스키마 정의를 삭제해요.
사용법
pulsar-admin schemas delete persistent://tenant/namespace/topic
get
토픽과 연관된 스키마 정의를 검색해요 (버전을 제공하면 주어진 버전에서).
사용법
pulsar-admin schemas get persistent://tenant/namespace/topic options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| --version | 토픽에 대해 검색할 스키마 정의의 버전 | |
extract
JAR 파일에 포함된 Java 클래스 이름을 통해 토픽의 스키마 정의를 제공해요.
사용법
pulsar-admin schemas extract persistent://tenant/namespace/topic options
옵션 (Options)
| 플래그 | 설명 | 기본값 |
| -c, --classname | Java 클래스 이름 | |
| -j, --jar | 위 Java 클래스를 포함하는 JAR 파일의 절대 경로 | |
| -t, --type | 스키마의 타입 (avro 또는 json) | |
더 알아보기 (Learn more)
- Pulsar admin API에서 관리 작업을 프로그래밍 방식(HTTP)으로 수행하는 방법을 살펴볼게요.
- Admin CLI에서 다른 Pulsar CLI 도구(pulsar, pulsar-client, pulsar-perf 등)를 확인해 보세요.
pulsar-admin의 인기 있는 하위 명령어(broker-stats,topics,namespaces,schemas)의 최신 상세 문서는 Pulsar admin 레퍼런스에서 확인할 수 있어요.- 토픽 수준 정책(
systemTopicEnabled,topicLevelPoliciesEnabled)과 관련된 구성은 reference-configuration을 참고해요. - CLI 도구에 대한 자세한 설명은 pulsar-client 및 pulsar-perf 사용법 문서를 함께 보면 좋아요.