전체 글

    Jenkins 원격으로 빌드 유발하기 - curl/python

    배치를 수동으로 돌려야 하는 상황이 있을 수 있다. 예를 들면, DBMS에 새 버전이 나왔을 때 바로 배치를 돌려서 데이터를 추가해야 될 수도 있기 때문! 웹에 [수동 배치] 같은 버튼을 만들어 놓고 누르면 젠킨스에서 배치가 돌게 하고 싶은 경우 젠킨스에서 제공하는 원격으로 빌드 유발 기능을 사용하면 된다. 그러면 젠킨스에 설정해 놓은 재시도 횟수, 두레이 메신저 알림 기능, 로그 확인 기능을 모두 사용할 수 있기 때문이다. 아래 방법을 따라서 원격으로 빌드를 유발해보자! 1. 토큰 발급 Dashboard > 사람 admin이란 이름으로 사용자를 등록했기 때문에 admin 클릭! 설정으로 들어가서 API Token 발급 다시 들어가면 값이 사라져 있으니 잘 복사해두자! 2. Job 설정 원격으로 빌드 유..

    Docker로 CentOS 컨테이너 띄우기

    1. Ubuntu 인스턴스에 CentOS 도커 컨테이너 설치 설치 환경 NHN Cloud Ubuntu 20.04 LTS Docker 23.0.1 CentOS 7.9 Workflow 설치하려는 패키지가 이미 설치되어 있는지 체크 후 다운로드 Docker 공식 GPG 키 추가 Docker 레포지토리 등록 apt-get 업데이트 Docker 설치 그룹에 사용자 추가 CentOS 7 컨테이너 실행 설치 스크립트 #!/usr/bin/env bash # curl 이미 설치되어 있는지 체크 if ! command -v curl &> /dev/null then sudo apt-get update sudo apt-get install -y curl fi # apt-transport-https 이미 설치되어 있는지 체크 ..

    Vagrant로 CentOS 가상환경 띄우기 - 로컬(mac)/인스턴스(ubuntu)

    1. 로컬 PC에서 Vagrant로 CentOS 가상환경 띄우기 설치 환경 Macbook Pro Intel (2019) CentOS 7.9 설치 스크립트 #!/usr/bin/env bash directory="$HOME/workspace/VM/centos7" ssh_key_file="$HOME/.ssh/id_rsa" # Check if Homebrew is installed if ! [ -x "$(command -v brew)" ]; then echo '>> Homebrew is not installed.' >&2 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" fi # Check ..

    PostgreSQL 설치 자동화 스크립트 (1) - Yum 방식

    1. CentOS에 PostgreSQL 설치 설치 환경 NHN Cloud 인스턴스 또는 Docker 컨테이너 CentOS 7.9 Workflow 스크립트 실행시 설치하고자 하는 버전이 입력되었는지 확인 설치하고자 하는 PC의 OS, 아키텍처가 적합한지 확인 CentOS 7인지 확인 PostgreSQL이 이미 설치된 경우 제거 필요한 패키지 설치 및 yum 레포지토리 업데이트 PostgreSQL 설치 초기화 및 유저 비밀번호 설정 외부 접속을 위한 pg_hba.conf와 postgresql.conf 수정 및 재시작 PostgreSQL 실행 설치 스크립트 #!/usr/bin/env bash # 설치하고자 하는 버전 version=$1 major_version=${version%%.*} # 15.2 -> 15..

    Ubuntu에 Jenkins 설치하기 (23.3.28 서명키 업데이트)

    설치 환경 NHN Cloud Ubuntu 20.04 LTS Jenkins 2.397 ⚠️ 주의 ! 2023년 3월 28일부터 Linux 설치 패키지에 대한 새로운 레포지토리 서명 키를 사용합니다. Jenkins 2.397 설치하기 전에 새 서명 키로 설치해야 합니다! 구글링 했을 때 나오는 정보들은 예전 거여서 무조건 에러가 발생하니까 당황하지 말고 공식 문서를 참고합시다..! 참고 공식 문서 : https://www.jenkins.io/blog/2023/03/27/repository-signing-keys-changing/ Jenkins 2.397 and 2.387.2: New Linux Repository Signing Keys Update Red Hat compatible operating syst..

    Ubuntu에 Jenkins Docker 컨테이너 구축하기

    설치 환경 NHN Cloud Ubuntu 20.04 Docker 23.0.1 Jenkins 공식 이미지 Workflow Ubuntu 인스턴스에 Docker 설치 Jenkins 컨테이너 설치 NHN Cloud 보안그룹에 8080 수신 포트 추가 public IP:8080 으로 Jenkins 접속 Jenkins 설정 관리자 패스워드 등록 플러그인 설치 유저 설정 Jenkins 접속 URL 설정 Jenkins 웹 접속 1. Ubuntu 인스턴스에 Docker 설치 아래 글을 참고하세요! [🚦 인프라/🐳 Docker] - Ubuntu에 Docker 설치하기 Ubuntu에 Docker 설치하기 설치 환경 NHN Cloud Ubuntu 20.04 Docker 23.0.1 Ubuntu 인스턴스에 Docker 설치 🐳..

    Ubuntu에 Docker 설치하기

    설치 환경 NHN Cloud Ubuntu 20.04 Docker 23.0.1 Ubuntu 인스턴스에 Docker 설치 🐳 Docker Docs 참고 1. apt package index 업데이트 및 apt가 HTTPS를 통해 저장소를 사용할 수 있도록 패키지를 설치합니다. sudo apt-get update sudo apt-get install ca-certificates curl gnupg lsb-release 2. Docker GPG키 추가 sudo mkdir -p /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg 3. 저장소..

    스위치란? L4와 L7 스위치 비교

    스위치 (Switch) 네트워크를 연결하는 일을 하는 목적을 가진 기기 자신과 연결된 모든 기기에서 들어오는 패킷을 수신하고, 패킷을 적당한 기기로 보내는 일을 합니다. OSI 7 계층에서 어느 계층까지 다루는지를 기준으로 스위치의 카테고리를 나눕니다. L4 스위치 OSI 4계층 IP + Port Port 구분이 가능하므로 프로토콜(HTTP, FTP)마다 다른 서버로 보내는 것이 가능 실제 IP들을 하나의 가상IP(Virtual IP, VIP)로 묶어서 처리할 수 있음 VIP를 통해 요청받은 작업을 여러개의 서버로 분산 VIP를 통해 연결된 서버가 다운되어도 자동으로 다른 서버가 해당 역할을 하도록 전환하는 failover 기능 지원 → 포트 기반 스위칭 지원, VIP를 이용해 로드 밸런싱 L4 스위치가..

    OSI 7 계층이란?

    OSI 7 계층 (OSI 7 Layer) 우리가 사용하는 모든 네트워크 통신은 OSI 표준에 따라 이루어집니다. 즉, 엔지니어로서 OSI 7 계층에 대한 이해 없이 인프라에 대한 이해는 어렵습니다. 그렇기 때문에 OSI 7 계층에 대해 확실히 알고 있는지 면접에서 단골 질문으로 등장하기도 합니다. 학부 때 네트워크 수업에서 배웠지만, 많은 양의 내용을 단순히 암기만 해서는 내것으로 만들기 어렵기 때문에 다시 차근차근 짚어보며 이해해보는 시간을 가져보겠습니다 :) OSI 7 계층이란? OSI 모형(Open Systems Interconnection Reference Model)은 국제표준화기구(ISO)에서 개발한 모델로, 컴퓨터 네트워크 프로토콜 디자인과 통신을 계층으로 나누어 설명한 것이다. 이 모델은 ..

    [Error] FirewallD is not running 해결하기

    1. 문제 상황 CentOS 7에서 방화벽을 열려고 firewall 관련 명령을 입력했는데 FirewallD is not running 이라는 에러가 발생했다. 2. 해결 방법 아래 명령을 통해 실행시킨 뒤 다시 사용하면 정상적으로 작동한다. systemctl start firewalld 3. 사용법 # check the status of the service (running and enabled) systemctl status firewalld # if the service is not running, start it systemctl start firewalld # 에러발생시 Failed to start firewalld.service: Unit is masked. systemctl unmask fi..

    [Error] firewall-cmd: command not found 해결하기

    1. 문제 상황 CentOS 7에서 방화벽 관련 포트나 서비스를 열거나 닫을 때, firewalld 명령어를 사용한다. 최소 설치를 했을 때에는 자동으로 설치되지 않기 때문에 firewalld 명령어를 사용했을 때, firewall-cmd: command not found라는 에러가 발생한다. 2. 해결 방법 아래 명령으로 필요한 패키지를 설치하면 해결 완료! yum install firewalld 3. 사용법 systemctl unmask firewalld systemctl enable firewalld systemctl start firewalld 참고 사이트 https://xorms0707.tistory.com/93

    [Error] bash: netstat: command not found 해결하기

    1. 문제 상황 Ubuntu, CentOS와 같은 Linux에서 netstat 명령어를 실행했을 때 bash: netstat: command not found 오류를 해결하고자 한다! 2. 해결 방법 ifconfig, netstat 등 네트워크 관련 명령어의 경우 net-tools 패키지를 설치해야 한다. Ubuntu apt install net-tools CentOS yum install net-tools 참고 사이트 https://blog.dalso.org/linux/14393

    Ubuntu에서 PostgreSQL 외부 접속 허용하기

    1. 상황 Ubuntu 인스턴스에 CentOS 도커 컨테이너를 띄우고, 그 안에 PostgreSQL를 설치한 상태 그림으로 나타내보자면 아래와 같다. 내가 하고 싶은 것은 우분투에서 "CentOS에 설치된 PostgreSQL"에 접속해서 데이터를 추출해 MySQL(개발 DB)로 보내는 것! 그냥 접속하려고 했더니 계속 connection 에러가 나서 찾아보니.. 이런 경우는 PostgreSQL에서 외부 접속을 허용해주어야 하고, 그러려면 바꿔야 할 설정과 설치해야 할 패키지들이 있어서 과정을 정리해보고자 한다 :) 2. 과정 0. 필요 패키지 설치 # Ubuntu에 sudo apt-get install -y postgresql-client sudo apt-get install -y postgresql-c..

    로드 밸런싱이란?

    로드 밸런싱 (Load Balancing) 로드 밸런싱이란? 인프라를 운영한다면 쏟아지는 트래픽을 고려하지 않을 수가 없습니다. 아무리 성능이 뛰어난 서버라도 한 대의 서버로는 모든 트래픽을 감당하기 어렵기 때문에 다수의 서버를 구축하게 됩니다. 하지만 단순히 여러 대의 서버를 운영한다고 해서 모든 클라이언트의 요청에 일관성 있게 응답할 수 있을까요? 로드 밸런싱이란 말 그대로 서버가 처리해야 할 업무 혹은 요청(Load)를 여러 대의 서버로 나누어(Balanding) 처리하는 것을 의미합니다. 한 대의 서버로 부하가 집중되지 않도록 트래픽을 관리해 각각의 서버가 최적의 성능을 보일 수 있게 하는 것이 목적입니다. 서비스의 규모가 커지고, 사용자 수가 늘어나게 되면 기존의 서버만으로는 요청 처리가 어려워..

    Vagrant 설치 및 사용 방법

    설치 VirtualBox 설치 Vagrant 설치 brew install vagrant ansible # GUI툴 (선택사항) brew install vagrant-manager 사용 방법 초기작업 1. vagrant 관련 파일이 만들어질 작업 폴더 구성 및 이동 mkdir -p /Users/nhn/workspace/VM/centos7 cd /Users/nhn/workspace/VM/centos7 2. 플러그인 설치 vagrant plugin install vagrant-vbguest vagrant-disksize 3. 초기 파일 생성 vagrant init vi Vagrantfile ENV["LC_ALL"] = "en_US.UTF-8" Vagrant.configure("2") do |centos| # ..

    VirtualBox 다운로드 및 설치 방법

    VirtualBox 설치 과정을 정리해보고자 한다. 설치 환경 MacBook Pro Intel i7 (2019) Monterey 설치할 패키지 VirtualBox 7.0.6 platform packages VirtualBox 7.0.6 Oracle VM VirtualBox Extension Pack 공식 도큐먼트에서 운영체제 맞는 파일을 다운로드 받아 설치를 진행한다! Downloads – Oracle VM VirtualBox Download VirtualBox Here you will find links to VirtualBox binaries and its source code. VirtualBox binaries By downloading, you agree to the terms and cond..

    클라우드 서비스 이해하기! IaaS, SaaS, PaaS란? (ft. NHN Cloud)

    IaaS vs. SaaS vs. PaaS 요즘, 클라우드 하면 IaaS, PaaS, SaaS 를 많이 들어보셨을텐데, 이는 클라우드 서비스를 분야별 특성으로 나눈 것입니다. IaaS, PaaS, SaaS가 대체 무엇인지 비교를 통해 알아보겠습니다. IaaS (Infrastructure-as-a-service) 시스템 인프라를 서비스로서 제공합니다. 네트워크, 스토리지, 서버 등을 가상화하여 제공하고 관리합니다. 즉, 가상머신을 빌려주는 서비스입니다. NHN Cloud, AWS, MS Azure, GCE 등에서 제공합니다. PaaS (Platform-as-a-service) 애플리케이션 실행 환경을 서비스로서 제공합니다. 소프트웨어 작성을 위한 플랫폼을 가상화하여 제공하고 관리합니다. 개발자는 운영체제, ..

    RAID란?

    RAID (Redundant Array of Inexpensive Disks) RAID란? 여러 개의 디스크를 묶어 하나의 디스크처럼 사용하는 기술이다. 과거에는 주로 용량이 작은 디스크들을 연결해 디스크 용량을 높이기 위해 사용했다. 오늘날에는 디스크 성능 향상에서 나아가 디스크 오류나 데이터 손실 등 장애에 대비하기 위한 용도로도 사용되고 있다. 서버에 저장되는 데이터의 경우, 손실 또는 유출에 대비해야 한다. 그래서 많은 서버 관리자는 RAID 구성을 통해 디스크의 가용성을 높이거나 서버 데이터의 안정성을 확보할 수 있다. RAID의 장점 운용 가용성, 데이터 안정성 증대 디스크 용량 증설의 용이성 디스크 I/O 병렬화로 인한 성능 향상 앞으로 패리티(Parity)라는 단어가 자주 등장할 것인데, ..

    전가상화와 반가상화 (Full & Para Virtualization)

    이전 글에서 가상화와 하이퍼바이저에 대해서 알아보았다. 하이퍼바이저는 다시 가상화 방식에 따라 Full Virtualization과 Para Virtaulization으로 분류된다. Full Virtualization (전가상화) 하드웨어를 완전히 가상화하는 방식이다. 전부 가상화하기 때문에 Guest OS가 Host 시스템과 완전히 분리되어 실행된다. 따라서 Guest OS는 자신이 VM의 OS인지 인지하지 못한다. 그러므로 Guest OS는 하이퍼바이저의 존재를 알 필요가 없다. Hardware와 Guest OS 사이에 Hypervisor가 분명 존재하지만, VM 입장에서는 가상화된 하드웨어를 진짜(물리) 하드웨어로 생각하고 있기 때문에, 실제 물리 자원에 대해 요청을 보낸다고 생각하게 된다. 원래 ..

    가상화와 하이퍼바이저 (Virtualization & Hypervisor)

    가상화 (Virtualization) 가상화란? 쉽게 말하면, 물리적인 하드웨어를 논리적으로 구분하는 것 서버의 CPU와 메모리 등의 자원을 최대한 활용할 수 있는 방법을 생각했을 때, 간단하게 생각하면 동시에 여러 개의 서버를 한번에 올리면 되지 않을까 싶다. 하지만, 서로 영향을 받게 되고, 보안 문제나 서버가 다운되면 모든 서비스가 중단되는 위험이 있다. 그래서 가상화의 개념이 등장하였다. VM과 컨테이너 가상화의 핵심은 Isolation이다. 논리적으로 격리가 제대로 이루어지면, 각각의 가상 환경에서 문제가 생겨도, 다른 영역에 영향을 미치지 않는다. 가상화는 크게 2가지 유형으로 나뉘는데, 가상머신(vm)과 컨테이너(container)이다. 클라우드 환경에서 서비스를 운영하고자 한다면 꼭 알아두..

    [교육] 실전! 데이터모델링

    팀 수석님께서 데이터 모델링을 주제로 사내교육을 진행하셔서 참여할 수 있는 기회가 생겼다. 참여형 실습도 있고 완전 유익하고 재밌는 교육이라고 하셔서 기대를 잔뜩 하고 갔다. 학교에서 데이터베이스 설계 수업 때 배운 내용도 새록새록 생각이 나고 최근에 계속 모델링 작업을 하고 있어서 내용이 더 잘 들리기도 하고, 현업 포인트까지 알 수 있는 값진 시간이었다. 다른 부서분들을 만나는 자체도 재밌었는데 다들 잘 참여해주시고, 얘기도 잘 통해서 즐거운 시간이었다. 특히 실습에서 작은 모델들이 모여서 마지막에 하나의 모델로 탄생할 때 감동이었다..🥺 (수석님 존경합니다..) 데이터 표준화의 기본 데이터가 중요하다! 비즈니스의 목적이 바뀌지 않는 한, 중요 데이터는 변하지 않는다. 데이터 구조를 만드는게 개발의 ..

    인프라 엔지니어의 교과서 | 6장

    6장. 구매 및 상담 24 구매 및 상담 구매처 선정 방문 목적 업체 선정 비교 견적 도입 테스트 해외 구매 25 자산 관리 자산 관리 대상 자산 관리 방법 재고 감가상각 재고 조사 폐기 처리

    인프라 엔지니어의 교과서 | 5장

    5장. 스토리지 21 스토리지 스토리지 : 데이터를 저장하는 장치 로컬 스토리지 : 서버 내부의 저장 영역 외부 스토리지 : 서버 외부의 저장 영역 DAS : 서버에 직접 연결하는 것 NAS : 네트워크를 통해 연결하는 것 로컬 스토리지 서버 내부에 디스크를 설치해서 이용하는 저장 영역 외부 스토리지를 사용하지 않으므로 설치 공간을 절약할 수 있음 대신, 설치할 수 있는 디스크 개수와 확장성이 줄어듦 외부 스토리지 서버 외부에 준비한 스토리지 장치, 영역 1. DAS Direct Attached Storage, 서버에 직접 연결하는 스토리지 로컬 스토리지만으로 용량이 부족할 때 사용 DAS에는 많은 디스크를 설치할 수 있으므로 스트라이핑 수가 많은 RAID로 구성하여 디스크 I/O 성능을 높임 OS는 D..

    인프라 엔지니어의 교과서 | 7장

    7장 데이터 센터 26 데이터 센터를 사용한다 데이터 센터 냉각 시스템 1. 이중 마루 냉각 방식 2. 열 복도/냉 복도 냉각 방식(배열 흡인 방식) 3. 외기 냉각 방식 데이터 센터 선정 포인트 입지 서버 설치 대수 랙 반입 or 대여 이용 가능한 전원 무거운 하중에 대한 대응 방재 수준 UPS(무정전 장치)와 발전기 성능 폐기물 처리 반입 공간과 주차장 유무 리모트 핸드 서비스 유무 사용자 룸 유무 케이지 유무 네트워크 회선의 커넥티비티 비정기적 요구 물품 대여의 유연성 매점과 숙박 시설 유무 비용 27 랙에 장비를 설치한다 네트워크 장비 설치 랙의 맨 위나 중간에 설치 공기 흐름 전력 용량 문제 28 자체 서버 룸을 사용한다 자사 서버 룸 설치 포인트 면적 전력 용량 냉각 내하중 지진 대책 먼지 대..

    [Error] configure: error: no acceptable C compiler found in $PATH

    CentOS 7.9 환경에 PostgreSQL 8.4.0 버전을 설치하는 중 ./configure를 실행하니 다음과 같은 에러가 발생했다. checking for gcc... no checking for cc... no configure: error: no acceptable C compiler found in $PATH See `config.log' for more details. gcc나 cc가 없어서 나는 에러인 것 같다. 아래 코드를 실행해 필요한 컴파일러를 설치해준다. sudo yum install gcc glibc glibc-common gd gd-devel 설치 후 다시 configure를 해보면 잘 실행된다! 참고링크 https://sojinhwan0207.tistory.com/90

    클러스터 테이블과 논클러스터 테이블

    클러스터 테이블 vs 논클러스터 테이블 비교 클러스터란? 디스크로부터 데이터를 읽어오는 시간을 줄이기 위해서 자주 사용되는 테이블의 데이터를 디스크의 같은 위치에 저장하는 방법 비슷한 레코드들을 동시에 조회하는 경우가 많아 효율적으로 조회하는 방법으로 고안됨 PK가 비슷한 레코드끼리 묶어서 저장하는 것 (MySQL) 클러스터 테이블(인덱스) 테이블당 1개씩만 허용됨 PK 생성 시 그 컬럼은 자동으로 클러스터 인덱스가 생성됨 * 일반 인덱스와의 차이 클러스터링 되어 있다는 요소가 추가됨 옵티마이저에서 일반 인덱스보다 높은 랭킹 PK를 설정하지 않은 경우는? InnoDB가 다음의 우선순위대로 대체 컬럼을 선택 UNIQUE NOT NULL 중 첫번째 인덱스를 클러스터 키로 선택 자동으로 유니크한 값을 가지도록..

    본질식별자와 인조식별자

    본질 식별자 vs 인조 식별자 비교 본질 식별자 업무에 의해 만들어진 식별자 장점 PK 인덱스 활용 가능 인조 식별자 업무적으로 만들어지지는 않지만 본질 식별자가 복잡한 구성을 갖고 있어 인위적으로 만든 식별자 후보 식별자 중 PK로 선정할만 한 것이 없을 때 사용 장점 모델이나 SQL이 간단해짐 단점 인스턴스 생성 기준을 인조 식별자만으로 판단하기 어려움 모델만 보고 업무를 이해하기 어려움, 특히 행위 엔터티에서 가독성이 저하됨 유니크 인덱스를 추가로 사용하여 추가적으로 키를 관리해야 함 중복 데이터로 인한 품질 문제 PK를 인조 식별자로 구성한 경우, PK 제약은 인조식별ID에 대해 적용되어 있기 때문에 중복 데이터가 발생하더라도 DBMS에서는 막을 수 없기 때문에 애플리케이션 단에서 처리해야 하는 ..

    인프라 엔지니어의 교과서 | 11장

    인프라 엔지니어가 갖춰야 할 것 도큐먼트 읽는 힘 기르기 새로운 하드웨어와 소프트웨어를 도입할 때마다 도큐먼트를 읽어야 함 업그레이드를 할 때 구 버전과 신 버전을 비교해야 함 치명적인 버그가 있어서 최신 버전이 공개되었다면 도큐먼트를 읽은 후 도입을 검토해야 함 카탈로그 읽는 힘 기르기 하드웨어와 소프트웨어를 선택할 때 카탈로그를 참고함 각 전문 용어의 의미를 이해하고, 각각 기기에 어느 정도의 성능이 있는지 파악해야 함 자신이 담당하는 서브에 어느 기종이 가장 적절한지 판단해야 함 소규모 인프라와 대규모 인프라 소규모 인프라 IT 인프라의 모든 것을 적은 인원이 다룸 기획, 설계, 장비 구입, 구축, 운영까지 모두 경험할 수 있음 비용 대비 효과를 위한 장비 튜닝 기회 대규모 인프라 IT 인프라를 많..

    인프라 엔지니어의 교과서 | 8장

    솔루션 여러 장비를 효율적으로 관리하기 위해서 감시 솔루션을 이용 감시 솔루션 형태는 2가지로 나뉜다. SNMP(Simple Network Management Protocol)를 이용하는 형태 각 서버에 에이전트 프로그램을 설치해서 그 자료를 수집하는 형태 종류 오픈 소스 상용 소프트웨어 나기오스 Nagios 2002년 에탄 갈스타드를 중심으로 개발되어 역사가 오래되고 국내에 많은 사용자가 있음 신뢰도가 높고 자유로운 커스터마이징 가능 웹 설정 화면이 없고, 설정을 텍스트 파일로 저장 장애 발생 이력을 텍스트 파일로 저장 감시 설정은 플러그인으로 추가함. 플러그인은 직접 만들 수도 있고, 전용 커뮤니티에 공개되어 있음 https://www.nagios.org/ Nagios - The Industry St..

    Django와 PostgreSQL 연동하기

    PostgreSQL에 대한 과제를 진행하기 때문에 장고 프로젝트에 PostgreSQL을 연동하여 사용해고자 한다. 먼저, PostgreSQL을 설치하고 DB를 생성해야 한다. 맥(Mac)에 PostgreSQL 설치 + DBeaver 연결 PostgreSQL 설치 1. 터미널에서 brew를 이용하여 설치 brew install postgresql 2. 버전 확인 postgres -V 3. 시작 brew services start postgresql 4. 접속 psql postgres 종료 brew services stop postgresql DBeaver 연결 1. DBeaver 다운로 myminju.tistory.com 완료되었으면 Django에 psycopg2를 설치해준다. pip install psy..