테넌트 관리
테넌트 관리 (Managing Tenants)
테넌트(tenant)는 네임스페이스처럼 admin API로 관리할 수 있어요. 현재 테넌트에서 구성할 수 있는 두 가지 측면은 관리 역할(admin roles)과 허용 클러스터(allowed clusters)예요. 이 페이지에서는 테넌트의 나열·생성·구성 조회·삭제·업데이트를 pulsar-admin CLI, REST API, Java admin API로 정리했어요.
출처: 문서
본문
tip
이 페이지는 자주 사용하는 일부 작업만 보여줘요.
- Pulsar admin 명령, 플래그, 설명 등 최신·전체 정보는 Pulsar admin docs를 참고해요.
- REST API 파라미터, 응답, 샘플 등 최신·전체 정보는 REST API doc을 참고해요.
- Java admin API 클래스, 메서드, 설명 등 최신·전체 정보는 Java admin API doc을 참고해요.
테넌트는 네임스페이스처럼 admin API로 관리할 수 있어요. 현재 테넌트에서 구성할 수 있는 두 가지 측면은 다음과 같아요.
- Admin roles(관리 역할)
- Allowed clusters(허용 클러스터)
테넌트 리소스 (Tenant resources)
나열 (List)
인스턴스와 연관된 모든 테넌트를 나열할 수 있어요.
pulsar-admin · REST API · Java
list 하위 명령을 사용해요.
pulsar-admin tenants list
출력:
my-tenant-1
my-tenant-2
REST API: GET /admin/v2/tenants
Java
admin.tenants().getTenants();
생성 (Create)
새 테넌트를 만들 수 있어요.
pulsar-admin · REST API · Java
create 하위 명령을 사용해요.
pulsar-admin tenants create my-tenant
테넌트를 생성할 때 선택적으로 -r/--admin-roles 플래그로 관리 역할을, -c/--allowed-clusters 플래그로 클러스터를 지정할 수 있어요. 여러 값을 쉼표로 구분해 지정할 수 있어요. 예시는 다음과 같아요.
pulsar-admin tenants create my-tenant \
--admin-roles role1,role2,role3 \
--allowed-clusters cluster1
pulsar-admin tenants create my-tenant \
-r role1 \
-c cluster1
REST API: PUT /admin/v2/tenants/{tenant}
Java
admin.tenants().createTenant(tenantName, tenantInfo);
구성 가져오기 (Get configuration)
기존 테넌트의 구성을 언제든 가져올 수 있어요.
pulsar-admin · REST API · Java
get 하위 명령에 테넌트 이름을 지정해요. 예시는 다음과 같아요.
pulsar-admin tenants get my-tenant
{
"adminRoles": [
"admin1",
"admin2"
],
"allowedClusters": [
"cl1",
"cl2"
]
}
REST API: GET /admin/v2/tenants/{tenant}
Java
admin.tenants().getTenantInfo(tenantName);
삭제 (Delete)
Pulsar 인스턴스에서 테넌트를 삭제할 수 있어요.
pulsar-admin · REST API · Java
delete 하위 명령에 테넌트 이름을 지정해요.
pulsar-admin tenants delete my-tenant
REST API: DELETE /admin/v2/tenants/{tenant}
Java
admin.Tenants().deleteTenant(tenantName);
업데이트 (Update)
테넌트의 구성을 업데이트할 수 있어요.
pulsar-admin · REST API · Java
update 하위 명령을 사용해요.
pulsar-admin tenants update my-tenant \
--admin-roles role1,role2 \
--allowed-clusters cluster1,cluster2
REST API: POST /admin/v2/tenants/{tenant}
Java
admin.tenants().updateTenant(tenantName, tenantInfo);
더 알아보기 (Learn more)
- 테넌트 관련 전체 명령은 pulsar-admin의 tenants 명령 참고서를 확인해요.
- REST API 엔드포인트 상세는
/admin/v2/tenants문서를 참고해요. - Java admin API의 tenants 메서드는
PulsarAdmin객체 문서에서 볼 수 있어요. - 테넌트의 개념과 역할이 궁금하다면 테넌트 개념 문서를 참고해요.