Visual Studio Code PostgreSQL 확장을 사용하면 편집기를 종료하지 않고도 새 PostgreSQL 서버를 만들 수 있습니다. 개발 및 테스트를 위해 로컬 Docker 컨테이너를 스핀업하거나, 프로덕션 워크로드에 대해 완전히 관리되는 Azure Database for PostgreSQL 유연한 서버를 프로비전하거나, 대규모 시나리오를 위한 Azure HorizonDB(미리 보기) 클러스터를 만들 수 있습니다.
필수 조건
- 확장이 설치된 Visual Studio Code.
-
로컬 Docker 서버의 경우:Docker Desktop 이 설치되고 Docker 디먼이 실행 중입니다. 터미널에서 실행
docker info하여 확인합니다. - Azure 서버의 경우: 활성 구독이 있는 Azure 계정입니다. 계정이 없으면 무료 계정을 만듭니다.
- Azure HorizonDB(미리 보기) 클러스터의 경우: 활성 구독 및 Azure HorizonDB(미리 보기)에 대한 액세스 권한이 있는 Azure 계정입니다.
새 서버 허브 만들기 열기
PostgreSQL 작업 표시줄 컨테이너에서 연결 트리를 찾습니다.
연결 트리 맨 위에 있는 새 서버 만들기 단추를 선택하거나 명령 팔레트에서 실행
pgsql.createNewServer합니다.연결 트리에서 서버 그룹을 마우스 오른쪽 단추로 클릭하고 새 서버 만들기를 선택할 수도 있습니다.
새 PostgreSQL 서버 허브 만들기가 새 편집기 탭에서 열립니다. 다음 세 가지 옵션을 제공합니다.
| Option | Description |
|---|---|
| 로컬 Docker PostgreSQL 서버 만들기 | 로컬 Docker 컨테이너에 PostgreSQL 서버를 만듭니다. 개발, 테스트 및 학습에 이상적입니다. |
| Azure Database for PostgreSQL 유연한 서버 인스턴스 만들기 | Azure 완전히 관리되는 PostgreSQL 서버를 프로비전합니다. 프로덕션 워크로드 및 팀 환경에 적합합니다. |
| Azure HorizonDB 인스턴스 만들기(미리 보기) | Azure 클라우드 네이티브의 확장성이 뛰어난 PostgreSQL 클러스터를 프로비전합니다. |
시나리오와 일치하는 카드를 선택합니다.
Docker를 사용하여 로컬 서버 만들기
Docker 컨테이너는 컴퓨터에서 실행되는 경량의 격리된 PostgreSQL 인스턴스를 제공합니다. 로컬 개발, 프로토타입 생성 또는 삭제 가능한 데이터베이스 환경이 필요한 경우 이 옵션을 사용합니다.
1단계: 소개 검토
로컬 Docker PostgreSQL 서버 만들기 카드를 선택하면 확장 프로그램에 VS Code에서 바로 Docker의 Seamless PostgreSQL 서버를 사용하세요!라는 제목의 랜딩 페이지가 표시됩니다. 페이지에서 주요 기능을 강조 표시합니다.
- One-Click 서버 만들기: 수동 설정 없이 몇 초 만에 PostgreSQL 서버를 실행합니다.
- 완전 자동화된 설치: 확장은 격리된 환경에서 PostgreSQL을 끌어오고 구성하고 실행합니다.
- 간단한 관리: 언제든지 PostgreSQL 컨테이너를 시작, 중지 또는 제거합니다.
시작을 선택하여 계속합니다.
2단계: 사전 요구 사항 검사 통과
확장은 Docker가 설치되고 실행 중인지 확인합니다. 필수 구성 요소 검사 화면에는 각 검사의 상태가 표시됩니다.
-
Docker가 설치되어 있는지 확인: Docker CLI를 사용할 수 있는지 확인합니다
PATH. - Docker가 백그라운드에서 실행 중인지 확인: Docker 디먼이 활성 상태인지 확인합니다.
확인이 실패하면 화면 링크에 따라 Docker를 설치하거나 시작한 다음 이 페이지로 돌아갑니다. 확장은 검사를 자동으로 다시 실행합니다.
3단계: 연결 구성
필수 구성 요소가 통과되면 연결 설정 양식이 나타납니다. 다음 필드를 입력합니다.
| 설정 | 필수 | Description |
|---|---|---|
| 연결 이름 | No | 연결 프로필의 사용자 친화적인 표시 이름입니다. 기본 컨테이너 이름(공백이 밑줄로 대체됨)으로도 사용됩니다. |
| 컨테이너 이름 | Yes | Docker 컨테이너의 이름입니다. 허용되는 문자: a-zA-Z0-9_.-. |
| 사용자 이름 | Yes | PostgreSQL 인스턴스의 슈퍼 사용자 이름입니다. 기본값은 postgres입니다. |
| 암호 | Yes | 슈퍼 사용자 계정의 암호입니다. |
| 암호 저장 | No | 이 옵션을 선택하면 각 연결에 암호를 입력할 필요가 없도록 암호를 저장합니다. |
| 데이터베이스 이름 | No | 초기 데이터베이스의 이름입니다. 기본값은 postgres입니다. |
고급 옵션을 선택하여 추가 설정을 확장합니다.
| 설정 | Description |
|---|---|
| 바인딩된 포트 | 컨테이너의 PostgreSQL 포트(컨테이너 포트 5432)에 매핑된 호스트 포트 비워 두면 확장은 범위 54500-55000에서 사용 가능한 포트를 자동으로 할당합니다. 유효한 범위: 1-65535. |
| 이미지 버전 | 가져올 Docker 이미지 태그입니다. 기본값은 latest입니다. |
| 이미지 레지스트리 | 컨테이너 레지스트리 URL(예: myregistry.azurecr.io). 기본값은 Docker Hub. |
| 이미지 이름 | Docker 이미지 이름입니다. 기본값은 postgres입니다. |
| 이미지 플랫폼 | 다중 아키텍처 환경용 플랫폼 대상(예: linux/amd64). |
4단계: 만들기 및 연결
만들기를 선택하여 프로비저닝을 시작합니다. 확장 프로그램:
-
postgresDocker 이미지를 가져옵니다(아직 캐시되지 않은 경우). - 지정된 설정을 사용하여 컨테이너를 만들고 시작합니다.
- PostgreSQL이 준비될 때까지 기다립니다(사용
pg_isready). - 연결 프로필을 만들고 자동으로 연결합니다.
컨테이너가 초기화되는 동안 로컬 Docker 서버 만들기 라는 제목의 진행률 표시기가 나타납니다. 컨테이너가 준비되면 서버가 연결 트리에 나타나고 즉시 쿼리를 시작할 수 있습니다.
Tip
Visual Studio Code를 다시 시작해도 Docker 컨테이너는 유지됩니다. 확장 외부의 컨테이너를 중지, 시작, 제거 또는 검사하려면 Docker CLI 또는 Docker Desktop을 사용합니다.
Azure Database for PostgreSQL 유연한 서버 만들기
Azure Database for PostgreSQL 유연한 서버는 고가용성, 자동화된 백업 및 지능형 성능 튜닝을 제공하는 완전 관리형 데이터베이스 서비스입니다. 이 확장은 Visual Studio Code에서 직접 새 서버를 프로비전할 수 있도록 여러 단계로 구성된 마법사를 통해 안내합니다.
1단계: 소개 검토
Azure Database for PostgreSQL 유연한 서버 인스턴스 만들기 카드를 선택하면 방문 페이지에서 서비스 기능을 설명합니다.
- 원활한 Azure 통합: Entra ID 인증 지원을 사용하여 Visual Studio Code 서버를 직접 프로비전합니다.
- 유연한 컴퓨팅 및 스토리지: 미리 구성된 컴퓨팅 계층 및 스토리지 옵션 중에서 선택합니다.
- 간소화된 서버 관리: 편집기를 종료하지 않고 수명 주기, 성능 및 구성을 관리합니다.
- 개발자용으로 빌드: Azure 인프라를 처리하는 동안 애플리케이션에 집중합니다.
시작을 선택하여 계속합니다. 필요에 따라 나중에 이 페이지를 건너뛰려면 이 페이지를 다시 표시하지 않음 을 선택합니다.
2단계: Azure 로그인
확장은 "Azure Database for PostgreSQL 유연한 서버 인스턴스를 만들기 위해 Entra ID 사용하여 Azure 계정에 로그인"이라는 메시지와 함께 로그인 페이지를 엽니다.
- Visual Studio Code 로그인한 Azure 계정이 이미 있는 경우 확장에서 해당 자격 증명을 자동으로 사용합니다.
- Azure 계정 또는 테넌트가 여러 개 있는 경우 계정 전환기 및 테넌트 선택기를 사용하여 올바른 ID를 선택합니다.
3단계: 서버 설정 구성
인증 후 확장은 섹션으로 구성된 구성 양식을 표시합니다. 오른쪽의 비용 추정 패널은 선택할 때마다 업데이트됩니다.
프로젝트 세부 정보
| 설정 | Description |
|---|---|
| Subscription | 청구 및 액세스를 관리하는 Azure 구독을 선택합니다. 로그인한 계정 및 테넌트에 대한 모든 구독이 나열됩니다. |
| 리소스 그룹 | 기존 리소스 그룹을 선택하거나 새로 만들기 를 선택하여 새로 만듭니다. 새 리소스 그룹은 서버와 동일한 지역에 배포됩니다. |
기본 사항
| 설정 | Description |
|---|---|
| 서버 이름 | 서버의 전역적으로 고유한 이름입니다. 확장은 가용성을 비동기적으로 확인하고 이름을 사용하는 경우 오류를 표시합니다. 서버 이름은 연결 호스트 이름(<server-name>.postgres.database.azure.com)의 일부가 됩니다. |
| 지역 | 서버가 배포되는 Azure 지역입니다. 확장은 구독이 선택한 지역에서 프로비전할 수 있음을 확인합니다. |
| 컴퓨팅 + 스토리지 | 미리 구성된 컴퓨팅 및 스토리지 계층을 선택합니다. 사용 가능한 번들은 다음과 같습니다. |
| Bundle | vCores | Storage | SKU |
|---|---|---|---|
| 개발/테스트 (기본값) | 2 | 128GB | Standard_D2ds_v4 |
| 표준 | 4 | 256GB | Standard_D4ds_v4 |
| 성능 | 8 | 512GB | Standard_D8ds_v4 |
Tip
양식의 맨 아래에 있는 Azure Portal 만들기 단추를 사용하여 컴퓨팅 및 스토리지를 추가로 사용자 지정할 수 있으므로 전체 Azure portal 만들기 환경이 열립니다.
| 설정 | Description |
|---|---|
| PostgreSQL 버전 | 배포할 주요 PostgreSQL 버전입니다. 사용 가능한 버전: 18, 17, 16, 15 및 14. 기본값은 18입니다. 사용 가능한 버전은 지역에 따라 다를 수 있습니다. |
인증
양식에 ADMINISTRATOR ACCESS 섹션이 표시됩니다. 하나 이상의 인증 방법을 사용하도록 설정해야 합니다.
| 설정 | Description |
|---|---|
| 내 Entra ID 사용: <전자 메일> | 로그인한 Entra ID ID를 서버 관리자로 프로비전하는 확인란입니다. 전자 메일은 Azure 로그인에서 자동으로 채워집니다. |
| PostgreSQL 사용자 및 암호 만들기 | 기존 PostgreSQL 인증을 사용하도록 설정하는 확인란입니다. 이 옵션을 선택하면 세 개의 추가 필드가 나타납니다. |
PostgreSQL 사용자 및 암호 만들기를 선택하는 경우 다음을 제공합니다.
| 설정 | Description |
|---|---|
| 관리자 사용자 이름 | PostgreSQL 관리자 계정의 로그인 이름입니다(예: pgadmin). 문자로 시작하고 문자, 숫자 및 밑줄만 포함해야 합니다.
pg_로 시작하는 이름이나 admin, root, guest와 같은 예약된 이름은 사용할 수 없습니다. |
| 관리자 암호 | 관리자 계정의 암호입니다. 8~128자여야 하며 대문자, 소문자, 숫자 및 기호 중 세 개 이상을 포함해야 합니다. |
| 관리자 암호 확인 | 관리자 암호를 다시 입력합니다. |
메모
두 인증 방법을 동시에 사용하도록 설정할 수 있습니다. 예를 들어 팀 구성원에 대한 Entra ID 애플리케이션 연결 문자열에 대한 PostgreSQL 인증을 사용합니다.
비용 예측
양식의 오른쪽에 있는 예상 비용 패널은 월별 가격 책정을 세분화합니다.
- 컴퓨팅: 선택한 SKU 및 vCore 수에 따라 다릅니다.
- 스토리지: 선택한 스토리지 계층을 기반으로 합니다.
- 백업: 백업 비용이 포함되었습니다.
- 대역폭: 지역 간 아웃바운드 데이터 전송에는 추가 요금이 발생합니다. 인바운드 전송은 무료입니다.
패널에는 예상 합계와 자세한 가격 책정을 위한 Azure 가격 계산기에 대한 링크가 표시됩니다.
4단계: 약관에 동의하고 배포
양식의 아래쪽에서 다음을 수행합니다.
- 이 서버를 만들면 요금이 부과될 수 있음을 확인하는 확인란을 선택합니다.
- 연결된 사용 약관 및 개인 정보 취급 방침을 검토합니다.
- 만들기를 선택하여 프로비저닝을 시작합니다.
확장은 배포의 각 단계를 추적하는 진행률 페이지로 이동합니다.
| 단계 | 상태 값 |
|---|---|
| 서버 프로비저닝 | 보류 중, 진행 중, 완료됨, 실패 |
| 방화벽 규칙 할당 | 보류 중, 진행 중, 완료됨, 건너뛰기 |
| Entra 관리자 역할 할당 | 보류 중, 진행 중, 완료됨, 건너뛰기 |
배포 요약에는 선택한 서버 이름, 구독, 리소스 그룹, 지역 및 구성 이 표시됩니다.
배포하는 동안 Visual Studio Code 작업을 계속할 수 있습니다. 진행률 페이지를 닫으면 배포도 백그라운드에서 실행됩니다.
모든 단계가 완료되면 헤더가 서버에 성공적으로 업데이트되고 "PostgreSQL 유연한 서버가 준비되었습니다."라는 메시지가 표시됩니다. 확장은 새 서버에 대한 연결 프로필을 자동으로 만듭니다. 완료를 선택하여 진행률 페이지를 닫습니다.
메모
단계가 경고와 함께 완료되면 상태가 경고와 함께 완료됨으로 표시됩니다. 연결하기 전에 세부 정보를 검토합니다.
Azure 배포 추적
PostgreSQL 작업 표시줄의 Azure 배포 보기에는 진행 중인 모든 배포와 완료된 Azure 서버 배포가 표시됩니다. 각 항목에는 서버 이름, 배포 상태 및 타임스탬프가 표시됩니다.
배포를 마우스 오른쪽 버튼으로 클릭하여 다음 작업을 수행할 수 있습니다.
| 조치 | Description |
|---|---|
| Azure Portal 열기 | Azure 포털에서 서버의 리소스 페이지를 엽니다. |
| 배포 제거 | 추적기에서 배포 항목을 제거합니다. 이 작업은 Azure 리소스를 삭제하지 않습니다. |
보기 도구 모음에서 완료된 제거 단추를 사용하여 목록에서 완료된 모든 배포를 지웁니다.
Tip
Azure 배포가 실패하면 진행률 페이지에서 다시 시도를 선택하여 프로비저닝을 다시 시작하거나 폼으로 돌아가기를 선택하여 설정을 조정합니다.
Azure HorizonDB(미리 보기) 클러스터 만들기
Azure HorizonDB(미리 보기)는 Azure 클라우드 네이티브의 확장성이 뛰어난 PostgreSQL 클러스터입니다. 확장은 새 클러스터를 프로비전하는 다단계 마법사를 안내합니다.
메모
Azure HorizonDB(미리 보기) 가용성은 Azure 구독 및 지역에 따라 달라집니다.
1단계: 소개 검토
Azure HorizonDB 인스턴스 카드 만들기를 선택하면 방문 페이지에서 서비스 기능을 설명합니다.
- Cloud-Native 아키텍처: 높은 처리량에 최적화된 클라우드 네이티브 PostgreSQL 클러스터입니다.
- 탄력적 크기 조정: 컴퓨팅을 2개에서 128개 vCore로 조정합니다.
- 기본 제공 관리: Visual Studio Code 수명 주기 및 구성을 관리합니다.
- 개발자 준비: Azure 인프라를 처리하는 동안 애플리케이션에 집중합니다.
시작을 선택하여 계속합니다. 필요에 따라 나중에 이 페이지를 건너뛰려면 이 페이지를 다시 표시하지 않음 을 선택합니다.
2단계: Azure 로그인
확장에서 로그인 페이지를 엽니다. Visual Studio Code 로그인한 Azure 계정이 이미 있는 경우 확장에서 해당 자격 증명을 자동으로 사용합니다. Azure 계정 또는 테넌트가 여러 개 있는 경우 계정 전환기 및 테넌트 선택기를 사용하여 올바른 ID를 선택합니다.
3단계: 클러스터 설정 구성
인증 후 확장은 섹션으로 구성된 구성 양식을 표시합니다.
프로젝트 세부 정보
| 설정 | Description |
|---|---|
| Subscription | 청구 및 액세스를 관리하는 Azure 구독을 선택합니다. |
| 리소스 그룹 | 기존 리소스 그룹을 선택하거나 새로 만들기 를 선택하여 새로 만듭니다. |
클러스터 세부 정보
| 설정 | Description |
|---|---|
| 클러스터 이름 | 클러스터의 전역적으로 고유한 이름입니다. 확장 프로그램은 사용 가능 여부를 확인하고 해당 이름이 이미 사용 중인 경우 오류를 표시합니다. |
| 지역 | 클러스터가 배포되는 Azure 지역입니다. |
| PostgreSQL 버전 | 배포할 주요 PostgreSQL 버전입니다. |
컴퓨팅 구성
vCores 슬라이더를 사용하여 클러스터의 컴퓨팅 용량을 선택합니다. 사용 가능한 옵션 범위는 2~128 vCore입니다. 메모리 크기는 vCore당 8GiB로 자동으로 조정됩니다.
인증
| 설정 | Description |
|---|---|
| 관리자 사용자 이름 | PostgreSQL 관리자 계정의 로그인 이름입니다. |
| 관리자 암호 | 관리자 계정의 암호입니다. |
| 관리자 암호 확인 | 관리자 암호를 다시 입력합니다. |
AI 기능
AI 기능 섹션에서는 기본 제공 AI 모델 관리 기능을 사용하도록 설정할 수 있습니다. 옵트인할 AI 기능 사용 확인란을 선택합니다. AI 기능을 사용하도록 설정하면 클러스터는 모델 관리 지원, pgvector 및 pg_diskann 확장과 함께 프로비저닝됩니다.
메모
AI 기능 섹션은 미리 보기 환경이며 모든 환경 또는 클러스터 구성에 대해 표시되지 않을 수 있습니다. 섹션이 표시되지 않으면 표준 Azure HorizonDB(미리 보기) 클러스터 설정 및 배포 단계를 계속 진행합니다.
4단계: 약관에 동의하고 배포
양식의 아래쪽에서 다음을 수행합니다.
- 클러스터 추가 용어 확인란을 선택합니다.
- AI 기능을 사용하도록 설정하고 AI 추가 용어 확인란이 표시되는 경우 선택합니다.
- 연결된 사용 약관 및 개인 정보 취급 방침을 검토합니다.
- 만들기를 선택하여 프로비저닝을 시작합니다. 양식이 불완전한 경우 비활성화된 만들기 단추 위로 마우스를 가져가서 값이 필요한 필드를 확인합니다.
확장은 배포의 각 단계를 추적하는 진행률 페이지로 이동합니다. 배포 요약에는 선택한 클러스터 이름, 구독, 리소스 그룹 및 구성 (vCore 및 메모리)이 표시됩니다.
모든 단계가 완료되면 확장은 새 클러스터에 대한 연결 프로필을 만듭니다. 완료를 선택하여 진행률 페이지를 닫습니다.
메모
AI 기능을 사용하도록 설정하고 AI 모델 관리 단계가 실패하는 경우 클러스터가 계속 만들어지고 연결 프로필이 추가됩니다. 진행률 페이지에는 AI 모델 관리를 수동으로 사용하도록 설정할 수 있도록 Azure 포털에서 클러스터를 여는 경고 및 링크가 표시됩니다.
Tip
확장 마법사에서 제공하는 것 이상의 옵션이 필요한 경우 양식 아래쪽의 Azure Portal 구성을 선택합니다.
서버 확인
서버를 만든 후(Docker 또는 Azure):
- 연결 트리에서 서버 노드 를 확장합니다 .
- 기본 데이터베이스(
postgres및 Docker의 경우 지정한 모든 데이터베이스)가 나열되는지 확인합니다. - 데이터베이스를 마우스 오른쪽 단추로 클릭하고 새 쿼리 를 선택하여 쿼리 편집기를 엽니다.
- 연결 확인과 같은
SELECT version();테스트 쿼리를 실행합니다.