Skip to main content
ClickHouse Managed Postgres 서비스는 ClickHouse Terraform 프로바이더clickhouse_postgres_service 리소스를 사용해 생성하고 관리할 수 있습니다. 이 페이지에서는 이 리소스와 관련 데이터 소스를 위한 프로바이더 설정 및 구성 예시를 설명합니다.
이 리소스는 알파 단계이므로 향후 프로바이더 버전에서 동작이 변경될 수 있습니다. 일반 프로바이더 빌드에 포함되어 있습니다. 이 페이지는 자격 증명 관리 방식이 변경된 프로바이더 버전 v3.21.0 이상을 문서화합니다. 이전 버전은 다르게 동작하며, 2026-07-31 기준으로 더 이상 올바르게 작동하지 않습니다. 자세한 내용은 provider releases를 참조하십시오.
2026-07-31 이전에 프로바이더 v3.21.0으로 업그레이드하세요2026-07-31부터 Managed Postgres API는 응답에서 더 이상 슈퍼유저 password와 connection string을 반환하지 않습니다. 자격 증명은 서비스를 생성하거나 password를 재설정할 때만 반환됩니다. 프로바이더 버전 v3.21.0 이상은 이 변경 전후에 동일하게 동작합니다. 이전 프로바이더 버전은 API가 자격 증명을 다시 반환하는 동작에 의존합니다. 2026-07-31 기준으로 이러한 버전은 더 이상 connection_string을 채우지 않으며, 구성에 password를 지정하지 않고 서비스를 생성하면 생성 자체는 성공하더라도 생성된 password는 어디에도 저장되지 않습니다.2026-07-31 이전에 업그레이드하십시오. Terraform state는 v3.21.0에서 첫 번째 계획 또는 적용 시 자동으로 마이그레이션됩니다. 서비스 중 서버가 생성한 password에 의존하는 항목이 있다면(구성에 password가 없는 경우), v3.21.0에서는 표준 서비스에 password 또는 password_wo가 필요하므로 먼저 terraform state pull로 해당 값을 복구한 뒤 구성에 선언하십시오.

프로바이더 설정

Terraform 구성에 ClickHouse 프로바이더를 추가하세요:
프로바이더에서 사용할 API Key를 만드는 방법은 API Key 관리를 참조하십시오.

리소스 개요

clickhouse_postgres_service 리소스에는 다음 인수가 있습니다: 다음 속성은 읽기 전용이며 생성 후 ClickHouse Cloud가 값을 채웁니다: id, state, created_at, is_primary, hostname, port, 그리고 username. connection_string 속성은 없습니다(v3.21.0에서 제거됨). 연결 URI는 hostname, port, username, 그리고 선언한 비밀번호를 사용해 직접 구성하십시오. 예: postgres://${username}:${password}@${hostname}:${port}/postgres?sslmode=require.
The password는 Terraform state에 평문으로 저장됩니다. 따라서 state 파일을 적절히 보호하십시오. 예를 들어 저장 시 암호화가 적용된 원격 백엔드를 사용하거나, password_wo를 사용해 비밀번호가 state에 전혀 저장되지 않도록 하십시오.

서비스 생성

표준 서비스는 password 또는 password_wo를 선언해야 합니다. 이 값은 최소 12자여야 하며, 소문자 1개 이상, 대문자 1개 이상, 숫자 1개 이상을 포함해야 합니다. password_wo(password_wo_version과 함께 사용)는 동일한 password 규칙을 적용하지만 state에는 저장되지 않으며, 교체하려면 password_wo_version을 변경하세요. API는 자격 증명을 반환하지 않으므로 password는 Terraform만 유일하게 쓰도록 유지해야 합니다. Terraform 외부에서 password를 교체하면(console 또는 API) 이 변경은 감지되지 않으며, 다음 Terraform 기반 교체 시 선언된 값이 다시 적용됩니다.

고가용성

ha_type 인수는 대기 레플리카 수를 제어합니다: ha_type는 생성 후에도 변경할 수 있으며, 변경하면 HA 전환이 시작됩니다. 자세한 내용은 고가용성을 참조하십시오.

읽기 레플리카

스트리밍 읽기 레플리카를 생성하려면 read_replica_of를 기본 서비스의 id로 설정합니다. 레플리카는 프라이머리의 cloud_provider, region, postgres_version, 그리고 슈퍼유저를 상속하므로, 이 항목들(password 포함)은 생략합니다:
자세한 내용은 읽기 레플리카를 참조하십시오.

특정 시점 복원

다른 서비스의 백업을 특정 시점으로 복원하여 서비스를 생성하려면 restore_to_point_in_time을 설정합니다. cloud_provider, region, postgres_version은 원본 서비스에서 상속되므로 지정하지 마십시오. sizeha_type도 생략해야 합니다:
이 전체 블록은 생성 시에만 설정할 수 있습니다. source_id 또는 restore_target을 변경하거나 이 블록을 제거하면 service가 삭제된 뒤 다시 생성됩니다. 자세한 내용은 백업 및 복원을 참조하십시오.

데이터 소스

기존 서비스를 조회할 수 있는 보조 데이터 소스 3개가 제공됩니다:

기존 서비스 가져오기

기존 Managed Postgres 서비스는 서비스 ID를 사용해 Terraform state로 가져올 수 있습니다:
가져오는 과정에서 비밀번호는 복원되지 않습니다(API가 이를 반환하지 않기 때문입니다). 가져온 후 처음 apply를 실행하면 서비스는 구성에 선언된 password 또는 password_wo로 교체됩니다.

지원되지 않는 작업

다음 항목은 리소스 스키마에서 의도적으로 제외되어 있습니다:
  • 운영 명령(restart, promote, switchover)
  • IP 허용 목록, 프라이빗 엔드포인트, 백업 구성, 유지 관리 기간, 고객 관리형 암호화 키 및 BYOC
  • 구성 가능한 수명 주기 timeout — timeouts {} 블록은 제공되지 않습니다.
마지막 수정일 2026년 7월 24일