전체 글 228

[GCP] 스냅샷으로 신규 VM 만들기: 콘솔(수동) & CLI/쉘(자동화) 가이드

GCP Compute Engine(GCE)는 VM의 현 상태를 저장 후 복원할 수 있는 스냅샷(snapshot)기능을 제공합니다.스냅샷은 영구 디스크의 백업입니다.스냅샷의 주요 용도는 운영 중인 VM을 특정 스냅샷 시점으로 복구할 수 있습니다.스냅샷을 사용하여 신규 디스크를 만들고, 이를 바탕으로 새로운 VM(GCE) 인스턴스를 생성할 수 있습니다.데이터 복구, 데이터 전송, 또는 프로젝트의 다른 리소스에서 데이터에 접근하는 데 사용됩니다.GCP에서는 GUI(콘솔)를 통해 클릭 몇 번으로 이 작업을 수행할 수 있습니다.CLI(gcloud+shell script)로도 동일한 설정이 가능합니다.특히 대량의 작업을 수행해야 할 경우, CLI 방식이 훨씬 유리합니다. 이 글에서는 두 가지 방식을 모두 상세히 다..

Cloud/GCP 2025.06.01

[GCP] Cloud SQL Backup을 Cloud Run(Function), Cloud Scheduler을 통해 정기적으로 백업 받기

Cloud SQL은 GCP에서 제공하는 관리형 DBMS로 사용자는 DB를 잘 사용하는것에 집중하고, 관리는 GCP가 해주는 부분입니다. 백업도 알아서 시간대만 지정해 주면, 하루에 한번 해당 시간대에 백업을 해줍니다. 그 외에는 사용자가 콘솔(GUI)에서 직접 수동 백업을 실행하거나, gcloud 명령어로 수동 백업을 받을 수 있습니다.하지만 운영을 하다보면 여러 작업과 사정이 있고, 예를 들어 6시간 간격으로 백업이 필요한 경우도 있을 수 있을 것입니다. 이러한 상황을 가정하고, 파이썬 코드+Cloud Run(Function)+Cloud Scheduler 을 통해 일회성 백업과 지정된 시간에 백업을 하는 방안에 대해 작성하였습니다. 구성도필요권한 : Cloud SQL 백업을 트리거하려면 최소 cloud..

Cloud/GCP 2025.05.25

[GCP] Cloud SQL 백업을 타프로젝트 및 다른 인스턴스로 복원하기 (gcloud+shell script)

GCP Cloud SQL은 GUI를 통해 간편하게 백업을 생성하고 동일 인스턴스로 복원하는 기능을 제공합니다. 하지만 백업을 다른 새 인스턴스나 다른 프로젝트의 인스턴스로 복원해야 할 경우, GUI에서는 직접적인 지원이 없습니다. GUI에서 지원하지 않는 기능이 CLI에서 지원되는 경우가 있습니다. Cloud SQL의 내장 백업은 파일 형태로 직접 내보내기(Export)를 지원하지 않으며, 데이터를 파일로 옮기려면 mysqldump와 같은 별도의 내보내기 작업을 통해 Cloud Storage 버킷 등에 저장한 후 다시 가져오기(Import) 해야 합니다. 이와 달리, gcloud CLI를 사용하면 Cloud SQL 백업에서 바로 다른 인스턴스(신규 또는 타 프로젝트)로 복원할 수 있습니다. 이는 mysq..

Cloud/GCP 2025.05.21

[GCP] Secret Manager Key 자동 삭제 스크립트

클라우드의 장점 중에 하나는 GUI에서 클릭으로 할 수 있는 방안이라고 생각됩니다. CLI로 대량의 작업을 한번에 할 수 있는 방안도 있지만간단하게 필요할때 화면에 나오는 설명을 따라서 설정해서 할 수 있다는 것은 크나큰 장점이라 생각됩니다. 다만 위에 쓴대로 대량의 작업을 한번에 하는건 GUI로는 힘듭니다. 이번 스크립트는 GCP의 Secret Manager 서비스에 있는 리소스들을 프로젝트 단위에서 삭제하는 방안을 작성하였습니다. 해당 삭제 스크립트를 만들게 된 계기는 다음과 같습니다. GCP에서 프로젝트가 필요없게 되면 정리를 해야되는데 결제계정을 빼면 모든 리소스가 정지되게 되며, 아예 프로젝트를 삭제하는 방안도 있습니다. 다만 여러 이유로 프로젝트가 존재할 필요가 있을때는 비용이 발생되는 리소..

