2 tier architecture in GCP 지난 IAP 설정 편에 이어 DB 구성을 해보자 GCP에서 DB 연결을 위한 다양한 방법이 있다. 그 중 Cloud Proxy를 적용한 VM-DB 인스턴스 연결을 소개한다. 1. DB 생성 MySQL 을 설정해줬다 Private Subnet 내 Cloud Proxy 연결을 위해 비공개 IP로 설정해준다(이때 Networking Service API 승인이 필요하다) 2. DB replica 생성 - HA 구성을 위해 같은 영역 다른 zone 내에 replica를 만든다 2.VM에서 DB 접속 방법 - 앞서 만든 Web 인스턴스의 SSH 터미널에서 아래 명령어를 입력하여 Cloud SQL 인증 프록시를 다운로드후 실행파일을 만든다. $ wget https:/..
2 tier architecture in GCP 앞서 인스턴스 설정 편에 이어 IAP 서비스를 사용한 Secure 연결을 해보자 GCP에는 bastion, vpn을 통해 ssh 접근을 하는 방식이 아닌 TCP Forwarding을 통한 IAP(Identity-Aware Proxy) 방식이 있다. 1. IAP 설정 - 기존 방화벽 ssh 설정에서 22 포트를 제거해준다 - IAP 접근을 하고싶은 인스턴스를 체크한다 - IAP Secured Tunnel User를 추가해준다 다음 DB 설정 편에서 DB 설정을 해보자. blog migration project written in 2022.3.19 https://hayleyshim.github.io/blog/gcp4
2 tier architecture in GCP 앞서 네트워크 설정 편에 이어 Web VM 인스턴스를 구성해보자. GCP의 관리형 인스턴스 그룹(managed instance group) 서비스를 활용하여 autoscaling을 적용했다. - 관리형 인스턴스 그룹(MIG)을 사용하면 동일한 여러 VM에서 앱을 운영할 수 있다. 자동 확장, 자동 복구, 리전(멀티 영역) 배포, 자동 업데이트 등의 자동화된 MIG 서비스를 활용하여 워크로드의 확장성 및 가용성을 높일 수 있다. - 비관리형 인스턴스 그룹을 사용하면 직접 관리하는 여러 VM에서 부하 분산을 수행할 수 있다. 해당 예제에서는 인스턴스 그룹(MIG) 생성 시, DB 연결을 위해 stateful 방식을 적용했다. 1. instance templat..
2 tier architecture in GCP 지난 이론편에서 얻은 지식을 바탕으로 GCP에 GCP의 managed instance group을 활용한 2 tier architecture를 만들어보자. 1. 프로젝트 구성도 위와 같이 1개의 region 내 2개의 zone을 구성하여 failover에 대비한 2 tier architecture 구성을 해보자 1. 새 프로젝트 생성 - GCP 프로젝트를 생성한다 - 프로젝트명 : gcp-2-tier-architecture GCP 2 tier architecture 2. 네트워크 관련 설정(VPC & firewall) - 해당 프로젝트 내에서 기본적인 네트워크 구성을 설정한다. 1) VPC VPC 네트워크 - VPC 네트워크 VPC 네트워크 만들기 VPC ..
2 tier architecture in GCP 클라우드 스킬업을 위해 기존 AWS에 올라간 솔루션을 GCP에 이전 설치할 기회가 생겼다. 다양한 GCP Resource를 활용해서 개발자/운영자의 입장을 고려하여 기존 구성을 변경해보며 Public cloud 를 익히는데도 도움이 될 수 있겠다싶었다. 1. 기존 구성안 검토 - 우선 기존에 AWS에 어떻게 구성되었는지 살펴봤다. 서버, DB, Storage 등 간단한 웹서버 구성이었다. 초기 요구사항은 기존의 트래픽 사용량 대비 비용절감을 원하셨지만 개인적인 바람은 서비스가 잘되서 트래픽을 감당할 수 없는 상황에도 안정적인 인프라 환경을 지원하는 것이었다. 현재 상황을 만족한 설계라면 기존 구성을 copy and paste하는 방식으로 그대로 migrat..
메시지 큐 종류 1. ZMQ(Zero MQ) - 소켓 프로그래밍 API를 대체할 수 있는 정말 괜찮은 라이브러리 - C++로 작성된 라이브러리를 Python에서 활용할 수 있어 상대적으로 빠른 속도의 통신이 가능 - 통신 스택을 구축하기 위해 가볍고 빠른 메시징 구현 제공 2. RabbitMQ - RabbitMQ는 개발언어인 Erlang의 특성에서 기인해 무척 안정적인 것이 특징이며, 매우 강력한 라우팅 기능을 제공함 - 하지만, 자동 주식거래 시스템에는 메시지의 종류와 처리주체가 많지 않기 때문에 RabbitMQ이 제공하는 강력한 라우팅 기능은 불필요 ZMQ 적용 사례 : Bert-as-Service https://github.com/hanxiao/bert-as-service - Tensorflow와 ..
- Total
- Today
- Yesterday
- 국제 개발 협력
- AWS
- gcp serverless
- cloud
- GCP
- IaC
- 혼공파
- cni
- OS
- 파이썬
- 혼공챌린지
- AI
- k8s cni
- EKS
- GKE
- NW
- operator
- controltower
- SDWAN
- k8s
- 도서
- handson
- terraform
- k8s calico
- 혼공단
- security
- VPN
- S3
- PYTHON
- NFT
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |