[database] PG Back Web
Updated:
개요
- GitHub
- 사용자 친화적인 웹 인터페이스로 손쉽게 PostgreSQL을 백업하는 툴
- 데이터의 보안과 가용성을 보장
특징
- 모든 사람을 위해 설계
- 개별 개발자에서 팀까지
- 시간 절약
- 백업 자동화
- 플러그 앤 플레이
기능
- 직관적인 웹 인터페이스
- 데이터베이스 전문 지식이 필요 없이 백업을 쉽게 관리
- 예약된 백업
- 설정만 하면 PG Back Web이 나머지를 처리
- 백업 모니터링
- 실행 로그로 백업 상태를 시각화
- 즉시 다운로드 및 복원
- 필요할 때 웹 인터페이스에서 바로 백업을 복원하고 다운로드
- 여러 버전 지원
- PostgreSQL 13, 14, 15, 16, 17
- 로컬 및 S3 스토리지
- 백업을 로컬에 저장하거나 더 큰 유연성을 위해 원하는 만큼 많은 S3 버킷을 추가
- 상태 검사
- 데이터베이스와 대상의 상태를 자동으로 검사
- 웹훅
- 백업이 완료되거나 실패하거나 상태 검사가 실패하거나 다른 이벤트가 발생하면 알림
- 보안 우선
- PGP 암호화로 민감한 정보를 보호합니다.
- 오픈소스 신뢰
- MIT 라이선스에 따른 오픈소스 코드로 강력한 pg_dump 도구 지원
- 다크 모드
Configuration
- PBW_ENCRYPTION_KEY
- 암호화 키
- 강력한 암호화 키를 생성하여 안전한 곳에 보관
- PG Back Web에서 민감한 데이터를 암호화하는 데 사용
- PBW_POSTGRES_CONN_STRING
- PG Back Web 데이터를 저장할 PostgreSQL 데이터베이스의 연결 문자열
- PBW_LISTEN_HOST(선택 사항)
- 서버가 수신할 호스트
- 기본값은 0.0.0.0
- PBW_LISTEN_PORT(선택 사항)
- 서버가 수신할 포트
- 기본값은 8085
- TZ
- 시간대
- 기본값은 UTC
- 웹 인터페이스의 로깅, 백업 파일 이름 및 기본 시간대에 영향
설치
- Kubernetes
-
--- apiVersion: v1 kind: ConfigMap metadata: name: pgbackweb namespace: pgbackweb labels: app: pgbackweb data: PBW_ENCRYPTION_KEY: my_secret_key TZ: Seoul/Asia PBW_POSTGRES_CONN_STRING: postgresql://postgres:postgres@postgresql.postgresql:5432/pgbackweb?sslmode=disable --- apiVersion: apps/v1 kind: Deployment metadata: name: pgbackweb namespace: pgbackweb labels: app: pgbackweb spec: replicas: 1 selector: matchLabels: app: pgbackweb template: metadata: labels: app: pgbackweb spec: containers: - name: pgbackweb image: eduardolat/pgbackweb:0.4.2 imagePullPolicy: Always ports: - containerPort: 8085 env: - name: PBW_ENCRYPTION_KEY valueFrom: configMapKeyRef: key: PBW_ENCRYPTION_KEY name: pgbackweb - name: PBW_POSTGRES_CONN_STRING valueFrom: configMapKeyRef: key: PBW_POSTGRES_CONN_STRING name: pgbackweb - name: TZ valueFrom: configMapKeyRef: key: TZ name: pgbackweb --- apiVersion: v1 kind: Service metadata: name: pgbackweb namespace: pgbackweb labels: app: pgbackweb spec: type: NodePort selector: app: pgbackweb ports: - name: pgbackweb protocol: TCP port: 8085 targetPort: 8085 nodePort: 30808
-