Cloud/GCP 2025.05.13

[GCP] Cloud SQL 사용 현황, GUI보다 빠르고 정확하게 파악하기 (gcloud & Shell Script 활용)

GCP의 핵심 서비스 중 하나인 Cloud SQL을 운영하다 보면, 웹 콘솔(GUI)만으로는 필요한 정보를 신속하게 얻기 어려울 때가 있습니다. 여러 인스턴스의 머신 타입을 비교하거나, 할당된 용량이 아닌 실제 디스크 사용량을 확인하고 싶을 때, 또는 HA(고가용성) 구성 여부를 한눈에 파악하고 싶을 때 GUI는 종종 여러 번의 클릭과 페이지 이동을 요구하여 번거로움을 느끼게 합니다. 이러한 불편함을 해소하고자 gcloud와 쉘스크립트를 활용하여 터미널 환경에서 Cloud SQL 현황을 파악하는 방법들을 작성하였습니다. GCP 인프라 관리자, DevOps 엔지니어, DBA 등 Cloud SQL을 운영하는 분들이라면 누구나 겪어봤을 법한 문제들에 대한 해결책을 제시하는 것을 목표로 합니다. 본문에서는 먼저..

Cloud/GCP 2025.05.03

[GCP] 전체 프로젝트의 Cloud storage 사용량 조회

목표 Cloud Storage는 GCP에서 오브젝트 스토리지 용도로 다양하게 활용되고 있습니다. 특성상 Dev, Stg, Prd 등 여러 환경에 걸쳐 여러 프로젝트에 분산되어 생성되며, Cloud Run과 같은 PaaS 서비스를 사용할 경우 자동으로 버킷이 생성되기도 합니다. 이처럼 다양한 위치에 버킷이 존재하다 보니, 전체 현황을 한눈에 파악할 수 있는 방법이 필요합니다. 이 문서에서는 webconsole의 GUI를 통해 스토리지 리스트를 조회하는 방법과, 쉘 스크립트를 이용해 각 버킷의 용량 및 메타 정보를 수집하는 방법을 소개합니다. 🧰 방법 1: GUI로 전체 버킷 리스트 확인GCP 콘솔 접속 → Cloud Asset Inventory 메뉴로 이동 조직 선택 후→ storage.Bucket 으로..

Cloud/GCP 2025.04.22

Google Cloud 자격증 시험 등록방법과 시험장 안내

- 2025.04.20 업데이트 : 어쩌다가 이 포스팅이 여기 블로그의 최다 인기글이 되면서..(아 기술글도 많이 올렸는데 ㅠㅠ)하지만정작 필요한 정보가 잘 쓰임받았구나 싶기도 하고 복잡미묘하네요. 드디어 GCP시험센터가 서울 강남 SRTC 1개에서 영등포, 경기도 안양, 부산 총 4개로 확대되었습니다. 두번째로는 2년의 인증 기한이 끝나면 다시금 재취득을 해야되었는데Renew라고 따로 시험을 내었습니다.저도 2025년 4월 현재 갱신시점이라 준비중인데, 외형적으로는 시험비가 $200 -> $100 인것과 시험 시간이 1시간에 25문항인 점이네요. 24년 12월 베타시험으로 진행하고 이제 정식으로 적용하는 것으로 보입니다.아 갱신대상이면 무조건 Renew를 선택하는 것이 아닌 기존시험과 Renew시험에서..

[GCP] VM기준으로 방화벽 내용을 조회 하는 스크립트

GCP는 네트워크 태그 기반으로 방화벽을 제공합니다. 태그를 조회하여 적용된 것들을 GUI상에서 볼 수는 있지만, VM을 기반으로 연결된 방화벽 정책을 한번에 보여주는 GCP 기본 기능은 없습니다. AWS는 VM을 선택시 해당 VM에 적용된 시큐리티 그룹을 한번에 볼 수 있습니다. 신규 구축이 아닌 기존 운영하는 곳에서 정보 수집시 방화벽이 VM별로 어떻게 설정되어 있는지 한번에 조회할 필요가 있어 스크립트를 통해 하는 방안을 작성하였습니다. 2가지 방안으로 작성하였습니다.프로젝트 별 수집하는 방안조직에서 프로젝트별로 수집하는 방안 프로젝트 기반이며, 입력 후 해당 프로젝트에 있는 VM의 리스트 조회 → 해당 리스트의 있는 vm에 네트워크 태그를 조회하여, 인그레스, 이그레스별로 해당 태그 정책을 정리합..

Cloud/GCP 2025.04.19

[GCP] Asset Inventory로 내부 자산인 GCE(VM) 확인하기

목표 : GCP 내부 자산을 중 GCE부분을 확인하는 방안입니다.온프레미스처럼 클라우드도 어디에 리소스가 존재하는지 파악하는 것이 매우 중요합니다.운영 인수인계, DR구성등 기존환경에 있는 리소스를 확인하는 경우에 유용합니다. 본 문서에서는 GCE를 기준으로 확인하였으나, 프로젝트, 폴더 또는 조직의 리소스 메타데이터를 쿼리하여 클라우드상 존재하는 리소스를 찾을 수 있습니다. GCE, LB, Storage등 리소스 자체는 잘 수집이되나 일부 API는 수집이 안되는 경우가 있으니 유의합니다. 3가지 방식 모두 권한은 아래와 같이 "클라우드 애셋 뷰어"가 필요합니다. 해당 권한을 조직, 폴더, 프로젝트 어디에 두느냐에 따라 조회할 수 있는 범위가 달라집니다. 필요 권한 : cloudasset.assets.s..

Cloud/GCP 2025.04.09

[GCP] STS(Storage Transfer Service) Agent 설치, 설정

목표 : GCP의 Storage Transfer Service(이하 STS로 표기)는 아래 여러 상황에서 데이터를 전송할 수 있습니다. Amazon S3, Azure Blob Storage 또는 Cloud Storage에서 Cloud Storage로 전송 온프레미스 스토리지에서 Cloud Storage로 또는 Cloud Storage에서 온프레미스로 온프레미스 스토리지 시스템 간 공개적으로 액세스 가능한 URL에서 Cloud Storage로 HDFS에서 Cloud Storage로 대부분 Agent가 필요 없지만, 온프레미스 스토리지에서 Cloud Storage로 또는 Cloud Storage에서 온프레미스로 할때는 인터페이스 역활이 되는 STS Agent가 필요합니다. 본 문서는 STS Agent 설치와..

Cloud/GCP 2025.03.14

On-premise 환경에서 GCP의 Private Google Access(PGA) 사용하기 – DNS Forward 방안

목표 : PGA(Private Google Access)란 Google Cloud에서 Public 대역이 아닌 구글의 대역을 타고 통신을 할 수 있는 서비스입니다.이는 크게 GCP VPC 내 Subnet에서 동작하는 GCP PGA가 있고, On-premise → GCP 통신시 사용할 수 있는 On-premise to PGA가 있습니다.GCP PGA는 다음 포스팅에서 설명하도록 하고 이번 문서에서는 On-premise용 PGA 설정을 하기 위해 DNS설정을 변경하는 방안에 대해 알아보겠습니다.  환경OS : ubuntu 24.10CPU : Core 1MEM : 512MBOn-premise 환경내부 네트워크 대역 : 192.168.1.0/24VPN Gateway : 192.168.1.80DNS Server ..

Cloud/GCP 2025.03.03

On-premise 환경에서 GCP의 Private Google Access(PGA) 사용하기 – DNS 설정 가이드

목표 : PGA란 Google Cloud에서 Public 대역이 아닌 구글의 대역을 타고 통신을 할 수 있는 서비스입니다. 이는 크게 GCP VPC 내 Subnet에서 동작하는 GCP PGA가 있고, On-premise → GCP 통신시 사용할 수 있는 On-premise to PGA가 있습니다. GCP PGA는 다음 포스팅에서 설명하도록 하고 이번 문서에서는 On-premise용 PGA 설정을 하기 위해 DNS설정을 변경하는 방안에 대해 알아보겠습니다.  환경OS : ubuntu 24.10CPU : Core 1MEM : 512MBOn-premise 환경내부 네트워크 대역 : 192.168.1.0/24VPN Gateway : 192.168.1.80DNS Server : 192.168.1.70DNS SW ..

Cloud/GCP 2025.02.26

[GCP] Cloud Site to Site VPN을 위한 strongswan(openvpn), Cloud VPN 설정방안

배경 :GCP와 On-Premise간 VPN통신을 구축해보기 위한 문서입니다.많은 On-Premise 사이트에서는 VPN기능이 포함된 UTM들을 사용하고 있습니다.UTM장비의 엔트리, 미들레인지급은 보통 네트워크 프로토콜인 BGP를 지원하지 않으므로 GCP의 HA VPN으로는 구성이 불가하기에, Classic VPN(기본형)을 사용하도록 하겠습니다. 고객사 장비가 엔터프라이즈급으로 BGP를 지원한다면 HA VPN을 사용하는 것을 권고합니다.또한, UTM장비마다 설정 하는 방법과 용어는 조금씩 다르지만 필요한 설정 값 들은 동일합니다. 목적 :하이브리드 클라우드의 사용이 높아지면서, On-premise 와 Cloud간 VPN 연결은 이제 필수적이게 되었습니다.즉 데이터의 안전한 흐름을 위해 Public망..

Cloud/GCP 2025.02.25

[GCP] GCE, GCS, Bigquery의 Audit Log 확인

대표적인 GCP서비스인 GCE, GCS, Bigquery 감사 로그를 “Cloud Logging”에서 확인하는 방안입니다. GCE 자원접근 확인방안GCE 인스턴스 생성, 자원에 대한 로깅 확인GCE에 대한 로그만 확인하기 위해서는 아래 쿼리문을 사용합니다.protoPayload.serviceName="compute.googleapis.com" 그외 특정 활동에 대해 확인하기 위해서는 아래와 같습니다.- 인스턴스 생성resource.type="gce_instance"protoPayload.methodName:"compute.instances.insert"log_id("cloudaudit.googleapis.com/activity")- 인스턴스 삭제resource.type="gce_instance" pr..

Cloud/GCP 2025.02.18

crontab 정상기동 확인 및 비정상시 조치 방법

가끔 crontab이 뻗는경우가 있는데, 다음과 같이 확인 해보고, 문제가 있으면 재실행을 해준다.일단 AIX기준이나, 디렉토리 위치만 틀리지 unix, linux 동일하다. 1. /var/adm/cron 디렉토리로 진입2. log파일을 tail -f로 확인 (tail -f log)3. 로그파일 확인-> queue max run limit메시지 발생하면, 재기동을 실행한다.4. ps -ef | grep -i cron으로 cron 프로세스 확인5. 해당 프로세스를 kill -9 pid(번호)로 종료6. 자동으로 재실행되며, tail -f log로 crontab 로그를 확인해본다.가끔 돌아가야할 작업들이 안돌아가고 있으면 한번씩 확인 필요

시스템/IBM-AIX 2025.02.10

[GCP] 2단계(MFA) 인증을 조직 단위로 설정하기

목적 : 도메인을 사용하여, 조직에 속하게 되면 사용자들에게 로그인시 2단계 인증을 강제할 수 있습니다.단순히 ID/Password 보다 2차인증(문자, 앱, 통화등)을 받을 수 있으므로, 보안성 향상에 도움을 받을 수 있습니다.무엇보다 Cloud ID(Free)를 사용해도 무료로 지원됩니다.  조직설정admin.google.com 접속하여 아래의 메뉴로 접근합니다.메뉴 → 보안 → 인증 → 2단계 인증을 선택합니다. 조직을 볼 수 있으며, 오른쪽 탭에서 인증 사용여부를 알 수 있습니다. 각 기능 옵션은 다음과 같습니다.→ 사용자가 2단계 인증을 사용하도록 허용체크시 : 사용자들은 2단계 인증을 자율적으로 설정 진행할 수 있습니다.체크해제시 : 사용자들은 2단계 인증 자체를 사용할 수 없습니다. → 사용..

Cloud/GCP 2025.02.09

GCP to AWS HA VPN구성

문서의 목적Site To Site VPN은 Public망이 아닌 Private 한 통신을 하기 위해 만들어진 방식GCP, AWS간 VPN 구성 후 통신을 하는 것이 본 문서의 목적이며인터넷에 있는 문서들이 2021년경 작성 되어있으며, 2025년 현재 AWS, GCP메뉴가 달라져서 작성하게 되었습니다.주의사항AWS VPN은 기본적으로 HA로 구성되게 되어 있습니다.VPN 생성시 기본적으로 Tunnel이 2개 생성 되며 삭제는 불가능 합니다. GCP에서 HA VPN은 NIC Interface 2개를 사용하여 터널을 맺습니다. AWS에서는 자기의 IP들은 2개지만, 상대편(Peer IP)는 한개만 지정할 수 있습니다. AWS적용하자면 GCP Interface 2개, AWS VPN연결을 2개 생성하여 총 4개..

Cloud/GCP 2025.02.03

[GCP] No-ORG → ORG(조직 도메인) 이전

목적 : 개인 Gmail이나, 조직 없이 진행하던 프로젝트를 ORG(조직)으로 이전하는 것을 테스트 후 정리 유의사항 : GCP의 리소스 계층 구조는 조직→폴더→ 프로젝트 → 리소스 입니다.즉 프로젝트는 상위 폴더, 조직(ORG)에 영향을 받습니다.조직에서 조직정책을 사용하고 있었다면 마이그레이션 된 이후부터는 상위의 조직정책 영향을 받으므로, 조직정책을 사용하시는지 사용한다면 해당 프로젝트에 영향받을 정책이 있는지 확인이 필요합니다.  본 문서의 참고사항입니다.No-ORG : Gmail(개인)ORG(조직) : seonggi-test.p-e.kr 1. 개인 Gmail로 생성한 프로젝트의 IAM및관리자 → IAM 으로 이동하여, 조직ORG에 속한 사용자에게 소유자 권한을 부여합니다. 소유자 권한 부여시에는..

Cloud/GCP 2025.01.31

2025년 Homelab 구성

2025년 프로젝트로 홈랩 환경을 다시 재구축 했다.큰맘먹고 기존 서버들 OS를 재설치했는데, 요즘 리눅스 설치가 너무 쉬워져서 오히려 당황스러웠음 분명 좋은 일이지만, 옛날 드라이버 적용부터 정말 설치만으로도 힘들었는데 뭔가 억울하기도 하고..특히 라즈베리파이는 이제 윈도우처럼 USB 설치 툴이 있어서 진짜 5분만에 뚝딱 이었다.덕분에 설치보다는 기술 구현에 더 집중할 수 있기는 했지만 Oracle Cloud와 GCP로 클라우드 환경을 구성하고, Ansible로 서버 관리를 일원화했다. 한방에 쭈루룩 명령을 내려서 수집, 수행을 할 수 있게혹시 모를 상황을 대비해 Oracle Cloud 서버에서 내부 홈 서버로 rsync로 백업 받도록 설정도 했고  메인서버에 MicroK8s를 설치하고 라즈베리파이들을..

시스템 2025.01.19

[GCP] 프로젝트간 VM Image 공유

서비스 제공시 플렛폼에서개발 → 검증 → 운영 각 스테이지을 거치도록 합니다.on-premise때는 배포툴을 이용하던가, vm이면 이미지 복사 여러 방안을 이용 했었습니다.Cloud에서는 권한을 이용하면 다른 프로젝트, 계정으로 이동이 가능합니다.AWS는 이미지를 AMI (Amazon Machine Image)라 하는데, 계정간 비공개로 공유가 가능하고이번 문서의 목표는 GCP의 image 공유 방안입니다.AWS는 계정베이스, GCP는 도메인 베이스라 이부분의 차이가 있습니다.구성은 아래와 같습니다.아래 실습에서는검증 프로젝트 : vpc subnet test운영 프로젝트 : My-20241124사용자는 운영 프로젝트의 onwer 입니다. GCP Console로 접근하여검증 프로젝트의 IAM에서 운영 프로..

Cloud/GCP 2025.01.10